Энциклопедия компьютерных вирусов

         

Win.Apparition


Резидентный файловый Windows EXE-вирус. Длина - 87438. Написан на Borland Object Pascal for Windows. При запуске под Windows 3.x остается в системе, периодически ищет EXE-файлы и записывается в их начало. Имеет крайне необычную структуру. Основная часть вируса (около 60K) содержит собственно код вируса и runtime-библиотеки Pascal, текстовые строки, иконки и прочие данные, используемые вирусом при заражении системы и файлов. Следующий блок (3.5K) содержит MS Word темплейт, упакованный алгоритмом LZ. Этот темплейт содержит в себе Word макро-вирус. Третий блок (21K), также упакованный LZ, содержит исходный текст (!!!) вируса. Последний, четвертый, блок содержит файл ресурсов, которые вирус использует при запуске компилятора Pascal (см. ниже). При заражении файла вирус сдвигает его вниз на свою длину (87438 байта) и записывается в начало файла. Перед тем как отдать управление программе-носителю, вирус копирует зараженный файл во временный, затем лечит и запускает временный файл (эти методы очень часто встречаются в DOS-вирусах, написанных на языках высокого уровня - C или Pascal). Кроме того, при заражении вирус ищет в файле команды ассемблера:

DEC BP DEC BP

и замещает этот код на вызов INT 83h. Когда вирус активен, он перехватывает INT 83h. Код обработчика INT 83h выполняет единственную функцию - уменьшает регистр BP на два (т.е. то же, что затертые DEC BP). Зачем это делается - непонятно, видимо, для того, чтобы вылеченные файлы остались неработоспособными. При заражении вирус анализирует формат файлов и заражает только EXE-файлы, имеющие формат NE (Windows 3.x, OS/2) или PE (Windows95). Как работает вирус под OS/2 или Windows95 я не проверял, но под Windows 3.11 он работает без особых проблем (зависание системы, сообщения об ошибках и т.д.).



Содержание раздела