Данная статья посвящена концептуальным вопросам использования методов Data Mining для реализации отдельных элементов систем обнаружения вредоносного программного обеспечения. Показывается актуальность решаемой задачи, определяются основные общие требования к методам детектирования вредоносного программного обеспечения (ПО). Описывается общая методология применения методов Data Mining и приводятся примеры ее использования для обнаружения вредоносного программного обеспечения, реализованного в виде исполняемых файлов.
Введение: проблема обнаружения вредоносного ПО
Можно с достаточно высокой степенью уверенности сказать, что в настоящее время традиционные подходы, используемые для обнаружения вредоносного ПО (malware — от англ. malicious software), подошли к очередному порогу своего технического совершенства.
Доказательством тому могут служить заявления последних лет всех более-менее успешных антивирусных вендоров об успешном формировании и запуске технических и организационных служб быстрого реагирования на появление новых инцидентов, связанных с функционированием вредоносного ПО, и оперативного выпуска обновлений информационных баз, обеспечивающих его заблаговременное детектирование, идентификацию и удаление с уже пораженных элементов информационной инфраструктуры организаций и отдельных пользователей.
Следует отметить, что частота регулярных обновлений достигает одного — двух часов и представляется, что данный показатель не является пределом для действительно критических случаев. Данные цифры демонстрируют впечатляющий прогресс, достижение которого было обеспечено за счет решения сложных организационных и технических задач мировым сообществом исследователей и инженеров, работающих в области информационной безопасности, и косвенно могут быть использованы в качестве одного из наиболее весомых аргументов маркетологов любой из этих компаний.
Однако, кроме всего прочего, увеличение частоты обновлений призвано достойно ответить на потенциально неразрешимую полностью проблему противодействия ранее неизвестным экземплярам вредоносного ПО, посредством которых реализуются так называемые Zero-Day-атаки. Примером одной из последних подобных успешных атак может служить печально известная эпидемия, вызванная появлением вируса Conficker, организация противодействия которой в силу ряда причин, проясняемых ниже, заняла значительное количество времени.
Суть упомянутой проблемы заключается в том, что в случае появления недетектируемого вредоносного программного объекта (приложения, процесса, web-страницы и т. д.), обладающего высокой способностью к распространению (обусловленной аспектами функциональной реализации и/или использованными приемами социальной инженерии), появляется временной зазор (его называют «окном уязвимости» — от англ. vulnerability window), во время которого не существует специализированных мер противодействия этому объекту.
В процессе того, как данный экземпляр вредоносного ПО будет выявлен аналитиком, пользователем или системным администратором по вторичным признакам, поступит на обработку в антивирусную лабораторию, будет проанализирован и по результатам его анализа будет сформирована и отправлена в канал обновлений новая сигнатура (набор правил), обеспечивающая его точное обнаружение и удаление, может пройти достаточно ощутимый временной срок, и запланированная злоумышленниками атака достигнет заданной цели.
< ... >