Борьба с компьютерными вирусами
Рефераты >> Программирование и компьютеры >> Борьба с компьютерными вирусами

Восстановление файлов-документов и таблиц

Для обезвреживания Word и Excel достаточно сохранить всю необходимую информацию в формате не-документов и не-таблиц — наиболее подходящим является текстовый RTF-формат, содержащий практически всю информацию из первоначальных документов и не содержащий макросов. Затем следует выйти из Word/Excel, уничтожить все зараженные Word-документы, Excel-таблицы, NORMAL.DOT у Word и все документы/таблицы в StartUp-каталогах Word/Excel. После этого следует запустить Word/Excel и восстановить документы/таблицы из RTF-файлов.

В результате этой процедуры вирус будет удален из системы, а практически вся информация останется без изменений. Однако этот метод имеет ряд недостатков. Основной из них — трудоемкость конвертирования документов и таблиц в RTF-формат, если их число велико. К тому же в случае Excel необходимо отдельно конвертировать все Листы (Sheets) в каждом Excel-файле. Второй недостаток — потеря невирусных макросов, используемых при работе. Поэтому перед запуском описанной процедуры следует сохранить их исходный текст, а после обезвреживания вируса — восстановить необходимые макросы в первоначальном виде.

Восстановление загрузочных секторов

Восстановление секторов в большинстве случаев является довольно простой операцией и проделывается при помощи DOS'овской команды SYS (загрузочные сектора дискет и логических дисков винчестера) или командой FDISK/MBR (Master Boot Record винчестера). Можно, конечно же, воспользоваться утилитой FORMAT, однако практически во всех случаях команды SYS вполне достаточно.

Следует иметь в виду, что лечение секторов необходимо производить только при условии отсутствия вируса в оперативной памяти. Если копия вируса в памяти не обезврежена, то вполне вероятно, что вирус повторно заразит дискету или винчестер после того, как код вируса будет удален (даже если воспользоваться утилитой FORMAT).

Будьте также крайне осторожны при использовании FDISK/MBR. Эта команда заново переписывает код программы-загрузчика системы и не изменяет таблицу разбиения диска (Disk Partition Table). FDISK/MBR является 100% лекарством для большинства загрузочных вирусов, однако, если вирус шифрует Disk Partition Table или использует нестандартные способы заражения, FDISK/MBR может привести к полной потере информации на диске. Поэтому перед запуском FDISK/MBR убедитесь в корректности Disk Partition Table. Для этого требуется загрузиться с незараженной DOS-дискеты и проверить корректность этой таблицы (наиболее удобная программа для этой цели — Norton Disk Editor).

Если же восстановление секторов при помощи SYS/FDISK невозможно, то следует разобраться в алгоритме работы вируса, обнаружить на диске первоначальный boot/MBR-сектор и перенести его на законное место (для этого подходят Norton Disk Editor или AVPUTIL). При этом надо постоянно иметь в виду, что при перезаписи системных загрузчиков необходимо соблюдать особую осторожность, поскольку результатом неправильного исправления сектора MBR или boot-сектора может быть потеря всей информации на диске (дисках).

Восстановление файлов

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

При лечении файлов следует учитывать следующие правила:

· необходимо протестировать и вылечить все выполняемые файлы (COM, EXE, SYS, OVL) во всех каталогах всех дисков вне зависимости от атрибутов файлов (т.е. файлы read-only, системные и скрытые);

· желательно сохранить неизменными атрибуты и дату последней модификации файла;

· необходимо учесть возможность многократного поражения файла вирусом («бутерброд» из вирусов).

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

Дезактивация оперативной памяти

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

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

В большинстве случаев для дезактивации памяти достаточно «обрубить» прерывания, перехватываемые вирусом: INT 21h в случае файловых вирусов и INT 13h в случае загрузочных (существуют, конечно же, вирусы, перехватывающие другие прерывания или несколько прерываний).

При дезактивации TSR-копии вируса необходимо помнить, что вирус может предпринимать специальные меры для восстановления своих кодов (например, некоторые вирусы семейства «Yankee» восстанавливают их при помощи методов помехо-защищенного кодирования), и в этом случае придется нейтрализовать и механизм самовосстановления вируса. Некоторые вирусы, кроме того, подсчитывают CRC своей резидентной копии и перезагружают компьютер или стирают сектора диска, если CRC не совпадает с оригинальным значением. В этом случае необходимо «обезвредить» также и процедуру подсчета CRC.

Анализ алгоритма вируса

На мой взгляд, наиболее удобным для хранения и анализа вируса объектом является файл, содержащий его (вируса) тело. Как показывает практика, для анализа файлового вируса удобнее иметь несколько зараженных файлов различной, но не очень большой, длины. При этом желательно иметь зараженные файлы всех типов (COM, EXE, SYS, BAT, NewEXE), поражаемых вирусом. Если необходимо проанализировать часть оперативной памяти, то при помощи некоторых утилит (например, AVPUTIL.COM) довольно просто выделить участок, где расположен вирус, и скопировать его на диск. Если же требуется анализ сектора MBR или boot-сектора, то скопировать их в файлы можно при помощи популярных «Нортоновских утилит» или AVPUTIL. Для хранения загрузочного вируса наиболее удобным является файл-образ зараженного диска. Для его получения необходимо отформатировать дискету, заразить ее вирусом, скопировать образ дискеты (все сектора, начиная с нулевого и кончая последним) в файл и при необходимости скомпрессировать его (эту процедуру можно проделать при помощи «Нортоновских утилит», программ TELEDISK или DISKDUPE).

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


Страница: