Назначение и характеристики антивирусных программ
Борьба с компьютерными вирусами осуществляется с помощью антивирусных программ, которые в настоящее время должны обладать весьма значительным запасом "прочности" против различных ухищрений создателей компьютерных вирусов. Изначально самым распространенным способом обнаружения компьютерных вирусов был "поиск по маске", т.е. выявление в файлах специфичной для каждого вируса последовательности символов. Со временем эти последовательности стали объединять в специализированные антивирусные базы, которые стали неотъемлемым атрибутом современных антивирусных программ. Чем больше набор подобных шаблонов в базе антивирусной программы, тем с большим количеством вирусов она способна бороться. Большая антивирусная база - залог удачного восстановления зараженного объекта в первоначальном виде. При этом необходимы индивидуальный подход к каждому вирусу и его тщательный анализ. Не секрет, что разные вирусы используют одинаковые методы заражения объектов, но не следует забывать и о том, что каждый вирус индивидуален, как человек, который его создал, даже если это вирусы одного семейства.
Говоря о тенденциях увеличения числа компьютерных вирусов, нельзя не сказать о том, что все чаще встречаются сложные вирусы, не только способные обходить традиционную защиту и использовать свои механизмы заражения и маскировки, но и направленные против конкретных антивирусных средств.
К отличительным особенностям современных антивирусных программ можно добавить еще две: мощный эвристический механизм для борьбы с еще неизвестными программе вирусами и механизм для борьбы с самошифрующимися вирусами. Не вдаваясь в подробности работы этих сложных программных механизмов, отметим, что по характерным для вирусов участкам кода можно с определенной степенью вероятности утверждать о наличии неизвестного программе вируса в объекте. Тесты независимых изданий (например, английский журнал "Virus Bulletin") и большой опыт работы с пользователями во всем мире позволяют утверждать, что в 80 случаях из 100, когда объект заражен неизвестным вирусом, программа выдаст подозрение о заражении объекта. Эвристический механизм позволяет предполагать (прогнозировать) наличие вируса, маска которого на данный момент отсутствует в базе антивирусной программы. Встраивание эвристического механизма в антивирусные программы позволяет расширить их возможности, поскольку дает возможность вести борьбу с пока еще "неизвестными" вирусами. Любой механизм, работающий по эвристическому принципу, может давать ложные срабатывания. Однако, как показал продолжительный опыт работы, их процент незначителен, и в любом случае в таких вопросах лучше немного перестраховаться.
Характерной особенностью так называемых полиморфных вирусов является способность к существенной мутации своего кода, из-за чего некоторые программы (типа Aidstest, весьма популярной в свое время) принципиально не в состоянии опознать (а значит, и обезвредить) такие вирусы. Для борьбы с полиморфными вирусами следует использовать антивирусы нового поколения (например, DrWeb), которые благодаря встроенному эмулятору процессора опознают вирусы под различными шифровщиками и упаковщиками, а благодаря своему блоку эвристического анализа обнаруживают и многие (свыше 80 %) неизвестные вирусы. Эмулятор процессора создает имитацию продолжительной работы компьютерных программ, что провоцирует полиморфные вирусы к мутации и, следовательно, к изменению тестируемых программ.
Отличительными особенностями современных антивирусных программ являются заложенные в них новые возможности:
§ проверка архивных и упакованных файлов;
§ избыточное сканирование, при котором в поисках вируса объект "разбирается" по байтам и проводится тщательный анализ возможности выполнения деструктивного действия. Это несколько замедляет процесс сканирования, однако повышает надежность обнаружения и удаления вирусных тел из файлов компьютера;
§ наличие вирусной энциклопедии с детальным описанием вирусов, которые могут обнаруживаться конкретной программой.
В России антивирусные программы активно разрабатывают следующие фирмы:
§ недавно организованная ЗАО "Лаборатория Касперского" (раньше называлась КАМИ), где идеологом развития средств борьбы с вирусами с самого начала является Е.В. Касперский;
§ "Диалог-Наука", в которой раньше основным разработчиком был Д.Н. Лозинский, а затем коллектив пополнился И.А. Даниловым, благодаря которому появилась "Лаборатория Данилова".
Помимо антивирусных программ отечественного производства в нашей стране достаточно широко используются разработки таких зарубежных компаний, как Symantec, McAfee, Elashim, Avil Software, S&S International, Sophos.
Антивирусные программы можно классифицировать по различным признакам (рис. 6.3).
По характеру действия антивирусные программы подразделяются на следующие виды: полифаги, ревизоры, вакцины.
Полифаги предназначены для выявления вирусов и излечения от них файлов. К полифагам относятся AidsTest (Д.Н. Лозинский), DrWeb (И.А. Данилов), AVP (Е.В. Касперский), Norton Antivirus (Symantec).
Рис. 6.3.Классификация антивирусных программ
Ревизоры (иногда встречается название "CRC-сканеры") служат для информирования пользователя обо всех изменениях в структуре и содержании файлов с момента последней проверки компьютера. Как правило, подобные программы включаются в состав стартового пакета и проводят проверку изменений в файловой системе компьютера по сравнению с предыдущим включением. Программы этой категории не тестируют файлы на предмет наличия в них вирусов и не удаляют вирусы из файлов, их задача - только констатация всех изменений, которые выводятся в виде таблицы. Решать, что явилось причиной изменений, - задача пользователя. Примером программы-ревизора является ADINF, созданная в свое время Д.Н. Лозинским.
Вакцины (другое название - иммунизаторы) предназначены для защиты файлов от заражения, как правило, определенным вирусом. Так, например, программа WebWinWord (разработчик И.А. Данилов) была создана для защиты программы MS Word от заражения вирусом WinWord.Concept. Корпорация Microsoft создала иммунизирующую программу, предотвращающую заражение операционных систем вирусом W32. Blaster. Worm.
По способу проверки антивирусные программы классифицируются на две категории:
§ программы принудительного запуска. Для поиска и устранения вирусов такие программы (AidsTest, DrWeb for DOS) необходимо запускать специально. Несмотря на возможность многих антивирусных программ вести мониторинг на предмет отсутствия вирусов, иногда ими пользуются в режиме принудительного запуска для проверки отдельных носителей информации (дискет, дисков);
§ программы, осуществляющие постоянное наблюдение за вирусной обстановкой. Такие программы (АVР, DrWeb for Windows, NAV), будучи запущены резидентно, ведут постоянный мониторинг на предмет отсутствия вирусов. В зависимости от установленных параметров при возникновении опасной ситуации программы проводят необходимые действия или формируют сообщение пользователю. Следящие программы наблюдают за появлением вирусов и удаляют вирусные тела из файлов без прерывания обычной работы компьютера.
По способу настройки программы можно объединить в две группы:
§ пакетные (AidsTest, Cleaner), параметры работы которых задаются в командной строке при запуске программы;
§ программы-оболочки (подавляющее большинство современных программ для Windows), имеющие развитый интерфейс. Настройка параметров работы проводится в специальном режиме установки параметров.