Когда руководители департаментов информационной безопасности говорят о вредоносных полиморфных программных средствах, они уточняют, что полиморфизм — отнюдь не новое явление. Этот тип вредоносных кодов, известный еще с 1980-х годов, изменяет свои свойства так, чтобы их не могли обнаружить предназначенные для борьбы с вирусами и для выявления вторжений утилиты безопасности, действие которых основывается на проверке сигнатур и на исследовании особенностей поведения проверяемых программ.
Десять лет назад участникам ежегодной конференции хакеров Defcon был продемонстрирован предназначенный для проникновения в систему обходным путем «троянский конь» Back Orifice 2.0 —
исключительно простое в использовании серверное полиморфное средство. В начале 2000-х годов на свет появились полиморфные черви (Code Red, Nimda и SirCam). Позднее разговоры о них поутихли.
«Сегодня вредоносные полиморфные программы используются для рассылки множества вариантов «троянцев», а автоматические программы рассылаются краткими «залпами» продолжительностью в один час или меньше и исчезают еще до того, как производители систем обнаружения успевают написать сигнатуру», — рассказывает Амир Лев, президент фирмы Commtouch, OEM-поставщика широко распространенного процессора для обнаружения вирусов, который реализует технологию выявления повторяющихся шаблонов (Recurrent Pattern Detection technology).
Примером такой программы может служить Storm Worm, червь, присоединяемый к сообщениям электронной почты. Рассылка спама с этим червем имела место в январе 2007 года. В поле «Тема» рассылаемых сообщений значились такие, к примеру, строки: «В ходе бури, прокатившейся по Европе, погибло 230 человек».
В январе фирма Commtouch выявила «десятки тысяч различных вариантов» таких непрошеных посланий, вспоминает Лев. Еще один пример — известное с конца 2006 года семейство вредоносных программ Stration, в состав которого входили черви и другие программные средства, предназначенные для нарушения нормальной работы компьютеров. «Коды Stration изменялись так быстро —
компоновка шифртекста, компилятор и все прочее. За один день мы столкнулись с более чем 300 вариантами», —
рассказывает Рон О’Брайен, старший аналитик по проблемам безопасности компании Sophos, специализирующейся на разработке средств борьбы с вредоносными программами.
Борьба с вредоносными полиморфными кодами подобна гонке вооружений, где одной стороной являются злоумышленники, а другой — пользователи и поставщики средств безопасности. Поставщики продолжают оснащать свои процессоры новыми средствами сканирования, к которым, как правило, относятся и средства предварительного и последующего распознавания исполняемых файлов в поисках информационного наполнения и программ, свидетельствующих о вредоносном характере кода. Процессоры осуществляют эти проверки в управляемой среде, именуемой «песочницей». В ходе таких проверок потенциальные проблемы выявляются с помощью эвристических программ или средств анализа динамических характеристик. Так, если, к примеру, исполнимый файл пытается выяснить, какая антивирусная программа выполняется в данный момент, или если этот файл стремится вступить во взаимодействие с центральным контроллером, некоторые технологии проверки выявляют и блокируют попытки такого рода, разъясняет О’Брайен.
Подобный метод сканирования исполняемых файлов «не работает применительно к современным автоматическим программным средствам, поскольку, когда вы пытаетесь запускать их в песочнице, эти зомби никак не проявляют себя, — разъясняет Лев. — Позднее они предпринимают попытки связаться с центральным контроллером, но делают это в периоды, когда компьютер простаивает; обычно это происходит поздно ночью».
Наряду со средствами предотвращения вторжений и использующими эвристические методы системами борьбы с вредоносным ПО система защиты сети должна иметь средства, ориентированные на поиск потенциальных вариантов вредоносных программ. К примеру, в полиморфных приложениях часто используются собственные форматы сжатия данных, поскольку шифртексты могут изменяться на ходу. Хорошо реализованная система защиты квалифицирует такой файл как подозрительный.
Кроме того, сетевые средства выявления вредоносного ПО нужно настраивать для работы в режиме реального времени. «Необходимо полагаться на уровни проверки, а также на средства, обеспечивающие защиту и ответные действия в час “Ч”», — резюмирует Лев.
Deb Radcliff. Polymorphic malware: A threat that changes on the fly. CSO. April 2007