Анализ антивирусных программ
Эвристический анализ
Эвристический анализ зачастую используется совместно со сканированием для поиска шифрующихся и полиморфных вирусов. В большинстве случаев эвристический анализ позволяет также обнаруживать и ранее неизвестные вирусы. В этом случае, скорее всего их лечение будет невозможно.
Если эвристический анализатор сообщает, что файл или загрузочный сектор, возможно, заражен виру
сом, вы должны отнестись к этому с большим вниманием. Необходимо дополнительно проверить такие файлы с помощью самых последних версий антивирусных программ сканеров или передать их для исследования авторам антивирусных программ.
Обнаружение изменений
Заражая компьютер, вирус делает изменения на жестком диске: дописывает свой код в заражаемый файл, изменяет системные области диска и т. д. На обнаружении таких изменений основываются работа антивирусных программ-ревизоров.
Антивирусные программы-ревизоры запоминают характеристики всех областей диска, которые могут подвергнутся нападению вируса, а затем периодически проверяют их. В случае обнаружения изменений, выдается сообщение о том, что возможно на компьютер напал вирус.
Следует учитывать, что не все изменения вызваны вторжением вирусов. Так, загрузочная запись может изменится при обновлении версии операционной системы, а некоторые программы записывают внутри своего выполнимого файла данные.
Резидентные мониторы
Антивирусные программы, постоянно находящиеся в оперативной памяти компьютера и отслеживающие все подозрительные действия, выполняемые другими программами, носят название резидентных мониторов или сторожей. К сожалению, резидентные мониторы имеют очень много недостатков, которые делают этот класс программ малопригодными для использования. Они раздражают пользователей большим количеством сообщений, по большей части не имеющим отношения к вирусному заражению, в результате чего их отключают.
2.1.1.4 Краткий обзор антивирусных программ
При выборе антивирусной программы необходимо учитывать не только процент обнаружения вирусов, но и способность обнаруживать новые вирусы, количество вирусов в антивирусной базе, частоту ее обновления, наличие дополнительных функций.
В настоящее время серьезный антивирус должен уметь распознавать не менее 25000 вирусов. Это не значит, что все они находятся "на воле". На самом деле большинство из них или уже прекратили свое существование или находятся в лабораториях и не распространяются. Реально можно встретить 200-300 вирусов, а опасность представляют только несколько десятков из них.
Существует множество антивирусных программ. Рассмотрим наиболее известные из них.
AVSP
(Anti-Virus Software Protection)
Интересным программным продуктом является антивирус AVSP. Эта программа сочетает в себе и детектор, и доктор, и ревизор, и даже имеет некоторые функции резидентного фильтра (запрет записи в файлы с атрибутом READ ONLY). Антивирус может лечить как известные, так и неизвестные вирусы, причем о способе лечения последних программе может сообщить сам пользователь. К тому же AVSP может лечить самомодифицирующиеся и Stealth-вирусы (невидимки).
При запуске AVSP появляется система окон с меню и информация о состоянии программы. Очень удобна контекстная система подсказок, которая дает пояснения к каждому пункту меню. Она вызывается классически, клавишей F1, и меняется при переходе от пункта к пункту. Так же не маловажным достоинством в наш век Windows-ов и "Полуосей"(OS/2) является поддержка мыши. Существенный недостаток интерфейса AVSP - отсутствие возможности выбора пунктов меню нажатием клавиши с соответствующей буквой, хотя это несколько компенсируется возможностью выбрать пункт, нажав ALT и цифру, соответствующую номеру этого пункта.
В состав пакета AVSP входит также резидентный драйвер AVSP.SYS, который позволяет обнаруживать большинство невидимых вирусов (кроме вирусов типа Ghost-1963 или DIR), дезактивировать вирусы на время своей работы, а также запрещает изменять READ ONLY файлы.
Ещё одна функция AVSP.SYS - отключение на время работы AVSP.EXE резидентных вирусов, правда вместе с вирусами драйвер отключает и некоторые другие резидентные программы. При первом запуске AVSP следует протестировать систему на наличие известных вирусов. При этом проверяется оперативная память, BOOT-сектор и файлы. В ряде случаев можно восстанавливать даже файлы, испорченные неизвестным вирусом. Можно установить проверку размеров файлов, их контрольных сумм, наличие в них вирусов, либо все это вместе. Так же можно указать, что именно проверять (Boot-сектор, память, или файлы). Как и в большинстве антивирусных программ, здесь пользователю предоставляется возможность выбрать между скоростью и качеством. Суть скоростной проверки заключается в том, что просматривается не весь файл, а только его начало; при этом удается обнаружить большинство вирусов. Если же вирус пишется в середину, либо файл заражён несколькими вирусами (при этом "старые" вирусы как бы оттесняются в середину "молодым") то программа его и не заметит. Поэтому следует установить оптимизацию по качеству, тем более что в AVSP качественное тестирование занимает не намного больше времени, чем скоростное.
При автоматическом определении новых вирусов AVSP может допустить множество ошибок. Так что при автоматическом определении шаблона следует не полениться проверить, действительно ли это вирус и не будет ли этот шаблон встречаться в здоровых программах.
Если в процессе AVSP обнаружит известный вирус, то следует предпринять те же действия, как и при работе с Dr.Web: скопировать файл на диск, перезагрузиться с резервной дискеты и запустить AVSP. Желательно также, чтобы при этом в память был загружен драйвер AVSP.SYS, так как он помогает основной программе лечить Stealth-вирусы.
Ещё одной полезной функцией является встроенный дизассемблер. С его помощью можно разобраться, есть ли в файле вирус или при проверке диска произошло ложное срабатывание AVSP. Кроме того, можно попытаться выяснить способ заражения, принцип действия вируса, а также место, куда он "спрятал" замещённые байты файла (если мы имеем дело с таким типом вируса). Все это позволит написать процедуру удаления вируса и восстановить испорченные файлы. Ещё одна полезная функция - выдача наглядной карты изменений. Карта изменений позволяет оценить, соответствуют ли эти изменения вирусу или нет, а также сузить область поиска тела вируса при дизассемблировании.
В программе AVSP есть два алгоритма нейтрализации стелс-вирусов ("невидимок") и оба они работают только при наличии активного вируса в памяти. Вот, что происходит при реализации этих алгоритмов: все файлы копируются в файлы данных, а потом стираются. Спасаются только файлы с атрибутом SYSTEM. В Adinf процесс удаления Stealth-ов реализован гораздо проще.
Программа AVSP контролирует также и состояние загрузочных секторов. Если заражен BOOT-сектор на дискете и антивирус не может его вылечить, то следует стереть загрузочный код. Дискета при этом станет несистемной, но данные при этом не потеряются. С винчестером так поступать нельзя. При обнаружении изменений в одном из BOOT-секторов жесткого диска AVSP предложит его сохранить в некотором файле, а затем попытается удалить вирус.
Другие рефераты на тему «Программирование, компьютеры и кибернетика»:
Поиск рефератов
Последние рефераты раздела
- Основные этапы объектно-ориентированного проектирования
- Основные структуры языка Java
- Основные принципы разработки графического пользовательского интерфейса
- Основы дискретной математики
- Программное обеспечение системы принятия решений адаптивного робота
- Программное обеспечение
- Проблемы сохранности информации в процессе предпринимательской деятельности