Файловые вирусы могут внедряться только в исполняемые файлы: командные файлы (файлы, состоящие из команд операционной системы), саморазархивирующиеся файлы, пользовательские и системные программы в машинных кодах, а также в документы (таблицы), имеющие макрокоманды. Макрокоманды или макросы представляют собой исполняемые программы для автоматизации работы с документами (таблицами). Поэтому такие документы (таблицы) можно рассматривать как исполняемый файл.
Для IBM – совместимых ПЭВМ вирус может внедряться в файлы следующих типов: командные файлы (ВАТ), загружаемые драйверы (SYS), программы в машинных (двоичных) кодах (ЕХЕ, СОМ), документы Word (DOC) с версии 6.0 и выше, таблицы EXEL (XLS). Макровирусы могут внедряться и в другие файлы, содержащие макрокоманды.
Файловые вирусы могут размещаться в начале, середине и конце заражаемого файла (рис. 8.1.).
Независимо от места расположения вируса в теле зараженного файла после передачи управления вируса в теле зараженного файла после передачи управления файлу первыми выполняются команды вируса.
В начало файла вирус внедряется одним из трех способов. Первый из них заключается в переписывании начала файла в его конец, а на освободившиеся место записывается вирус. Второй способ предполагает считывание вируса и зараженного файла в оперативную память, объединение их в один файл и запись его на место файла. При третьем способе заражения вирус записывается в начало файла без сохранения содержимого. В этом случае зараженный файл становится неработоспособным.
Вирус
Файл
Файл
Вирус
Файл
Файл
Вирус
Заголовок вируса
Рис.8.1.. Варианты размещения вирусов в файлах
В середину файла вирус может быть записан также различными способами. Файл может «раздвигаться», а в освободившееся место может быть записан вирус. Вирус может внедряться в середину файла без сохранения участка файла, на место которого помещается вирус. Есть и более экзотически способы внедрения вируса в середину файла. Например, вирус «Mutant» применяет метод сжатия отдельных участков файла, при этом длина файла после внедрения вируса может не измениться.
Чаще всего вирус внедряется вконец файла. При этом, как и в случае с внедрением вируса в середину файла, первые команды файла заменяются командами перехода на тело вируса.