"Вячеслав Алексеев. Предохраняйтесь от вирусов (Help, TM N 01/93)" - читать интересную книгу автора


Вирусы бывают файловые (прицепляющиеся к файлам), бутовые (залезающие в
ВООТ-сектор диска, где расположена системная область) и сетевые. Впрочем,
последние известны лишь за рубежом, поскольку глобальных компьютерных сетей
у нас пока не существует. Любой вирус состоит из двух блоков: первый
обеспечивает "размножение" и "мимикрию" (на инкубационный период), второй -
"блок активного проявления" - выполняет то, ради чего он. вирус,
собственно, и создавался (приносить неприятности, и, как правило, крупные).
В отличие от первого "активное проявление" начинает работать только при
определенных условиях (несколько циклов заражений или заданное хакером
время) - и тут ждите сюрпризов...
Большинство файловых вирусов, независимо от специализации и зловредности,
работают по одной из четырех схем.
Первая. Вирус-"родитель", запущенный с зараженной программы, пристраивает
собственную копию в конец первой попавшейся (в "джунглях" оперативной
памяти или на винчестере) полезной и пока "чистой" программы (например,
игры), а на ее начало накладывает команду перехода на только что родившееся
"дитя", стертые стартовые байты заражаемой жертвы сохраняет в специально
отведенном у новой копии месте (чтобы не потерять их и тем самым заранее не
обнаружиться) - вот и весь цикл. Стоит теперь запустить больную игру - и
первым получит управление прицепившийся сзади паразит (с помощью команды
перехода), который повторит процесс размножения, найдя свеженькую жертву,
выполнит предписываемые перемещенными командами действия и затем (в
инкубационный период) передаст управление своей жертве -
программе-вирусоносителю. Пользователь ничего и не заметит - запустил игру,
игра и пошла, а на ничтожную заминку при старте внимания никто не обратит.
Так работают болгарские вирусы "Янки Дудль" - CE-2890R, играющий в 17.00
(по часам компьютера) известную одноименную мелодию, "Черный мститель" -
СЕ1813R, уничтожающий через 16 копирований содержимое одного сектора
винчестера, и многие другие (здесь и далее применяется классификация
Н.Н.Безрукова: С - заражение СОМ-файлов; Е - заражение ЕХЕ-файлов; число -
размер вируса в байтах; R - резидентность, то есть способность управлять
компьютером даже после того, как запустившая его программа, отработав,
покинула оперативную память). Исправить положение несложно. Для этого нужно
найти и переместить обратно затертые команды начала, а затем отрезать от
программы инородную часть.
По второй схеме самокопирование происходит на свободный участок, а в
служебные таблицы вводится информация о том, что файл начинается именно
там. (Система MS DOS позволяет хранить на дисках программы в "разрезанном"
состоянии, "склеивая" их в оперативной памяти по записям в каталоге.) Так
действует израильский вирус "Черная пятница" (CE-1813R), названный так
потому, что по пятницам, приходящимся на 13-е число, уничтожает все
содержимое винчестера. В этом случае достаточно найти истинное начало файла
и внести соответствующую запись в служебные таблицы.
Малораспространенная третья схема реализована в "Лехайском вирусе"
(C-346R), который через четыре цикла саморазмножения обнуляет 32 сектора
винчестера,- он располагается в середине программы, на участке,
зарезервированном под цифровые данные пользователя, но до работы пока
свободном. Не все программы имеют такую структуру, поэтому у хакеров
подобный прием не пользуется почетом.