Перечисленные этапы не являются обязательными (за исключением этапов инфицирования и саморазмножения) и могут иметь иную последовательность. Например, вирус может сначала сообщить о своем присутствии и лишь после этого заняться заражением. Особую опасность представляет этап выполнения специальных функций, которые могут привести к катастрофическим последствиям.
Как уже было сказано выше, любая классификация вирусов достаточно условна. Тем не менее один из вариантов классификации мы все-таки приведем.
В соответствии с ним вирусы подразделяются на классы по следующим признакам:
среда обитания;
способ заражения;
деструктивная возможность;
особенности алгоритма вируса.
По среде обитания компьютерные вирусы можно разделить на загрузочные, дисковые, файловые, флэш-вирусы и сетевые.
Загрузочные вирусы внедряются в загрузочный сектор диска (boot-сектор) или в сектор, содержащий системный загрузчик винчестера.
Дисковые вирусы замечательны тем, что способны работать с физическими секторами жестких дисков. Такой вирус захватывает свободные (или даже занятые данными) секторы диска, устанавливает для них в файловой системе признак «плохих» (такие секторы в дальнейшем не распределяются под данные) или «специальных» (не подлежащих перезаписи) и «живет» в них до прихода доктора-антивируса.
К файловым относят вирусы, заражающие исполняемые файлы (файлы с расширениями. exe,com,bat). Особой разновидностью файловых вирусов являются так называемые макровирусы. Они «живут» в макросах – программах, написанных на языке VBA (Visual Basic Application), которые используются для расширения функциональных возможностей приложений из комплекта MS Office.
Еще один, наиболее «современный» тип файловых вирусов – это вредоносные сценарии (скрипты), написанные на одном из популярных скриптовых языков программирования (VBScript или JavaScript) и входящие в состав HTML-страниц. Для краткости будем именовать такие вирусы сценарными (или скриптовыми).
Флэш-вирусы обязаны своим названием микросхемам перезаписываемой энергонезависимой памяти (флэш-памяти). Как известно, в современных компьютерах такие микросхемы используются на материнских платах для хранения кода программы BIOS. Неудивительно, что компьютеры, «подцепившие» флэш-вирус, зачастую вообще оказываются неспособны загружаться.
Сетевые вирусы для распространения активно используют протоколы и возможности локальных и глобальных сетей. Основным принципом работы сетевого вируса является возможность самостоятельно передать свой код на удаленный сервер или рабочую станцию. «Полноценные» сетевые вирусы при этом обладают возможностью запустить на выполнение свой код на удаленном компьютере или, по крайней мере, «подтолкнуть» пользователя к запуску зараженного файла.
Помимо перечисленных, существуют и «комбинированные» вирусы – например, файлово-загрузочные, способные заражать как файлы, так и загрузочные секторы дисков. Такие вирусы, как правило, работают по довольно сложным алгоритмам и часто применяют оригинальные методы проникновения в систему.
ПРИМЕЧАНИЕ
По состоянию на ноябрь 2005 года почтовые и сетевые черви составляли около 78 % от всех выявленных вирусов, файловые вирусы – около 20 %, загрузочные и другие вирусы в общей сложности составляют около 2 % (по данным Лаборатории Касперского).
По способу заражения вирусы подразделяются на резидентные и нерезидентные.
Резидентный вирус при инфицировании компьютера оставляет в оперативной памяти (ОП) свою резидентную часть, которая затем перехватывает обращение операционной системы к объектам заражения и внедряется в них. Обычно эта процедура предусматривает проверку, не присутствует ли уже в объекте копия вируса. Если объект «чист», то вирус копируется из памяти в заражаемый объект с модификацией его первой команды. Объектами заражения в этом случае могут быть исполняемые программы на жестком диске и на гибких дисках. Резидентные вирусы находятся в памяти и активны вплоть до выключения или перезагрузки компьютера. Резидентными можно считать макровирусы, поскольку они постоянно присутствуют в памяти компьютера в течение всего времени работы приложения, использующего «вредоносный» макрос. Соответственно, все документы, созданные или просто открытые в это время, будут заражены.