Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 700148.doc
Скачиваний:
16
Добавлен:
01.05.2022
Размер:
853.69 Кб
Скачать

1.4. Многообразие антивирусного программного обеспечения

Большинство существующих систем защиты ИТКС от злоумышленного программного обеспечения связано с антивирусным программным обеспечением (антивирусом).

Для решения задачи противодействия вредоносным атакам чаще всего используют целый антивирусный комплекс – набор антивирусов, использующих одинаковое антивирусное ядро или ядра, предназначенный для решения практических проблем по обеспечению антивирусной безопасности компьютерных систем [157]. В антивирусный комплекс также в обязательном порядке входят средства обновления антивирусных баз.

Помимо этого, антивирусный комплекс дополнительно может включать поведенческие анализаторы и ревизоры изменений, не использующие антивирусное ядро [158].

Выделяют следующие типы антивирусных комплексов:

– антивирусный комплекс для защиты рабочих станций;

– антивирусный комплекс для защиты файловых серверов;

– антивирусный комплекс для защиты почтовых систем;

– антивирусный комплекс для защиты шлюзов.

Принцип работы антивирусных комплексов такой же, как и обычного антивируса – обнаружение и удаление вредоносного кода с использованием всего комплекса необходимых технологий. Антивирусные технологии развиваются параллельно с эволюцией вредоносных программ, становясь всё более изощренными по мере усложнения угроз [57].

Принципы действия антивирусных программ можно классифицировать несколькими способами. Один из видов классификации базируется на том, какая угроза нейтрализуется – известная или неизвестная вирусным аналитикам и антивирусным компаниям [57]:

1. Реактивная защита – защита от известных угроз с использованием знаний об участках кода и других уникальных особенностях существующих вредоносных программ. Для того чтобы такая защита работала успешно, антивирусная программа должна иметь обновленные базы сигнатур;

2. Проактивная защита – защита от новых вредоносных программ, основанная на знании неуникальных особенностей кода и поведения, характерных для вредоносного ПО.

Еще один вид классификации технологий, реализующих принцип антивирусной защиты, базируется на том, какие свойства угроз и потенциально зараженных объектов анализируются при детектировании [57]:

1. Анализ кода подозрительных объектов (сигнатурный анализ);

2. Поведенческий анализ подозрительных объектов (эвристический анализ);

3. Отслеживание изменений файлов, хранящихся на компьютере, по контрольным суммам и другим признакам (проверка по спискам KSN).

Антивирусные технологии можно классифицировать и по тому, в каком режиме осуществляется защита [57]:

1. Постоянный мониторинг за процессами на компьютере и в сети, и обнаружение угроз «на лету», например, при открытии зараженного файла или загрузке инфицированной веб-страницы в браузер.

2. Сканирование компьютера, запускаемое по расписанию, событию или запросу пользователя.

Ещё один способ классификации технологий, реализующих принцип антивирусной защиты, основывается на принципах разрешения/запрета активности объектов [57]:

1. Блокирование или ограничение активности объектов, содержащихся в «черных» списках (например, в базах сигнатур угроз), и разрешение запуска всех остальных.

2. Разрешение активности только безопасных объектов из «белых» списков и запрет активности всех остальных.

3. Комбинированный подход, например, использование «черных» списков для обнаружения угроз и «белых» списков для коррекции результатов детектирования и минимизации ложных срабатываний.

Знать принцип работы антивирусов необходимо для правильного выбора антивирусного решения. Полноценный антивирус должен включать в себя полный комплекс технологий, нейтрализующих любые типы угроз [57].

Необходимо отметить невозможность существования абсолютного антивируса, которая была доказана математически на основе теории конечных автоматов Фредом Коэном [59, 60]. Впрочем, утешает тот факт, что и «невидимый» вирус тоже никому еще создать не удалось [61].

Самыми популярными и эффективными антивирусными программами являются антивирусные сканеры (другие названия: фаги, полифаги). Следом за ними по эффективности и популярности следуют CRC-сканеры (также: ревизор, checksumer, integrity checker). Часто оба приведенных метода объединяются в одну универсальную антивирусную программу, что значительно повышает ее мощность [58]. Применяются также различного типа блокировщики и иммунизаторы. Говоря об объединении возможностей различных антивирусов, рассмотрим каждый тип отдельно [58].

Сканеры

Принцип работы антивирусных сканеров основан на проверке файлов, секторов, системной памяти и поиске в них известных и новых (неизвестных сканеру) вирусов.

Технологии, применяемые в сканерах, можно разбить на две группы [158]:

– Технологии сигнатурного анализа;

– Технологии вероятностного анализа.

Технологии сигнатурного анализа

Сигнатурный анализ – метод обнаружения вирусов, заключающийся в проверке наличия в файлах сигнатур вирусов. Сигнатурный анализ является наиболее известным методом обнаружения вирусов и используется практически во всех современных антивирусах. Для проведения проверки антивирусу необходим набор вирусных сигнатур, который хранится в антивирусной базе.

Ввиду того, что сигнатурный анализ предполагает проверку файлов на наличие сигнатур вирусов, антивирусная база нуждается в периодическом обновлении для поддержания актуальности антивируса. Сам принцип работы сигнатурного анализа также определяет границы его функциональности – возможность обнаруживать лишь уже известные вирусы – против новых вирусов сигнатурный сканер бессилен.

С другой стороны, наличие сигнатур вирусов предполагает возможность лечения инфицированных файлов, обнаруженных при помощи сигнатурного анализа. Однако, лечение допустимо не для всех вирусов – трояны и большинство червей не поддаются лечению по своим конструктивным особенностям, поскольку являются цельными модулями, созданными для нанесения ущерба.

Грамотная реализация вирусной сигнатуры позволяет обнаруживать известные вирусы со стопроцентной вероятностью.

Технологии вероятностного анализа в свою очередь подразделяются на три категории:

1. Эвристический анализ – технология, основанная на вероятностных алгоритмах, результатом работы которых является выявление подозрительных объектов. В процессе эвристического анализа проверяется структура файла, его соответствие вирусным шаблонам. Наиболее популярной эвристической технологией является проверка содержимого файла на предмет наличия модификаций уже известных сигнатур вирусов и их комбинаций. Это помогает определять гибриды и новые версии ранее известных вирусов без дополнительного обновления антивирусной базы.

Эвристический анализ применяется для обнаружения неизвестных вирусов, и, как следствие, не предполагает лечения. Данная технология не способна на 100% определить вирус перед ней или нет, и как любой вероятностный алгоритм обладает ложными срабатываниями.

2. Поведенческий анализ – технология, в которой решение о характере проверяемого объекта принимается на основе анализа выполняемых им операций. Проверяемый объект запускается в изолированной от операционной системы виртуальной среде, анализируется его поведение и последовательность команд, затем происходит набор некоторой статистики и принятие решения («возможно заражен» или «не заражен») для каждого проверяемого объекта. Поведенческий анализ весьма узко применим на практике, так как большинство действий, характерных для вирусов, могут выполняться и обычными приложениями. Наибольшую известность получили поведенческие анализаторы скриптов и макросов, поскольку соответствующие вирусы практически всегда выполняют ряд однотипных действий.

Средства защиты, вшиваемые в BIOS, также можно отнести к поведенческим анализаторам. При попытке внести изменения в MBR компьютера, анализатор блокирует действие и выводит соответствующее уведомление пользователю.

Помимо этого, поведенческие анализаторы могут отслеживать попытки прямого доступа к файлам, внесение изменений в загрузочную запись дискет, форматирование жестких дисков и т. д.

Поведенческие анализаторы не используют для работы дополнительных объектов, подобных вирусным базам и, как следствие, неспособны различать известные и неизвестные вирусы – все подозрительные программы априори считаются неизвестными вирусами. Аналогично, особенности работы средств, реализующих технологии поведенческого анализа, не предполагают лечения.

3. Анализ контрольных сумм – это способ отслеживания изменений в объектах компьютерной системы. На основании анализа характера изменений – одновременность, массовость, идентичные изменения длин файлов – можно делать вывод о заражении системы. Анализаторы контрольных сумм (также используется название ревизоры изменений) как и поведенческие анализаторы не используют в работе дополнительные объекты и выдают вердикт о наличии вируса в системе исключительно методом экспертной оценки. Подобные технологии применяются в сканерах при доступе – при первой проверке с файла снимается контрольная сумма и помещается в кэше, перед следующей проверкой того же файла сумма снимается еще раз, сравнивается, и в случае отсутствия изменений файл считается незараженным. Если информация о файле, записанная в базе данных, не совпадает с реальными значениями, то CRC-сканеры сигнализируют о том, что файл был изменен или заражен вирусом [58].

Недостаток сканера контрольных сумм состоит в том, что он не способен поймать вирус в момент его появления в системе, а делает это лишь через некоторое время, уже после того, как вирус разошелся по компьютеру. Такие сканеры не могут определить вирус в новых файлах (в электронной почте, на дискетах, в файлах, восстанавливаемых из backup или при распаковке файлов из архива), поскольку в их базах данных отсутствует информация об этих файлах. Более того, периодически появляются вирусы, которые используют эту «слабость» сканеров и заражают только вновь создаваемые файлы и остаются, таким образом, невидимыми для них [56].

Сканеры также можно разделить на две категории — «универсальные» и «специализированные». Универсальные сканеры рассчитаны на поиск и обезвреживание всех типов вирусов вне зависимости от операционной системы, на работу в которой рассчитан сканер. Специализированные сканеры предназначены для обезвреживания ограниченного числа вирусов или только одного их класса, например макро-вирусов [56].

Сканеры также делятся на «резидентные» (мониторы), производящие сканирование «на-лету», и «нерезидентные», обеспечивающие проверку системы только по запросу. Как правило, «резидентные» сканеры обеспечивают более надежную защиту системы, поскольку они немедленно реагируют на появление вируса, в то время как «нерезидентный» сканер способен опознать вирус только во время своего очередного запуска.

К достоинствам сканеров всех типов относится их универсальность, к недостаткам — размеры антивирусных баз, которыми пользуется сканер и относительно небольшую скорость поиска вирусов.

Блокировщики

Антивирусные блокировщики — это резидентные программы, перехватывающие «вирусоопасные» ситуации и сообщающие об этом пользователю. К «вирусоопасным» относятся вызовы на открытие для записи в выполняемые файлы, запись в boot-сектора дисков или MBR винчестера, то есть вызовы, которые характерны для вирусов в моменты их размножения [58].

К достоинствам блокировщиков относится их способность обнаруживать и останавливать вирус на самой ранней стадии его размножения. К недостаткам относятся существование путей обхода защиты блокировщиков и большое количество ложных срабатываний, что, видимо, и послужило причиной для практически полного отказа пользователей от подобного рода антивирусных программ [56, 58].

Необходимо также отметить такое направление антивирусных средств, как антивирусные блокировщики, выполненные в виде аппаратных компонентов компьютера [58]. Наиболее распространенной является встроенная в BIOS защита от записи в MBR винчестера. Однако, как и в случае с программными блокировщиками, такую защиту легко обойти прямой записью в порты контроллера диска, а запуск DOS-утилиты FDISK немедленно вызывает «ложное срабатывание» защиты.

Существует несколько более универсальных аппаратных блокировщиков, но к перечисленным выше недостаткам добавляются также проблемы совместимости со стандартными конфигурациями компьютеров и сложности при их установке и настройке. Все это делает аппаратные блокировщики крайне непопулярными на фоне остальных типов антивирусной защиты [58].

Иммунизаторы

Иммунизаторы делятся на два типа: иммунизаторы, сообщающие о заражении, и иммунизаторы, блокирующие заражение каким-либо типом вируса [58, 159]. Первые обычно записываются в конец файлов (по принципу файлового вируса) и при запуске файла каждый раз проверяют его на изменение. Недостаток у таких иммунизаторов всего один, но он летален: абсолютная неспособность сообщить о заражении стелс-вирусом. Поэтому такие иммунизаторы, как и блокировщики, практически не используются в настоящее время.

Второй тип иммунизации защищает систему от поражения вирусом какого-то определенного вида. Файлы на дисках модифицируются таким образом, что вирус принимает их за уже зараженные. Для защиты от резидентного вируса в память компьютера заносится программа, имитирующая копию вируса. При запуске вирус натыкается на нее и считает, что система уже заражена.

Такой тип иммунизации не может быть универсальным, поскольку нельзя иммунизировать файлы от всех известных вирусов. Однако несмотря на это, подобные иммунизаторы в качестве полумеры могут вполне надежно защитить компьютер от нового неизвестного вируса вплоть до того момента, когда он будет определяться антивирусными сканерами [56, 58].

Таким образом, антивирусные программы — общепризнанный подход, который доказал свою эффективность. Однако грамотное, научно обоснованное сочетание некоторых решений способно не только повысить защиту, но и снизить денежные и временные затраты на обслуживание, а также сложность этих процедур [160].