Средства борьбы с вредоносным программным кодом

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

Средства борьбы с вредоносным программным кодом условно можно разделить на два больших класса, имеющих общие достоинства и недостатки:

1. Программы, выявляющие вредоносный или просто нежелательный код поиском на локальном диске. Эти программы анализируют содержимое оперативной и постоянной памяти компьютера. Использование этих программ позволяет применять более развитые методы поиска, поскольку весь код находится в их распоряжении, но они вынуждены работать в условиях уже зараженной машины. Многие вредоносные программы препятствуют своему обнаружению и удалению. Немаловажно и то, что поиск начинается по запросу пользователя, а до такого запуска ресурсы машины поиском и “лечением” не заняты.

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

Среди таких программ выделяют:

· Антивирусы. Специализированные программы для выявления и устранения вирусов. Чаще всего используют поиск заданных участков кода — сигнатур. Выполняются в виде “Фагов” (программ проверки) и “Мониторов” (программ, контролирующих операции с файлами и проверяющих изменения).

· Программы борьбы со “шпионскими” или “рекламными программами”. Их специфика в том, что они выявляют не только сами программы, но и сделанные для этих целей изменения в настройках. Они выполняются и как программы поиска, и как мониторы. Например, в виде дополнительных модулей к брандмауэрам.

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

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

1. Антивирусное ядро — программные библиотеки поиска и устранения вредоносного кода;

2. База данных сигнатур — описания вредоносных программ и способов их устранения;

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

4. Антивирусный сторож — программа, проверяющая файлы при выполнении некоторых типовых операций (записи, запуска и т.д.). Несмотря на то, что эти программы замедляют работу, они позволяют выявить вредоносный код до того, как будет нанесен ущерб.

5. Специализированный фильтр — программа, контролирующая сообщения, которыми пользователь обменивается с помощью сети. Она, например, проверяет получаемые и отправляемые письма или web-страницы.

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

При активной, постоянно работающей и обновляющейся антивирусной системе заражение становится маловероятным событием. Тем не менее стоит иметь представление о том, как “выглядит” заражение вредоносной программой:

— систематически появляются странные запросы (иногда шуточные, иногда — нет) и выполняются действия, о которых вы не просили (например, перезагрузка);

— во время выполнения работы/загрузки машины возникают программные ошибки;

— работа машины без видимых причин замедляется;

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

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

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

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

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

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

Для полноценной защиты от появления на личной машине вредоносных программ рекомендуют:

1. Установить и своевременно обновлять (желательно автоматически) систему антивирусной защиты.

2. Проверять все носители (включая карты памяти, дискеты, диски и пр.), которые находились где-то за пределами вашей системы перед использованием.

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

4. Регулярно проводить полную проверку системы.

Примеры программных продуктов.

Антивирусы:

DrWeb, Kaspersky Antivirus, ClamAv

Поиск “шпионских” программ:

AdAware 2007, SpyWare Remove