Файловые вирусыРассмотрим теперь схему работы простого файлового вируса. В отличие от загрузочных вирусов, которые практически всегда резидентны, файловые вирусы совсем не обязательно резидентны. Рассмотрим схему функционирования нерезидентного файлового вируса. Пусть у нас имеется инфицированный исполняемый файл. При запуске такого файла вирус получает управление, производит некоторые действия и передает управление «хозяину» (хотя еще неизвестно, кто в такой ситуации хозяин).
Наконец, к файловым вирусам часто относят вирусы, которые «имеют некоторое отношение к файлам», но не обязаны внедряться в их код. Рассмотрим в качестве примера схему функционирования вирусов известного семейства Dir-II. Нельзя не признать, что появившись в 1991 г., эти вирусы стали причиной настоящей эпидемии чумы в России. Рассмотрим модель, на которой ясно видна основная идея вируса. Информация о файлах хранится в каталогах. Каждая запись каталога включает в себя имя файла, дату и время создания, некоторую дополнительную информацию, номер первого кластера файла и т.н. резервные байты. Последние оставлены «про запас» и самой MS-DOS не используются. При запуске исполняемых файлов система считывает из записи в каталоге первый кластер файла и далее все остальные кластеры. Вирусы семейства Dir-II производят следующую «реорганизацию» файловой системы: сам вирус записывается в некоторые свободные секторы диска, которые он помечает как сбойные. Кроме того, он сохраняет информацию о первых кластерах исполняемых файлов в резервных битах, а на место этой информации записывает ссылки на себя. Таким образом, при запуске любого файла вирус получает управление (операционная система запускает его сама), резидентно устанавливается в память и передает управление вызванному файлу. |
Навигация |
|
Какие
же действия выполняет вирус? Он ищет новый объект для заражения - подходящий по
типу файл, который еще не заражен (в том случае, если вирус «приличный», а то
попадаются такие, что заражают сразу, ничего не проверяя). Заражая файл, вирус
внедряется в его код, чтобы получить управление при запуске этого файла. Кроме
своей основной функции - размножения, вирус вполне может сделать что-нибудь
замысловатое (сказать, спросить, сыграть) - это уже зависит от фантазии
автора вируса. Если файловый вирус резидентный,, то он установится в память и
получит возможность заражать файлы и проявлять прочие способности не только во
время работы зараженного файла. Заражая исполняемый файл, вирус всегда изменяет
его код - следовательно, заражение исполняемого файла всегда можно обнаружить.
Но, изменяя код файла, вирус не обязательно вносит другие изменения: