Проактивные методы борьбы с вирусами
Современные пользователи персональных компьютеров уже и не помнят, когда компьютерных вирусов не было. Таким же незыблемым кажется и основной принцип реактивной защиты, выработанный в самом начале "вирусной истории": антивирусная программа для выявления и обезвреживания конкретного вируса использует так называемую сигнатуру вируса, своего рода отпечаток его особенностей. Со временем вирусов становилось все больше, и сигнатуры вынесли в отдельные базы данных, которые можно было обновлять, не переустанавливая антивирусное программное обеспечение. Для его разработчиков обновление сигнатурных баз стало основным механизмом внесения дополнений, связанных с выявлением новых угроз. Естественно, антивирусные компании стремились предельно сократить сроки выявления новых вирусов и формирования таких обновлений. Сегодня этот процесс отлажен, в значительной степени автоматизирован, и период выхода обновлений сократился до нескольких часов. Однако это не позволило полностью решить данную проблему.
Одна из причин связана с тем, что вирусописатели тоже не сидели сложа руки и добились больших успехов в своем деле. Эти успехи во многом обусловлены изобретением все более изощренных способов заражения, маскировки и распространения вирусов. Самое главное, резко сократились сроки, которые разделяют появление какой-либо уязвимости и использующей ее вредоносной программы. Так, если в 2003 г. этот отрезок составлял около месяца, в 2004 г. - уже меньше недели, то в 2005 г. он преодолел нулевую отметку, став отрицательным. Это значит, что создатели вирусов научились обнаруживать и практически использовать "бреши" еще до того, как они будут признаны программистским сообществом и разработчиками соответствующего программного продукта. Неудивительно, что традиционные реактивные методы защиты оказались, по существу, бессильны в противодействии этому новому явлению. Причем, к сожалению, эта ограниченность принципиальна, поскольку какое-то время обязательно уходит на то, чтобы ранее не известный, но уже распространяющийся вирус был выявлен, какое-то - на создание сигнатуры и еще какое-то - чтобы пользователи скачали и установили соответствующее обновление. Фактически традиционная линия антивирусной защиты стремится сократить лишь второй временной отрезок, а первый и третий - остаются неконтролируемыми. Что касается третьего временного отрезка, то нередко при обсуждении этой проблемы ответственность здесь перекладывается на пользователя. Но это не совсем корректно, так как именно антивирусные компании создали не удобный для него режим работы. Например, многие пользователи компьютеров подключаются к Интернету по низкоскоростным линиям. И это не только многочисленные пользователи, проживающие и в крупных городах, и в небольших населенных пунктах. Есть еще и постоянно растущая группа мобильных пользователей, которые подключаются к Интернету по GPRS. Они нередко предпочитают в первую очередь скачивать именно важную информацию, а не антивирусное обновление.
Следовательно, реактивный метод оказывается принципиально бессильным против новых вирусов - всегда остается временное окно, достаточное для нанесения серьезного ущерба. Современное вредоносное программное обеспечение этим окном пользуется в полной мере. Сегодня вполне достаточно нескольких минут, чтобы вирус распространился по компьютерным сетям и заразил миллионы компьютеров и серверов.
Недавно у сигнатурного метода проявился еще один недостаток, важность которого будет только возрастать. Дело в том, что наряду с универсальными вирусами, поражающими все компьютеры без разбора, стали появляться замаскированные под вирусы вредоносные программы, написанные "под конкретную организацию". Они способны нанести компании серьезный ущерб и при этом наверняка не попадут в сигнатурные базы.
Таким образом, в противостоянии вирусов и реактивных методов борьбы с ними победа осталась за вирусами, поэтому любая крупная антивирусная компания обязательно предлагает те или иные технологии, связанные с противодействием вредоносной программе еще до ее внесения в сигнатурные базы.
В настоящее время сложились два основных подхода к решению данной задачи, основанных на политике безопасности и на проактивных (эвристических) методах. Цель первого подхода - как можно быстрее, еще до того, как для нового вируса выработана сигнатура, помешать ему проникнуть в компьютер и распространиться, используя технологии информационной безопасности (ИБ). Например, могут быть автоматически перекрыты определенные коммуникационные порты, блокирован доступ к некоторым файлам и т.д. Но такой подход проблему не решает. Действительно, у разработчика антивирусной программы появляется больше времени на создание сигнатур и скорость распространения вируса в компании будет несколько ниже. Однако такой подход имеет ряд недостатков: ориентация только на корпоративную среду, побочные эффекты изменения политики безопасности (непредсказуемость и неудобство для пользователя, неожиданные помехи в работе и т.д.) и неприемлемое с точки зрения служб информационной безопасности вторжение в их сферу компетенции, что резко затрудняет интерпретацию всех выявленных попыток нарушить политику ИБ, в том числе никак не связанных с вирусами, а самое главное - невозможность выявить и обезвредить неизвестные вирусы.
По-настоящему способны защитить от неизвестных угроз только технологии проактивной защиты, которые умеют обнаруживать вредоносное программное обеспечение по "поведенческим" признакам и не требуют предварительного анализа вируса в антивирусной лаборатории. В отличие от сигнатурного метода проактивная защита опирается не на описание конкретного вируса, а на представление об универсальных механизмах заражения, распространения, маскировки и т.д., которыми пользуются любые вирусы. Анализируя конкретный информационный объект, проактивный антивирус стремится обнаружить в нем признаки использования этих механизмов, и если они обнаружены, то относит данный объект к категории опасных. Причем антивирус может использовать тот или иной набор приемов. Среди этих приемов так называемая эмуляция - выполнение фрагментов кода анализируемого объекта под контролем антивирусной программы, анализ алгоритма анализируемого объекта, т.е. "просеивание" кода исполняемых файлов, скриптов, участков оперативной памяти и загрузочных сегментов на предмет обнаружения частей кода, отвечающих за заражение, размножение и нанесение ущерба, а также широкий класс эвристических методов, которые позволяют, в частности, определить, действительно ли обнаружено вредоносное программное обеспечение или же подозрения беспочвенны. Важно, что эффективность защиты значительно возрастает, если эти приемы используются совместно. Так, в антивирусном программном обеспечении NOD32, где проактивные методы используются для выявления около 90% вирусов, одновременно используются эмуляция, алгоритмический анализ, пассивные эвристики и сигнатурные методы. Развивая свои проактивные технологии, разработчики стремятся найти оптимальный баланс между способностью антивируса не пропускать действительно зараженные объекты и опасностью так называемых ложных срабатываний, при которых безопасное программное обеспечение ошибочно воспринимается как вредоносное.
Однако возникает законный вопрос: а насколько эффективными могут быть проактивные методы. По определению в каждый момент они защищают нас от тех угроз, которые известны вирусописателям, но не пользователям, тестовым лабораториям и разработчикам антивирусной программы. Тем более что конкретные алгоритмы проактивной защиты составляют коммерческую тайну каждого разработчика. Традиционное тестирование не дает ответа на этот вопрос, поскольку в тестовую коллекцию попадает вредоносное программное обеспечение, уже известное разработчикам антивируса. Получить объективные количественные оценки эффективности проактивной защиты до некоторой степени позволяет так называемое ретроспективное тестирование, на котором специализируется, например, лаборатория Андреаса Клименти. При данном тестировании оценивается доля текущей коллекции вирусов, которую обнаруживает версия антивирусного программного обеспечения и сигнатурных баз, взятая на момент, когда включенные в коллекцию вирусы заведомо не были известны. Такая методика ставит в относительно невыгодное положение именно антивирусную программу, устаревшим версиям которой противостоят новые (хотя и не последние) достижения "вирусостроения". Проведенные тесты показывают, что сегодня различные продукты способны проактивно выявить от 15 до 90% неизвестных вирусов, причем для вышеупомянутого антивируса NOD32 этот показатель доходит до 90%.
Итак, полной стопроцентной защиты от неизвестных вирусов не может, к сожалению, дать ни один программный продукт. При современном темпе возникновения нового вредоносного программного обеспечения (ежемесячно появляется от 100 до 500 новых вирусов) полагаться в основном на ретроспективные методы рискованно и неразумно. Тем более что проактивные методы достигли высокой эффективности, устойчиво обнаруживая до девяти неизвестных вирусов из десяти. Много это или мало? Разные разработчики считают по-разному. Но ясно, что использовать лишь проактивные методы также нельзя. Оптимальным является сочетание мощного проактивного и стандартного реактивного механизмов, поскольку через некоторое время, когда новые вирусы станут известны, разработчики создадут для них сигнатуры, и комплексный продукт сможет противостоять и тем угрозам, с которыми он справился, и тем, которые пропустил.
Правда, к этому времени уже появятся новые вирусы и начнется новый виток. Однако сегодня это, пожалуй, лучшее, что может предложить рынок антивирусов.
К. Ревенко,
независимый эксперт
"Финансовая газета", N 19, май 2006 г.
Если вы являетесь пользователем интернет-версии системы ГАРАНТ, вы можете открыть этот документ прямо сейчас или запросить по Горячей линии в системе.
Газета "Финансовая газета"
Учредители: Министерство Финансов Российской Федерации, Главная редакция международного журнала "Проблемы теории и практики управления"
Газета зарегистрирована в Госкомпечати СССР 9 августа 1990 г.
Регистрационное свидетельство N 48
Издается с июля 1991 г.
Индексы 50146, 32232
Адрес редакции: г. Москва, ул. Ткацкая, д. 5, стр. 3
Телефон +7 (499) 166 03 71