Предложен новый метод выявления вредоносных программ для Android

Предложен новый метод выявления вредоносных программ для Android

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

В работе, опубликованной на archive.org, сингапурские учёные рассматривают особенности разработанной ими технологии и её отличия от предшественников — других методов выявления вредоносных программ при помощи машинного обучения.

Сначала такие методы, как правило, определяют особенности анализируемого приложения — например, выполняемые ими системные вызовы и обращения к программным интерфейсам или используемые ресурсы и привилегии. Затем эти данные передают готовому классификатору, который знаком с характерными чертами вредоносных программ. Он изучает их и выносит вердикт: есть опасность или нет, пишет xakep.ru.

Авторы работы полагают, что это заведомо порочный подход. Он подразумевает, что признаки вредоносных программ, которым обучили классификатор, не меняются. В действительности вредоносные программы постоянно эволюционируют. Из-за этого точность классификаторов падает.

Чтобы не оставать от противника, классификаторы необходимо постоянно переучивать. Однако для пакетного обучения нового классификатора нужно перемолоть чудовищный объём информации. Это делает частое переучивание непрактичным.

Предложенная сингапурскими исследователями технология, получившая название DroidOL, использует не пакетное, а непрерывное (online) машинное обучение, пассивно-агрессивный классификатор и анализ графа межпроцедурного потока управления.

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

Затем технология использует ядро графа Вейсфейлера-Лемана, чтобы идентифицировать те части графов межпроцедурного потока управления, которые соответствуют потенциально опасному поведению.

Полученный набор данных применяется для обучения пассивно-агрессивного классификатора. Если при обучении он неверно классифицирует приложение, в него вносятся изменения. При отсутствии ошибок изменений не происходит.

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

Исследователи реализовали DroidOL на базе Soot, популярного средства статического анализа приложений для Android, и библиотеки Scikit-learn, упрощающей реализацию алгоритмов машинного обучения. Величина программы составила около 15,6 тысяч строк кода на Java и Python.

Эффективность DroidOL протестировали на базе, состоящей из 87 тысяч с лишним приложений для Android. Он показал верный результат в 84,29% случаев. Это более чем на 20% лучше, чем алгоритмы Drebin и Allix et. al. при типичных настройках пакетного обучения, и на 3% лучше, чем при постоянном переучивании.

AM LiveПодписывайтесь на канал "AM Live" в Telegram, чтобы первыми узнавать о главных событиях и предстоящих мероприятиях по информационной безопасности.

Через вредоносные Blender-файлы распространяют инфостилер StealC V2

Исследователи обнаружили новую кампанию «с российским следом», в рамках которой злоумышленники распространяют инфостилер StealC V2 через вредоносные файлы Blender, загруженные на крупные 3D-маркетплейсы вроде CGTrader. Blender позволяет выполнять Python-скрипты — они используются для автоматизации, кастомных панелей, ригов и аддонов.

Если у пользователя включена функция Auto Run, скрипты запускаются автоматически при открытии файла. Этим и пользуются атакующие: многие художники и моделлеры включают Auto Run ради удобства.

Специалисты Morphisec заметили, что вредоносные .blend-файлы содержат встроенный Python-код, который загружает лоадер с домена в Cloudflare Workers.

 

Далее загрузчик скачивает PowerShell-скрипт, который подтягивает два ZIP-архива — ZalypaGyliveraV1 и BLENDERX — с IP-адресов, контролируемых злоумышленниками.

Архивы распаковываются во временную папку, откуда создают LNK-файлы в автозагрузке для постоянства. Затем жертве подсовываются два компонента: основной инфостилер StealC и вспомогательный Python-стилер для подстраховки.

 

По данным Morphisec, атакующие используют последнюю версия второго поколения StealC — того самого, который ранее изучала Zscaler. Новый StealC заметно расширил функции:

  • крадёт данные из 23+ браузеров и поддерживает расшифровку паролей на стороне сервера, включая Chrome 132+;
  • поддерживает свыше 100 расширений криптокошельков и более 15 отдельных приложений;
  • ворует данные мессенджеров (Telegram, Discord, Tox, Pidgin), VPN-клиентов (ProtonVPN, OpenVPN) и почтовых программ, включая Thunderbird;
  • оснащён обновлённым механизмом обхода UAC.

При этом свежие версии StealC по-прежнему почти не детектируются антивирусами: Morphisec отмечает, что образец, который они изучали, не был распознан ни одним движком на VirusTotal.

Атака опасна тем, что 3D-маркетплейсы не могут проверять встроенный в файлы код. Художникам, аниматорам и моделлерам рекомендуется:

  • отключить автоматический запуск Python-скриптов: Blender → Edit → Preferences → снять галочку с Auto Run Python Scripts;
  • относиться к 3D-ассетам как к потенциально исполняемому коду;
  • скачивать файлы только у надёжных авторов или тестировать их в песочнице.

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

AM LiveПодписывайтесь на канал "AM Live" в Telegram, чтобы первыми узнавать о главных событиях и предстоящих мероприятиях по информационной безопасности.

RSS: Новости на портале Anti-Malware.ru