Некоторые "ископаемые" файловые вирусы
🕛 09.03.2009, 00:08
Ряд вирусов, ранее весьма распространенных на Западе, в настоящее время практически полностью уничтожен, и сведения о них представляют в основном исторический интерес. Впрочем, последняя фраза не совсем корректна, поскольку необходимо помнить, что, если отвлечься от периодической смены центрального процессора и версий MS DOS, любой компьютерный вирус практически "беcсмертен" и может "реанимироваться" из архивов через несколько лет после того, как о нем все забыли (если, конечно, пользователь продолжает работать на версии MS DOS, для которой вирус работоспособен).6.3.1. Вирус RC-0-346 (Lehigh - Лехайский)
Название вируса связано с тем, что он впервые был обнаружен в университете Lehigh (США) в ноябре 1987 г. В настоящее время вирус представляет лишь исторический интерес как один из первых файловых вирусов, а также как первый вирус, использующий специальный способ заражения командного процессора.
Формально вирус RC-0-346 является файловым резидентным вирусом, распространяющимся через файл COMMAND.COM. Иногда данный вирус называют "системным вирусом", акцентируя внимание на том, что он заражает только командный процессор. По мнению автора, такое название неоправданно, так как, хотя командный процессор и является неотъемлемой частью операционной системы, его выбор, в отличие от распространенного мнения, произволен. Конечно, стандартный командный процессор, поставляемый с MS DOS (COMMAND.COM), является наиболее распространенным, однако он далеко не единственный. Например, ряд фирм, включая Hewlett-Packard (Хьюллет Паккард), поставляют свои версии MS DOS c диалоговым командным процессором, и пользователи этих машин никогда не сталкивались с COMMAND.COM и характерным приглашением C:\. Кроме того, учитывая весьма низкое качество написания COMMAND.COM (а в MS DOS 4.0 он не только плохо написан, но и еще "страдает от ожирения", т.к. его размер вырос более чем на 10К без существенного увеличения функциональных возможностей), квалифицированные пользователи часто заменяют его на командный процессор 4DOS фирмы J.P. Software. Поэтому выбор COMMAND.COM как "среды обитания" вируса ничем принципиально не отличается от выбора, скажем, Norton Commander или другой распространенной программы.
Вирус имплантирует свое тело в область памяти, используемую COMMAND.COM для стека, и изменяет первые байты зараженного COMMAND.COM таким образом, чтобы первым получить управление после его загрузки. Поэтому длина зараженного COMMAND.COM не отличается от длины нормального. При запуске командного процессора вирус получает управление и становится резидентным, перехватывая прерывание 21h. При возникновении прерывания 21h вирус перехватывает запросы "выполнить программу" и "найти первый файл". При обработке этих запросов вирус сначала определяет, содержит ли диск COMMAND.COM. Если да, то он заражает COMMAND.COM диска, к которому идет обращение, и увеличивает специальный счетчик. Если винчестер отсутствует, то счетчик хранится в оперативной памяти, иначе - записывается на диск. Таким образом, перезагрузка сбрасывает счетчик на ПЭВМ без винчестера, в то время как на ПЭВМ с винчестером значение счетчика сохраняется. При достижении счетчиком значения 4 вирус, используя прерывание 26h, обнуляет первые 32 сектора того диска, с которого он был загружен. Обнаружение данного вируса упрощается в связи с тем, что при заражении вирус изменяет дату создания файла. Кроме того, вирус не проверяет, защищен диск от записи или нет, и не снимает атрибут READ ONLY. Поэтому, если COMMAND.COM имеет этот атрибут, то вирус в него не попадет (не исключено, что в некоторых штаммах данного вируса эти "недостатки" устранены).
Исторические сведения. Данный вирус является первым известным вирусом-вандалом. Он был обнаружен студенческими консультантами Вычислительного центра Лехайского университета (Lehigh university, Bethlehem, США) в ноябре 1987 г. [Wyk89]. Они обратили внимание, что, начиная с 18 октября 1987 г., пользователи начали в массовом порядке возвращать выданные им дискеты, заявляя, что они дефектны. Хотя в условиях интенсивной эксплуатации дискеты, характерной для университета, последние иногда становятся сбойными из-за физического износа, плохо отрегулированного дисковода или попадания грязи, скорость возврата дискет нарастала настолько заметно, что было решено проанализировать ситуацию. В результате и был выявлен Лехайский вирус. Фактически это первый файловый вирус, распространение которого приняло характер эпидемии. Возможно, существуют два штамма, один из которых не увеличивает длину зараженного COMMAND.COM, а другой увеличивает ее на 20 байтов. В СССР явно не отмечался. Излагаемые сведения опираются на информацию в зарубежных печатных изданиях.
Методы и средства защиты. Данный вирус диагностируется полидетектором Scan. Вирус ищет файл с командным процессором по имени, а не по COMSPEC, поэтому изменение имени командного процессора защищает командный процессор от заражения. Как уже указывалось, базисная версия вируса не сбрасывает атрибут READ ONLY, поэтому, если командный процессор защищен этим атрибутом, то он заражаться не будет. Поскольку вирус является резидентным, возможно создание резидентной вакцины. Вместо использования фага проще переписать командный процессор заново с дистрибутивной копии операционной системы.
6.3.2. Вирус dBASE
Вирус представляет интерес как представитель класса вирусов, направленных на модификацию данных. Он использует достаточно изощренную схему изменения DBF-файлов, причем при резидентном вирусе внесенные изменения маскируются. Формально вирус dBASE является резидентным файловым вирусом, который перехватывает прерывание 21h и ждет попытки открытия файла с расширением DBF. При этом вирус запоминает управляющий блок файла (file handle) и текущую длину файла с расширением DBF. Любая последующая операция по записи в этот файл искажается вирусом таким образом, что первые два байта записываемого блока меняются местами. При последующих операциях чтения вирус восстанавливает первоначальное положение этих байтов, так что до тех пор, пока вирус является резидентным, вся информация читается правильно. Через 90 дней вирус разрушает FAT. При восстановлении с архивных копий пользователь обнаруживает, что данные в них искажены. Вирус dBASE создает специальный файл с атрибутом HIDDEN, называемый BUG.DAT, в котором хранится информация о том, какие записи файла (записывается смещение в байтах) имеют переставленные байты. Для каждого каталога, содержащего DBF-файлы, создается свой скрытый файл BUG.DAT.
Исторические сведения. Данный вирус описан в 1989 г. Р.Гринбергом [Greenberg89]. В СССР случаи заражения не отмечались.
Методы и средства защиты. При работе с файлом BUG.DAT вирус не проверяет установку атрибута READ ONLY. Поэтому, если создать искусственный файл с таким атрибутом, то вирус не сможет записать в него информацию и тем самым повредить DBF-файлы.
6.3.3. Screen Virus - Экранный вирус
Данный вирус также является резидентным и, как и вирус dBASE, выполняет перестановки байтов. Он перехватывает прерывание от таймера и каждые несколько минут, начиная со случайной позиции, последовательно сканирует память видеоадаптера. Если вирус находит четыре последовательные цифры, то он переставляет местами две из них. Вирус повторно заражает СОМ-файлы. При первом запуске зараженной программы инсталлятор вируса перед тем, как сделать код вируса резидентным, заражает все подходящие файлы в текущем каталоге, включая и файл, содержащий запускаемую программу, если последняя находится в текущем каталоге.
Исторические сведения. Данный вирус описан в 1989 г. Р.Гринбергом [Greenberg89]. В СССР случаи заражения не отмечались.
Методы и средства защиты. Вирус содержит ASCII-строку "InFeCt" (с указанным сочетанием больших и маленьких букв). Непосредственно перед этой строкой располагаются четыре байта оригинальной программы, замененные вирусом. Эти байты можно вручную переставить в начало программы или написать соответствующий фаг.