Антивирусная программа (антивирус) - любая программа для обнаружения компьютерных вирусов, а также нежелательных (считающихся вредоносными) программ вообще и восстановления зараженных (модифицированных) такими программами файлов, а также для профилактики - предотвращения заражения (модификации) файлов или операционной системы вредоносным кодом.
Используется для защиты области ОЗУ от программных закладок и защиты от использования уязвимостей системы резервного копирования.
Практически любая антивирусная программа объединяет в разных пропорциях все технологии и методы защиты от вирусов, созданные к сегодняшнему дню.
Из всех методов антивирусной защиты можно выделить две основные группы:
сигнатурные методы - точные методы обнаружения вирусов, основанные на сравнении файла с известными образцами вирусов;
эвристические методы - приблизительные методы обнаружения, которые позволяют с определенной вероятностью предположить, что файл заражен.
Сигнатурный анализ
|
|
Сигнатура (signature) - означает «подпись», или же в переносном смысле «характерная черта, нечто идентифицирующее». Сигнатурный анализ заключается в выявлении характерных идентифицирующих черт каждого вируса и поиска вирусов путем сравнения файлов с выявленными чертами.
Сигнатура вируса - совокупность черт, позволяющих однозначно идентифицировать наличие вируса в файле (включая случаи, когда файл целиком является вирусом).
Антивирусная база - совокупность сигнатур известных вирусов.
Эвристический анализ
Поиск вирусов, похожих на известные.
Эвристика - значит, «находить». Эвристический анализ основывается на (весьма правдоподобном) предположении, что новые вирусы часто оказываются похожи на какие-либо из уже известных. Поэтому в антивирусных базах находятся сигнатуры для определения не одного, а сразу нескольких вирусов. Следовательно, эвристический метод заключается в поиске файлов, которые не полностью, но очень близко соответствуют сигнатурам известных вирусов.
Преимущества: возможность обнаружить новые вирусы еще до того, как для них будут выделены сигнатуры.
Недостатки:
- вероятность ошибочно определить наличие в файле вируса, когда на самом деле файл чист - такие события называются ложными срабатываниями;
- невозможность лечения - и в силу возможных ложных срабатываний, и в силу возможного неточного определения типа вируса, попытка лечения может привести к большим потерям информации, чем сам вирус, а это недопустимо;
- низкая эффективность - против действительно новаторских вирусов, вызывающих наиболее масштабные эпидемии, этот вид эвристического анализа малопригоден.
|
|
Поиск вирусов, выполняющих подозрительные действия
Другой метод, основанный на эвристике, исходит из предположения, что вредоносные программы так или иначе стремятся нанести вред компьютеру, и основан на выделении основных вредоносных действий.
Например:
- удаление файла;
- запись в файл;
- запись в определенные области системного реестра;
- открытие порта на прослушивание;
- перехват данных вводимых с клавиатуры;
- рассылка писем;
Выполнение каждого такого действия по отдельности не является поводом считать программу вредоносной. Однако, при выполнении программой последовательно нескольких таких действий, например, записывает запуск себя же в ключ автозапуска системного реестра, перехватывает данные вводимые с клавиатуры и с определенной частотой пересылает эти данные на какой-то адрес в Интернет, значит эта программа, по меньшей мере, подозрительна. Основанный на этом принципе эвристический анализатор постоянно следит за действиями, которые выполняют программы.