Современные программы обнаружения и защиты от вирусов.
Цель - раскрыть назначение и возможности антивирусных программ, научить технологии их использования.
Для борьбы с вирусами разрабатываются антивирусные программы. Говоря медицинским языком, эти программы могут выявлять (диагностировать), лечить (уничтожать) вирусы и делать прививку «здоровым» программам.
Различают следующие виды антивирусных программ:
• программы-детекторы (сканеры);
• программы-доктора (или фаги, дезинфекторы);
• программы-ревизоры;
• программы-фильтры (сторожа, мониторы);
• программы-иммунизаторы.
Программы-детекторы рассчитаны на обнаружение конкретных вирусов и основаны на сравнении характерной (специфической) последовательности байтов (сигнатур или масок вирусов), содержащихся в теле вируса, с байтами проверяемых программ. Программы-детекторы нужно регулярно обновлять, так как они быстро устаревают и не могут выявлять новые виды вирусов.
Следует подчеркнуть, что программы-детекторы могут обнаружить только те вирусы, которые ей «известны», то есть, если сигнатуры этих вирусов заранее помещены в библиотеку антивирусных программ.
Таким образом, если проверяемая программа не опознается детектором как зараженная, то еще не следует считать, что она «здорова». Она может быть инфицирована новым вирусом, который не занесен в базу данных детектора.
Для устранения этого недостатка программы-детекторы стали снабжаться блоками эвристического анализа программ. В этом режиме делается попытка обнаружить новые или неизвестные вирусы по характерным для всех вирусов кодовым последовательностям. Наиболее развитые эвристические механизмы позволяют с вероятностью около 80% обнаружить новый вирус.
Программы-доктора не только находят файлы, зараженные вирусами, но и лечат их, удаляя из файла тело программы-вируса. Программы-доктора, которые позволяет лечить большое число вирусов, называются полифагами.
Широкое распространение получили программы-детекторы, одновременно выполняющие и функции программ-докторов. Наиболее известные представители этого класса — AVP (Antiviral Toolkit Pro, автор — Е.Касперский), Aidstest (автор — Д.Лозинский) и Doctor Web (авторы — И.Данилов, ВЛутовинов, Д.Белоусов).
Ревизоры — это программы, которые анализируют текущее состояние файлов и системных областей диска и сравнивают его с информацией, сохраненной ранее в одном из файлов ревизора. При этом проверяется состояние ВООТ-сектора, FAT-таблицы, а также длина файлов, их время создания, атрибуты, контрольные суммы.
Контрольная сумма является интегральной оценкой всего файла (его слепком). Получается контрольная сумма путем суммирования по модулю два всех байтов файла. Практически всякое изменение кода программы приводит к изменению контрольной суммы файла.
Ревизоры сначала запоминают сведения о состоянии программ и системных областей дисков (загрузочного сектора и сектора с таблицей разбиения жесткого диска). Предполагается, что в этот момент программы и системные области дисков не заражены. После этого с помощью ревизора можно в любой момент времени сравнить состояние программ и системных областей дисков с их исходными состояниями. О выявленных несоответствиях ревизор сообщает пользователю. Ревизоры контролируют файловую систему, отслеживая перемещение, переименование, создание и удаление файлов и папок (каталогов).
Доктора-ревизоры не только обнаруживают изменения в файлах и системных областях дисков, но и могут в случае обнаружения изменений вернуть их в исходное состояние
Антивирусная программа ADinf (Advanced Diskinfoscope, автор — Мостовой Д.) относится к классу ревизоров. Антивирус имеет высокую скорость работы, способен с успехом противостоять вирусам, находящимся в памяти. Он позволяет контролировать диск, читая его по секторам через BIOS и не используя системные прерывания DOS, которые может перехватить вирус.
В отличие от полифагов, ADinf не использует в своей работе «портреты» (сигнатуры) конкретных вирусов. Поэтому ADinf особенно эффективен при обнаружении новых вирусов, противоядие для которых еще не придумано. Ревизор ADinf может быть дополнен лечащим блоком ADinf Cure Module.
Антивирусы-фильтры — это резидентные программы (сторожа), которые оповещают пользователя обо всех попытках какой-либо программы выполнить подозрительные действия. Фильтры контролируют следующие операции:
• обновление программных файлов и системной области диска;
• резидентное размещение программ в ОЗУ.
Обнаружив попытку выполнения таких действий, сторож (монитор) сообщает об этом пользователю, который принимает окончательное решение по выполнению данной операции. В качестве примера такой антивирусной программы можно назвать VSafe. Заметим, что она не способна обезвредить даже известные вирусы. Для «лечения» обнаруженных фильтром вирусов нужно использовать программы-доктора.
К последней группе относятся наименее эффективные антивирусы — вакцинаторы (иммунизаторы). Они записывают в вакцинируемую программу признаки конкретного вируса так, что. вирус считает ееуже зараженной, и поэтому не производит повторное инфицирование. Нужно отметить, что этот вид антивирусных программ морально устарел.
Среди зарубежных антивирусных программ чаще других упоминаются в печати программы Dr Solomon's Anti-Virus 7.0, McAfee VirusScan 3.0, Norton AntiVirus 4.0.
Вопросы для самоконтроля:
- Приведите основные виды антивирусных программ.
- Охарактеризуйте действие антивирусных программ.
- Приведите современные антивирусные программы.
- Опишите работу с антивирусными программами.
Рекомендуемая литература: /3/ стр.450; /11/ стр. 152-160