единственным используемым. Например, ряд фирм, включая Хьюллет
Паккард, поставляют свои версии MS DOS c диалоговым командным
процессором, и пользователи этих машин никогда не сталкивались с
COMMAND.COM и характерным приглашением C:\. Кроме того, учитывая
весьма низкое качество написания COMMAND.COM (а в четвертой версии
MS DOS он не только плохо написан, но и еще "страдает от
ожирения", т.к. его размер вырос более чем на 10К без
существенного увеличения функциональных возможностей)
квалифицированные пользователи часто заменяют его на командный
процессор 4DOS фирмы J.P. Software. Поэтому выбор COMMAND.COM как
"среды обитания" вируса ничем принципиально не отличается от
выбора, скажем, Norton Commander или другой распространенной
программы.
Вирус имплантирует свое тело в область памяти, используемую
COMMAND.COM для стека и изменяет первые байты зараженного
COMMAND.COM таким образом, чтобы первым получить управление после
его загрузки. Поэтому длина зараженного COMMAND.COM не отличается
от длины нормального. При запуске командного процессора вирус
получает управление и становится резидентным, перехватывая
прерывание 21. При возникновении прерывания 21, вирус
перехватывает запросы "выполнить программу" и "найти первый файл".
При обработке этих запросов вирус сначала определяет, содержит ли
диск COMMAND.COM. Если да, то он заражает COMMAND.COM диска, к
которому идет обращение, и увеличивает спецциальный счетчик. Если
винчестер отсутствует, то счетчик хранится в оперативной памяти,
иначе є записывается на диск. Таким образом, перезагрузка
сбрасывает счетчик на ПЭВМ без винчестера, в то время как на ПЭВМ
с винчестером значение счетчика сохраняется. При достижении
счетчиком значения 4 вирус, используя прерывание 26, обнуляет
первые 32 сектора того диска, с которого он был загружен.
Обнаружение данного вируса упрощается в связи с тем, что при
заражении вирус изменяет дату создания файла. Кроме того, вирус не
проверяет, защищен диск от записи или нет и не снимает атрибут
READ ONLY. Поэтому, если COMMAND.COM имеет этот атрибут, то вирус
в него не попадет (не исключено, что в некоторых штаммах данного
вируса эти "недостатки" устранены).
Исторические замечания. Данный вирус является одним из первых
вирусов-вандалов. Он был обнаружен в студенческими консультатами
Вычислительного центра Лехайского университета (Lehigh university,
Bethlehem, США) в ноябре 1987 г.[Wyk89]. Они обратили внимание,
что начиная с 18.10.87 пользователи начали в массовом порядке
возвращать выданные им дискеты, заявляя что они дефектны. Хотя в
условиях интенсивной эксплуатации дискеты характерной для
университета последние иногда становятся сбойными из-за
физического износа, плохо отрегулированного дисковода или
попадания грязи, скорость возврата дискет нарастала настолько
заметно, что было решено проанализировать ситуацию. В результате и
был выявлен Лехайский вирус. Фактически это первый файловый вирус,
распространение которого приняло характер эпидемии. Возможно
существуют два штамма, один не увеличивает длину зараженного
COMMAND.COM, а другой увеличивает ее на 20 байт. В СССР явно не
отмечался. Излагаемые сведения опираются на информацию в
зарубежных печатных изданиях.
Методы и программные средства защиты. Данный вирус
диагностируется полидетектором SCAN. Вирус ищет файл с командным
процесором по имени, а не по COMSPEC, поэтому изменение имени
командного процессора защищает командный процессор от заражения.
Как уже указывалось, базисная версия вируса не сбрасывает атрибут
READ ONLY, поэтому если командный процессор защищен этим
атрибутом, то он заражаться не будет. Поскольку вирус является
резидентным возможно создание резидентной вакцины. Вместо
использования фага проще переписать командный процессор заново с
дистрибутивной копии операционной системы.
6.5.2. Вирус dBASE
Вирус представляет интерес как представитель класса вирусов,
направленных на модификацию данных. Он использует достаточно
изощренную схему изменения DBF-файлов, причем при резидентном
вирусе внесенные изменения маскируются. Формально вирус dBASE
является резидентным файловым вирусом, который перехватывает
прерывание 21 и ждет попытки открытия файла с расширением DBF. При
этом вирус запоминает управляющий блок файла (file handle) и
текущую длину файла с расширением DBF. Любая последующая операция
по записи в этот файл искажается вирусом таким образом, что первые
два байта записываемого блока меняются местами. При последующих
операциях чтения вирус восстанавливает первоначальное положение
этих байтов, так что до тех пор, пока вирус является резидентным,
вся информация читается правильно. Через 90 дней вирус разрушает
FAT. При восстановлениии с архивных копий пользователь
обнаруживает, что данные в них искажены. Вирус dBASE создает
специальный файл с атрибутом HIDDEN, называемый BUG.DAT, в котором
хранится информация о том, какие записи файла (записывается
смещение в байтах) имеют переставленные байты. Для каждого
каталога, содержащего DBF-файлы, создается свой скрытый файл
BUG.DAT.
Исторические замечания. Данный вирус описан в 1989 г. в журнале
BYTE в статье Р.Гринберга [Greenberg89]. В СССР случаи заражения
не отмечались.
Методы и программные средства защиты. При работе с файлом
BUG.DAT вирус не проверяет установку атрибута READ ONLY. Поэтому,
если создать искуственный файл с таким атрибутом, то вирус не
сможет записать в него информацию и тем самым повредить DBF-файлы.
6.5.3. Screen Virus - "экранный" вирус
Данный вирус также является резидентным и, как и вирус dBASE,
выполняет перестановки байтов. Он перехватывает прерывание от
таймера и каждые несколько минут, начиная со случайной позиции
последовательно сканирует память видеоадаптера. Если вирус находит
четыре последовательные цифры, то он переставляет местами две из
них. Вирус повторно-заражает СОМ-файлы. При первом запуске
зараженной программы инсталлятор вируса перед тем, как сделать код
вируса резидентным, заражает все подходящие файлы в текущем
каталоге, включая и файл, содержащий запускаемую программу, если
последняя находится в текущем каталоге.
Исторические замечания. Данный вирус описан в 1989 г. в журнале
BYTE в статье Р.Гринберга [Greenberg89].
Методы и программные средства защиты. Вирус содержит ASCII-
строку "InFeCt" (с указанным сочетанием больших и маленьких букв).
Непоредственно перед этой строкой располаются четыре байта
оригинальной программы, замененные вирусом. Эти байты можно
вручную переставить в начало программы или написать
соответствующий фаг.
6.5.4. Группа первоапрельских вирусов
Данная группа, по видимому, является историческим
предшественником иерусалимской группы и, возможно, принадлежит
тому же автору. В нее входят вирусы RC-897 и RE-1488.
6.5.4.1. Вирус RC-897
(SURIV 1 - Сурив 1, April First - Первое апреля)
Резидентный файловый вирус, заражающий COM-файлы при запуске их
на выполнние. При заражении очередного файла выдает на экран
сообщение
YOU HAVE A VIRUS. а первого апреля выдает сообщение
HA HA HA IT'S APRIL 1ST - YOU HAVE A VIRUS
(1 апреля ха-ха-ха. У Вас вирус) и вызывает зависание системы.
Исторические замечания. Вирус разработан в Израиле в 1987 году и
относится к ранним представителям иерусалимской группы.
Методы и программные средства защиты. Данный вирус
диагностируется полидетектором SCAN. "Выкусывается" полифагом
CLEANUP, а также полифагом Antivir (версия 3.0 1988),
разработанным D.Hoppenrath.
6.5.4.2. Вирус RE-1488 (SURIV 2 - Сурив 2,
April First - Первое апреля, Jerusalem D - Иерусалим Д)
Штамм, заражающий EXE-файлы. Проявляется 1 апреля и после
определенного времени работы на компьютере, выдавая сообщение
HA HA HA IT'S APRIL 1ST - YOU HAVE A VIRUS.
(1 апреля ха-ха-ха. У Вас вирус)
При этом зависание системы приводит к потере информации при
редактировании или других аналогичных работах.
Исторические замечания. Вирус разработан в Израиле в 1987 году и
относится к ранним представителям иерусалимской группы.
Методы и программные средства защиты. Данный вирус
диагностируется полидетектором SCAN. "Выкусывается" полифагом
CLEANUP, а также полифагом Antivir (версия 3.0 1988),
разработанным D.Hoppenrath.
6.5.5. Группа Datacrime (Дейтакрайм)
Данная группа появилась в США в 1989 г. В настоящее время
состоит из трех штаммов длиной 1168 (Datacrime), 1280 (Datacrime-
II) и 1514 (Datacrime-IIb) байтов. При этом первые два штамма
заражают только файлы типа COM, а штамм Datacrime-IIb - как файлы
типа COM, так и файлы типа EXE. Стадия проявления для данного
вируса наступает ежегодно после 12 октября (день открытия Америки,
День Колумба). Перед поиском файла-жертвы, вирус проверяет текущую
дату. Если дата больше 12 октября и компьютер имеет винчестер, то
вирус дешифрует и выдает на экран сообщение:
DATACRIME VIRUS
RELEASED: 1 MARCH 1989
При этом вирус форматирует первые восемь дорожек нулевого
цилиндра диска С, уничтожая MBR, бутсектор, FAT и главный каталог.
После этого вирус зацикливается, выдавая в этом бесконечном цикле
символ BELL (звуковой сигнал). Это еще раз подчеркивает
необходимость резервирования первых треков при каждой загрузке в
специальный файл, расположенный в фиксированном месте диска или
использования для этой цели программы MIRROR из пакета PC SHELL.
По данным H.J.Highland [158], который до 1990 г. был главным
редактором журнала Computers & Security, автор вируса предпринял
некоторые меры маскировки. Вирусы, входящие в данную группу, не
заражают файлы, седьмой символ имени которых равен "D", и в
частности, файл COMMAND.COM. Как уже указывалось, содержащееся в
теле вируса текстовое сообщение шифруется с помощью команды XOR.
Дешифровка выполняется непосредственно перед выдачей сообщения на
экран, т.е. перед срабатыванием троянской компоненты. При поиске
зараженных файлов вирус просматривает корневой каталог и все
подкаталоги винчестера. Если файлов-жертв там не обнаружено, то
выполняется просмотр диска A, а затем диска B.
6.5.5.1. Вирус E-1168 (Datacrime B - Дейтакрайм B, 11168,
Columbus Day - День Колумба)
Данный вирус является нерезидентным файловым вирусом, заражающим
COM-файлы. При заражении дописывает себя в конец файла, увеличивая
длину на 1168 байтов и заменяя первые пять байтов зараженной
программы на команду перехода к началу вируса. Вирус размножается
с 1 апреля по 12 октября любого года. До 1 апреля вирус находится
в латеном состоянии и при запуске зараженных файлов сразу передает
управление вирусоносителю. Стратегия размножения основана на
просмотре каталогов и заражении всех найденных COM-файлов, кроме
тех, которые имеют в качестве седьмой буквы имени букву D. Сначала
просматриваются разделы винчестера, а затем дисководы с дискетами.
Из-за ошибок в коде заражаются не все файлы, создавая впечатление
случайного вибора. Возможно зависание системы в процессе
заражения.
При выполнении зараженного файла после 12 октября любого года
вирус выдает приведенное выше сообщение (зашифровано в теле
вируса) и выполняет низкоуровневое форматирование жесткого диска.