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

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

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

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


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

 

См книгу D:\Документы\Тема\Книги\Security\Protection_to_information