Читать книгу Восстановление данных - Алексей Гультяев - Страница 7

Глава 1
Что имеем – не храним, или Почему теряются данные
Разновидности вредоносного программного обеспечения
Компьютерные вирусы

Оглавление

В общем случае жизненный цикл компьютерного вируса содержит следующие этапы:

внедрение (инфицирование);

инкубационный период, в течение которого вирус себя не проявляет (как правило, ожидает либо появления подходящего объекта для заражения, либо выполнения заданных автором вируса условий);

саморазмножение (может выполняться различными способами, о которых будет сказано ниже);

выполнение специальных функций, то есть собственно выполнение тех вредных действий, для которых вирус создавался;

проявление – заключается в демонстрации вирусом своего присутствия на компьютере (обычно в визуальной или в звуковой форме).

Перечисленные этапы не являются обязательными (за исключением этапов инфицирования и саморазмножения) и могут иметь иную последовательность. Например, вирус может сначала сообщить о своем присутствии и лишь после этого заняться заражением. Особую опасность представляет этап выполнения специальных функций, которые могут привести к катастрофическим последствиям.

Как уже было сказано выше, любая классификация вирусов достаточно условна. Тем не менее один из вариантов классификации мы все-таки приведем.

В соответствии с ним вирусы подразделяются на классы по следующим признакам:

среда обитания;

способ заражения;

деструктивная возможность;

особенности алгоритма вируса.

По среде обитания компьютерные вирусы можно разделить на загрузочные, дисковые, файловые, флэш-вирусы и сетевые.

Загрузочные вирусы внедряются в загрузочный сектор диска (boot-сектор) или в сектор, содержащий системный загрузчик винчестера.

Дисковые вирусы замечательны тем, что способны работать с физическими секторами жестких дисков. Такой вирус захватывает свободные (или даже занятые данными) секторы диска, устанавливает для них в файловой системе признак «плохих» (такие секторы в дальнейшем не распределяются под данные) или «специальных» (не подлежащих перезаписи) и «живет» в них до прихода доктора-антивируса.

К файловым относят вирусы, заражающие исполняемые файлы (файлы с расширениями. exe,com,bat). Особой разновидностью файловых вирусов являются так называемые макровирусы. Они «живут» в макросах – программах, написанных на языке VBA (Visual Basic Application), которые используются для расширения функциональных возможностей приложений из комплекта MS Office.

Еще один, наиболее «современный» тип файловых вирусов – это вредоносные сценарии (скрипты), написанные на одном из популярных скриптовых языков программирования (VBScript или JavaScript) и входящие в состав HTML-страниц. Для краткости будем именовать такие вирусы сценарными (или скриптовыми).

Флэш-вирусы обязаны своим названием микросхемам перезаписываемой энергонезависимой памяти (флэш-памяти). Как известно, в современных компьютерах такие микросхемы используются на материнских платах для хранения кода программы BIOS. Неудивительно, что компьютеры, «подцепившие» флэш-вирус, зачастую вообще оказываются неспособны загружаться.

Сетевые вирусы для распространения активно используют протоколы и возможности локальных и глобальных сетей. Основным принципом работы сетевого вируса является возможность самостоятельно передать свой код на удаленный сервер или рабочую станцию. «Полноценные» сетевые вирусы при этом обладают возможностью запустить на выполнение свой код на удаленном компьютере или, по крайней мере, «подтолкнуть» пользователя к запуску зараженного файла.

Помимо перечисленных, существуют и «комбинированные» вирусы – например, файлово-загрузочные, способные заражать как файлы, так и загрузочные секторы дисков. Такие вирусы, как правило, работают по довольно сложным алгоритмам и часто применяют оригинальные методы проникновения в систему.

ПРИМЕЧАНИЕ

По состоянию на ноябрь 2005 года почтовые и сетевые черви составляли около 78 % от всех выявленных вирусов, файловые вирусы – около 20 %, загрузочные и другие вирусы в общей сложности составляют около 2 % (по данным Лаборатории Касперского).

По способу заражения вирусы подразделяются на резидентные и нерезидентные.

Резидентный вирус при инфицировании компьютера оставляет в оперативной памяти (ОП) свою резидентную часть, которая затем перехватывает обращение операционной системы к объектам заражения и внедряется в них. Обычно эта процедура предусматривает проверку, не присутствует ли уже в объекте копия вируса. Если объект «чист», то вирус копируется из памяти в заражаемый объект с модификацией его первой команды. Объектами заражения в этом случае могут быть исполняемые программы на жестком диске и на гибких дисках. Резидентные вирусы находятся в памяти и активны вплоть до выключения или перезагрузки компьютера. Резидентными можно считать макровирусы, поскольку они постоянно присутствуют в памяти компьютера в течение всего времени работы приложения, использующего «вредоносный» макрос. Соответственно, все документы, созданные или просто открытые в это время, будут заражены.

Нерезидентные (транзитные) вирусы не заражают ОП и активны ограниченное время. Транзитные вирусы не остаются в памяти после выполнения зараженной программы. Такой вирус перед передачей управления исходной программе ищет незараженный файл, пригодный для внедрения.

По деструктивным способностям вирусы можно разделить на:

безвредные;

неопасные;

опасные;

очень опасные.

Безвредные вирусы только уменьшают объем свободной памяти на диске в результате своего распространения.

Влияние неопасных вирусов ограничивается также уменьшением свободной памяти на диске и дополнительно сопровождается графическими, звуковыми и другими эффектами.

Опасные вирусы приводят к серьезным сбоям в работе компьютера.

В результате работы очень опасных вирусов уничтожаются программы, данные, удаляется необходимая для работы информация, записанная в системных областях памяти. Особо опасны вирусы, прикрепляемые к объектной библиотеке какого-либо компилятора. Такие вирусы автоматически внедряются в любую программу, работающую с инфицированной библиотекой. Известны также вирусы, способные разрушать BIOS компьютера, что приводит к невозможности его загрузки.

Вообще известные в настоящее время вирусы могут выполнять следующие разрушительные функции:

изменение данных в файлах;

изменение данных, передаваемых через параллельные и последовательные порты;

изменение назначенного диска (запись информации производится не на диск, указанный пользователем, а на диск, указанный вирусом);

переименование файлов;

форматирование отдельных частей жесткого диска (гибкого диска) или даже всего диска;

уничтожение, изменение или перемещение загрузочного сектора диска;

снижение производительности системы из-за постоянного выполнения паразитных программ;

отказ в выполнении определенной функции (например, блокировку клавиатуры, блокировку загрузки программы с защищенного от записи гибкого диска и т. д.).

Вирусы могут использовать следующие алгоритмы работы:

стелс-алгоритмы;

самошифрование и полиморфизм;

нестандартные приемы.

Применение стелс-алгоритмов (от англ. stealth – «невидимка») позволяет вирусам полностью или частично скрыть себя в системе. Наиболее распространенным стелс-алгоритмом является перехват запросов OC на чтение-запись зараженных объектов. Стелс-вирусы при этом либо временно лечат их, либо «подставляют» вместо себя незараженные участки информации. В случае макровирусов наиболее популярный способ – запрет вызовов меню просмотра макросов. Один из первых файловых стелс-вирусов – вирус «Frodo», первый загрузочный стелс-вирус – «Brain».

Самошифрование и полиморфизм (от англ. polymorphism – «многообразие») используются практически всеми типами вирусов для того, чтобы максимально усложнить процедуру обнаружения вируса. Полиморфик-вирусы – это вирусы, не имеющие сигнатур, то есть не содержащие ни одного постоянного участка кода. В большинстве случаев два образца одного и того же полиморфик-вируса не будут иметь ни одного совпадения. Это достигается шифрованием основного тела вируса и модификациями программы-расшифровщика.

Различные нестандартные приемы часто используются в вирусах для того, чтобы как можно глубже спрятать себя в ядре OC (как это делает вирус «3APA3A»), защитить от обнаружения свою резидентную копию (вирусы «TPVO», «Trout2»), затруднить лечение от вируса (например, поместив свою копию в Flash-BIOS) и т. д.

Восстановление данных

Подняться наверх