Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #35, ОКТЯБРЬ 2003 г.

Как антивирус находит жертвы

TanaT (TanaT@hotmail.ru)

Спецвыпуск Xakep, номер #035, стр. 035-080-5


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

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

Инспектор изменений можно назвать компьютерным Шерлоком Холмсом. Слишком много у них общего: оба исследуют место преступления (файлы в нашем случае) лишь после того, как преступление произошло, и делают это, основываясь на уликах (отпечатках пальцев, оставленных следах, что в нашем случае - CRC и данные о внутреннем строении файла).

Старший брат

Тем, кто не читал, рекомендую рассказ Джорджа Оруэлла "1984". Там как раз о Старшем Брате хорошо написано.

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

Суть этой технологии проста: каждое действие программы анализируется на предмет "хорошее оно или плохое". Если хорошее, то действие разрешается, в противном случае блокируется (отсюда и название). Интересная деталь - если добавить сюда искусственный интеллект, то технология будет очень близка по сути к эвристикам.

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

Сегодня наибольшей популярностью пользуются поведенческие блокираторы, разработанные под конкретные приложения. Например, "Лаборатория Касперского" поставляет вместе со своим дистрибутивом Антивирус Касперского Personal Pro модуль, который называется Office Guard. Вот как он работает.

Набор используемых макровирусом функций очень и очень ограничен. Разработчики додумались классифицировать их и разложить по полочкам. 90% современных макровирусов пытаются обратиться к адресной книге Outlook. Если предположить, что макрос - хороший, что ему делать в адресной книге? Что он там забыл? Вот-вот, ошиблись с предположением. Таким образом, Office Guard блокирует сразу 9 макровирусов из 10. Остальные 10% отлавливаются еще легче: есть определенный набор функций, с помощью которых макровирус может размножаться. Это редактирование основного файла шаблонов (normal.dot), запись своего тела в автомакросы (запускаемые автоматически при сохранении, сохранении как, закрытии и открытии документов). Если макрос попытается осуществить хоть одну из этих операций - значит он вирус. Не правда ли, просто?

Назад на стр. 035-080-4  Содержание  Вперед на стр. 035-080-6