Возвращение вредоносных титанов
С объявлением об обходе популярного механизма обнаружения машинного обучения в начале этого года многие заблуждения о величии технологии машинного обучения, безусловно, рухнули. Обход состоял из простого добавления «счастливых строк», вытянутых из игрового программного обеспечения на ряд вредоносных файлов – процедура, известная как наложение. Таким образом, такие вредоносные титаны, как WannaCry и SamSam ловко ускользнули от обнаружения.
Новый вызов уклонению от машинного обучения
Такие инциденты являются полезным напоминанием о необходимости более глубокого понимания истинного состояния машинного обучения в кибербезопасности – как его преимуществ, так и недостатков. В этом духе Якуб Дебски, главный директор по продуктам ESET, решил принять участие в конкурсе статического уклонения от машинного обучения, организованного VMRay, Endgame и MRG-Effitas в августе этого года. Несмотря на жесткую конкуренцию и технические проблемы в этом первом в истории конкурсе, Дебски заставил ESET гордиться достижением наивысшего достигнутого результата – 133 из 150 баллов. [Примечание: размещение и оценка подлежат окончательному пересмотру из-за проблем с тестовой средой. Оставайтесь с нами в блоге Endgame и следите за предстоящими официальными результатами.]
Предпринятые шаги были нелегкими. Изменение 50 образцов вредоносных программ, чтобы избежать обнаружения из трех моделей обнаружения машинного обучения (две модели MalConv и одна модель EMBER LightGBM), обеспечивая при этом полностью функционирующее вредоносное ПО после модификации, – это задача не из простых.
Сначала Дебски обнаружил, что он может манипулировать записью заголовка в образцах вредоносных программ, которая действовала как особенно сильная функция для классификатора EMBER. Загвоздка заключалась в том, чтобы применить настроенный упаковщик UPX, а затем запустить сценарий фаззинг и обмануть классификатор EMBER, послав данные о якобы «доброкачественном» характере вредоносного ПО. UPX – это достаточно распространенный пакер, который многие механизмы машинного обучения не смогут отметить.
Вторая задача – как злоумышленник может обойти две модели машинного обучения MalConv? Дебски добавил несколько очень высоко оцененных «счастливых строк» к вредоносным образцам – снова хороший старый трюк с наложением, который сработал и в итоге привел к завершению конкурса.
Вы можете проверить детально проверить ходы Дебски здесь.
Ставки злоумышленников повышаются
Безусловно, у нападающих в арсенале есть гораздо больше, чем простые приемы уклонения, разрешенные в конкурсе. Возможно, позиция «размышлений с точки зрения нападающего» дала конкурентам небольшую фору, прежде чем Дебски отбросил свою «позицию атакующего», надел «майку игрока» и засучил рукава, набирая конкурсные очки по полной. Реальная жизнь намного сложнее любых соревнований, и методы атакующего не знают никаких ограничений. Так же, как и предварительные набеги Дебски в конкурсе, злоумышленник, скорее всего, сначала будет искать дыру в среде безопасности – думать о том, чтобы разбить экстрактор функций – как рычаг, чтобы полностью обойти полезное применение любых установленных на месте обнаружений машинного обучения.
В качестве альтернативы злоумышленник может также воспользоваться более динамичным подходом, используя самоэкстракторы и дропперы, которые легко пройдут мимо любых статических моделей машинного обучения, допущенные в этом конкурсе. Поскольку статический анализ ограничен точкой во времени, он не может выявить «бомбу замедленного действия», скрытую в замедленном самоизлучении. Более того, когда данные сжимаются и/или шифруются внутри самоэкстрактора, он не может извлечь ничего полезного – от воспринимает всё как шум. Обучение алгоритма машинного обучения обнаружению всех самоэкстракторов, которые обычно содержатся в чистых установщиках приложений, также вызовет слишком много ложных срабатываний.
Улучшай, кодируй и защищай
В конечном итоге, этот конкурс машинного обучения продемонстрировал ненадежность подхода, при котором все ставки делаются на одну лошадь – машинное обучение. Понимая широкое распространение готовых к использованию методов уклонения от машинного обучения, ESET уделяет большое внимание использованию квалифицированных и опытных аналитиков вредоносных программ для дополнения и обеспечения того, чтобы алгоритмы обнаружения машинного обучения не полагались исключительно на свои собственные таинственные манипуляции.
Вот почему создание механизма машинного обучения для обнаружения вредоносных программ, таких как Augur от ESET, является постоянной заботой компании ESET. Механизм машинного обучения должен постоянно обновляться по мере того, как поведение злоумышленников становится все более изощренным и креативным. Эти свежие данные являются критически важными входными данными для качества любого механизма обнаружения машинного обучения. В ESET мы потратили три десятилетия на «переделку двигателя», чтобы уменьшить количество ложных срабатываний и промахов.
Еще один способ улучшить обнаружение машинного обучения – это обеспечить распаковку данных перед их подачей в механизм машинного обучения. Это лучше защищает от методов уклонения машинного обучения с помощью самоэкстракторов и позволяет находить, эмулировать и анализировать вредоносные программы на поведенческом уровне.
Каждая рабочая станция и устройство, защищенные компанией ESET включенным ESET LiveGrid®, получают преимущества от способности Augur анализировать возникающие угрозы. Augur также работает в автономном режиме как легкий продвинутый модуль машинного обучения для защиты машин, даже если они работают без доступа в интернет. Корпоративные клиенты имеют Augur в своем распоряжении через ESET Dynamic Threat Defense (EDTD).
Хотя машинное обучение – это отличная технология, ни один бизнес не может полагаться только на неё, чтобы остановить всех противников. Надежная система безопасности для бизнеса требует многоуровневой защиты, такой как Сканнер UEFI от ESET и, который может защитить рабочие станции от всех векторов. Умные противники могут знать, как обойти защиту машинного обучения, но они не могут зайти далеко, когда другие уровни также находятся на месте.