В попытках доставить вредоносное ПО на устройства жертв и продержаться на них как можно дольше злоумышленники иногда прибегают к довольно нестандартным методам. Так, в кампании, нацеленной на несанкционированную добычу криптовалюты и продолжающейся с 2022 года, атакующие не только задействовали множество различных ресурсов для распространения, но и использовали несколько необычных техник для обхода детектирования и закрепления в системах пользователей, в том числе — установку агента SIEM-системы с открытым исходным кодом Wazuh.
Кампания, судя по всему, глобальная, однако в этой статье мы рассмотрим цепочку заражения, с которой, по данным нашей телеметрии, столкнулись преимущественно русскоговорящие пользователи. Злоумышленники распространяли вредоносное ПО через сайты, якобы позволяющие бесплатно скачать различное популярное ПО (uTorrent, Microsoft Office, Minecraft и т. д.). Эти сайты показывались пользователям на первых строчках поисковой выдачи Яндекса. Помимо поиска атакующие использовали Telegram-каналы для криптоинвесторов, а также описания и комментарии под роликами на YouTube, посвященными криптовалюте, читам и азартным играм.
Оглавление
Заражение
Злоумышленники продвигают свои страницы в поисковой выдаче Яндекса. При попытке найти ресурсы, с которых можно загрузить различное ПО — uTorrent, MS Excel, MS Word, Minecraft, Discord и другое, — на первых строчках пользователи видят сайты, содержащие вредоносные файлы.
Внешний вид сайтов копирует либо официальные сайты ПО, которое ищет пользователь, либо известные пиратские площадки, распространяющие соответствующие программы:
Также злоумышленники ведут несколько Telegram-каналов, которые распространяют исследуемое вредоносное ПО. Каналы явно нацелены на владельцев криптокошельков и пользователей читов: в них предлагается скачать тематическое ПО. Чтобы помешать пользователям делиться информацией о мошенничестве, злоумышленники отключили в каналах возможность пересылки сообщений, создания снимков экрана и предпросмотра в веб-версии Telegram.
Помимо этого, злоумышленники распространяют вредоносное ПО через YouTube. Для этого они опубликовали множество англоязычных видео с различных аккаунтов, возможно, взломанных. Также вероятно, что сами ролики атакующие скачивали из других каналов на YouTube и перезаливали. В описании к видео и в комментариях злоумышленники оставляли ссылки свои ресурсы. Некоторые из них напрямую вели на сайты, содержащие вредоносное ПО. Другие — на упомянутые выше Telegram-каналы. Также мы видели под роликами на YouTube ссылки на сервис логирования IP, который позволяет злоумышленникам собирать IP-адреса пользователей, перешедших по ссылке, после чего перенаправляет их на основной сайт с вредоносным ПО.
Закрепление и техники обхода
Посетив сайт или канал злоумышленников, пользователь может скачать ZIP-архив, который якобы содержит нужное ему ПО. Внутри архива находится MSI-файл и TXT-файл с паролем, необходимым для его установки. Также в текстовом файле содержится инструкция, в которой злоумышленники рекомендуют отключить антивирусное ПО и Windows Defender. В некоторых случаях инструкция и пароль помимо текстового файла присутствуют и в Telegram-канале или на сайте, с которого пользователь скачал архив.
MSI-файл при запуске запрашивает пароль из TXT-файла (или из инструкции на ресурсе злоумышленников) — это одна из мер против исследования в песочнице. Если пользователь вводит правильный пароль, выполняется поле CustomAction MSI-файла, которое запускает VBS-скрипт из установочного пакета. Этот скрипт передает управление BAT-файлу, распаковывающему следующую часть цепочки атаки из зашифрованного архива. В первую очередь происходит закрепление еще одного BAT-файла в автозапуск с привилегиями SYSTEM для одиночного запуска. После этого происходит перезапуск системы.
Прописанный в автозапуск BAT-файл распаковывает запароленный RAR-архив и запускает команду start с двумя DLL-файлами, извлеченными из этого архива. Один из этих файлов представляет собой легитимный интерпретатор AutoIt, а второй — легитимную динамическую библиотеку с валидной цифровой подписью. Полезная нагрузка — вредоносный A3X-скрипт, скомпилированный в EXE-файл, — расположена внутри подписи легитимной библиотеки.
Эта техника интересна по двум причинам. Во-первых, A3X-скрипт добавлен в подпись таким образом, что ее легитимность не теряется и файл продолжает считаться корректно подписанным, несмотря на дополнительное содержимое. Подлог практически невозможно заметить без анализа содержимого файла. Во-вторых, особенностью интерпретатора AutoIt является то, что при передаче ему файла в качестве аргумента он ищет особую сигнатуру, свойственную скомпилированным скриптам, игнорируя любой контент, расположенный до сигнатуры. Эта особенность позволяет злоумышленникам размещать вредоносный код в любом файле там, где это не повредит файлу-контейнеру.
Расположение вредоносного кода в случайных местах различных файлов — прием не новый. Подобные техники наблюдались не только при использовании AutoIt, но и при запуске кода с помощью других платформ. Однако исследуемую атаку отличает не только сам факт подобного внедрения, но и обход проверки подписи, что позволяет файлу с имплантом казаться легитимным.
Если запустить команду start не удается, BAT-файл удаляет каталог с установленными файлами, включая себя. Если же заражение проходит успешно, после запуска вредоносный A3X-имплант в первую очередь проверяет наличие запущенных процессов, связанных с отладкой или антивирусным ПО. Обнаружив такой процесс, он завершает работу, как можно увидеть в деобфусцированном коде скрипта, изображенном ниже.
Скомпилированный A3X-скрипт содержит вызовы функции FileInstall. Эта функция принимает два аргумента: путь к устанавливаемому файлу и путь к месту его установки. До компиляции вызов этой функции просто копирует файл из первого пути во второй, однако во время компиляции интерпретатор сохраняет устанавливаемые файлы внутри скомпилированного скрипта.
В итоге в финальный имплант, помимо самого исполняемого кода, оказываются запакованы и дополнительные вредоносные файлы, которые затем устанавливаются прямиком из импланта. Эти файлы необходимы для закрепления и дальнейшего исполнения вредоносной активности. Они устанавливаются по следующим путям:
C:ProgramDataNUL..libssl-1_1.dll
C:ProgramDataNUL..vcruntime140.dll
C:ProgramDataNUL..libcrypto-1_1.dll
C:ProgramDataNUL..StartMenuExperienceHost.exe
C:ProgramDataAUX..ShellExt.dll
C:ProgramDataAUX..utshellext.dll
C:ProgramDataClassic.{BB64F8A7-BEE7-4E1A-AB8D-7D8273F7FDB6}nun.bat
C:ProgramDataClassic.{BB64F8A7-BEE7-4E1A-AB8D-7D8273F7FDB6}ShellExt.dll
C:ProgramDataClassic.{BB64F8A7-BEE7-4E1A-AB8D-7D8273F7FDB6}utshellext.dll
C:ProgramDataClassic.{BB06C0E4-D293-4f75-8A90-CB05B6477EEE}nun.bat
C:ProgramDataClassic.{BB06C0E4-D293-4f75-8A90-CB05B6477EEE}ShellExt.dll
C:ProgramDataClassic.{BB06C0E4-D293-4f75-8A90-CB05B6477EEE}utshellext.dll
C:ProgramDatainsta.bat
C:ProgramDataDistribution..ShellExt.dll
C:ProgramDataDistribution..utshellext.dll
C:ProgramDataOedistKun.bat
C:ProgramDataRedistOun.bat
C:ProgramDataUedistEun.bat
C:ProgramDataJedistQun.bat
Папкам с установленными файлами для закрепления выставляются атрибуты system, hidden и read-only. Дополнительно, используя утилиту icacls, имплант запрещает всем пользователям любых доменов удалять эти папки, изменять разрешения к ним, владеть ими, добавлять данные или подпапки, записывать обычные и расширенные атрибуты, удалять внутренние файлы, записывать данные и добавлять файлы.
Файлы копируются в каталоги с необычными именами не просто так. Например, имя каталога Classic.{BB64F8A7-BEE7-4E1A-AB8D-7D8273F7FDB6} делает его специальным для Windows Shell: проводник определяет в имени GUID и при открытии воспринимает его как ярлык — в данном случае на запуск Центра Уведомлений (Action Center), — не позволяя пользователю увидеть файлы внутри папки.
После установки всех необходимых импланту файлов происходит закрепление с помощью WMI: создаются фильтры, срабатывающие на часто встречающиеся события — достаточно часто, чтобы гарантировать активацию фильтра в нужный момент. Для каждого фильтра проверка соответствующего события производится с заданной частотой. При срабатывании фильтра с помощью класса __FilterToConsumerBinding обеспечивается выполнение необходимых команд.
Раз в 3 минуты запускается утилита netcat, замаскированная под StartMenuExperienceHost.exe. В качестве аргументов при ее запуске передаются -e cmd.exe и адрес C&C злоумышленников (sportjump[.]ru). Это позволяет атакующим исполнять любые команды на компьютере жертвы.
Раз в 5 и 10 минут выполняются файлы nun.bat, каждый из которых запускает следующий этап в цепочке атаки. Злоумышленники создали две копии файла для надежности, однако, если не происходит сбоев, запускают обе.
Раз в 15 минут следующий этап атаки запускается напрямую, через запуск команды start.
Все эти методы впоследствии повторно используются для более надежного закрепления файлом insta.bat, который запускается в конце исполнения A3X-импланта.
Помимо закрепления через WMI, скрипт напрямую запускает netcat, файлы nun.bat и команду start. После этого происходит еще несколько попыток закрепления — через ключи реестра Image File Execution Options и Debugger или MonitorProcess.
Интересной особенностью этого вредоносного ПО является загрузка и использование агента SIEM Wazuh для получения удаленного контроля, сбора телеметрии и ее отправки на C&C-сервер злоумышленников. Чтобы обеспечить возможность исполнения команд на компьютере жертвы, при установке агента выставляется опция remote_commands.
A3X-имплант первого этапа собирает следующую информацию: имя компьютера, имя пользователя, версия и архитектура ОС, название процессора, данные о GPU и установленном антивирусном ПО. Эта информация вместе с текущим временем отправляется в чат Telegram-бота злоумышленников. Также некоторые модификации вредоносного ПО могут отправлять скриншот рабочего стола, а некоторые — устанавливать расширение для браузера, позволяющее подменять криптокошельки.
Следующий этап атаки представляет собой два DLL-файла, использующие ту же технику, что и первый этап: легитимный AutoIt-интерпретатор и A3X-имплант, расположенный в подписи легитимной динамической библиотеки. Имплант этого этапа является финальной полезной нагрузкой в изученной цепочке заражения. Он внедряет в память отдельно созданного процесса explorer.exe майнер с открытым исходным кодом SilentCryptoMiner, внутри которого уже находится URL страницы, содержащей конфигурацию злоумышленников. В конфигурации указывается, какую криптовалюту майнить, на какой кошелек отправлять и т. д. В изученных вариантах конфигурации чаще всего встречаются анонимные криптовалюты, такие как Monero или Zephyr.
Помимо собственно генерации криптовалюты, SilentCryptoMiner умеет скрывать свою активность при наличии запущенных процессов из списка stealth-targets и останавливать процессы из списка kill-targets.
География атак
Большинство атак с использованием описанной цепочки заражения затронули российских пользователей (87,63%). Также в десятку стран с наибольшим числом пользователей, столкнувшихся с подобными атаками, вошли Беларусь, Индия, Узбекистан, Казахстан, Германия, Алжир, Чехия, Мозамбик и Турция.
TOP 10 стран, где пользователи столкнулись с изученной цепочкой заражения, июнь — август 2024 г. (скачать)
Заключение
Описанная атака хорошо иллюстрирует тот факт, что массовые кампании могут быть довольно сложными и давать широкие возможности атакующим. В результате многоступенчатой цепочки заражения злоумышленники множеством различных способов закрепляются в системе и получают к ней полный доступ. Хотя основная цель злоумышленников — извлечь прибыль путем скрытной добычи криптовалюты на устройствах жертв, некоторые модификации вредоносного ПО могут совершать дополнительные вредоносные действия, например подменять адреса криптовалютных кошельков в буфере обмена и делать скриншоты. При этом отдельный интерес представляет применение редких техник в этой атаке, таких как использование агента SIEM-системы, добавление вредоносной нагрузки в цифровую подпись легитимного файла, а также сокрытие содержимого папок с вредоносными файлами.
Стоит отметить, что сайты, видео и каналы в Telegram, созданные злоумышленниками, нацелены в первую очередь на пользователей, которые ищут бесплатные версии популярного ПО и читы к играм. Эта аудитория — легкая цель для атакующих, поскольку готова скачивать программы из неофициальных источников и отключать защитное ПО для их установки.
Наши продукты детектируют данное вредоносное ПО со следующими именами:
HEUR:Trojan-Dropper.OLE2.Agent.gen
HEUR:Trojan.BAT.Agent.gen
HEUR:Trojan.VBS.Agent.gen
Trojan.Script.AutoIt.ak
Trojan.BAT.Agent.cix
Trojan.BAT.Miner.id
HEUR:Trojan.Multi.Agent.gen
PDM:Trojan.Win32.Generic
Матрица MITRE ATT&CK
Tactic
Technique ID
Technique
Resource Development
T1608.006
Stage Capabilities: SEO Poisoning
T1608.001
Stage Capabilities: Upload Malware
Execution
T1204.001
User Execution: Malicious Link
T1204.002
User Execution: Malicious File
T1059.010
Command and Scripting Interpreter: AutoHotKey & AutoIT
T1059.003
Command and Scripting Interpreter: Windows Command Shell
T1059.005
Command and Scripting Interpreter: Visual Basic
Persistence
T1546.012
Event Triggered Execution: Image File Execution Options Injection
T1546.003
Event Triggered Execution: Windows Management Instrumentation Event Subscription
Privilege Escalation
T1053.005
Scheduled Task/Job: Scheduled Task
Defense Evasion
T1055
Process Injection
T1562.001
Impair Defenses: Disable or Modify Tools
T1497
Virtualization/Sandbox Evasion
T1027.009
Obfuscated Files or Information: Embedded Payloads
T1027.010
Obfuscated Files or Information: Command Obfuscation
T1036.008
Masquerading: Masquerade File Type
T1564.001
Hide Artifacts: Hidden Files and Directories
Discovery
T1518.001
Software Discovery: Security Software Discovery
T1033
System Owner/User Discovery
T1082
System Information Discovery
T1497
Virtualization/Sandbox Evasion
Collection
T1113
Screen Capture
Impact
T1496
Resource Hijacking
Exfiltration
T1041
Exfiltration Over C2 Channel
Индикаторы компрометации
Хэши
b5b323679524d52e4c058b1a3dd8dee7
4efa8ca01d7c566ff1b72f4ebf57cf2c
10f888a9aa8082651adeff4790675fd5
30dd26075a5ca7a4861e9214a99d0495
60efc41c30fd9ab438e88c6011df5c38
961fa114e9eb92016977940f7c97cdd9
1457e18b453d8cefc34047e1b0fbf76f
284418b6a9c70cc30ef14df3a87c24da
5788631016d8bc495f4f2614f9a7bbe0
a9bc00e5e8a17df95bd5b8c289a12b31
a9bd813679517c846dcf36454baa6170
a99f3f8736d7d3001aa5eb6202123948
a802ce130be6546b76d4b54f72d14645
ae9e83d1031462cb5e58b4525036670c
b25f9490f6d80f9de5a9c02cc344f9f9
cffc70e4fb7363024fcc3590755fa846
e9154a7613a8f8baf67ec3b696c9cb12
f213f94729b294c01a0df21800c4e395
2e68f4438ce59c868af01b535c98060d
839471243f9c4a294c42fabf636f7cad
4b0d76262dd82985d330b02190a880c0
1a5d955be79046a3288b869e44e87404
f8342fd3e32dcf9832dff3e923ef530b
20b6ac10f657963245940c9bcd25a346
33c7c22e33e134ec3ddfc6be8ee1f1ee
2e4146c1a93c0bfe0f4e9ea53b8da7ee
827eca9ec457f3c5180f602832f44955
e3b6142df6a7c73a99736082fbae2fa6
4bdcbc7ec1929d9b1ebcc4d01d605b05
0da6e1036ca5d8231ee94a4db8c48728
098872e9e39bd4cd0e4debd4b397b555
0305f8a9dee464f56023411e7b0924df
be8b6452aa874904f116f9b7cdfe343b
6c0416f719ceca15f9e9c4f210c64fb0
25b90fa3b21875157c6f33b7e1b6e8d7
14b7429205955056f1763553f82fe244
URL-адреса
excel-ms.github[.]io/Windows/MS-Excel.zip
utorrent-client.github[.]io
gta-5rp.github[.]io/Windows/GTArp.zip
mssg[.]me/eahcu
linktr[.]ee/excel_ms
linktr[.]ee/utorrent_client
nyaera[.]ru/wp-includes/uploads/art/utorrent.zip
nyaera[.]ru/wp-includes/uploads/My/MS-Excel.zip
github[.]com/lidiyakamalova89/www/raw/main/Ver.1.4.1.zip
raw.githubusercontent[.]com/lidiyakamalova89/www/main/Ver.1.4.1.zip
raw.githubusercontent[.]com/radominator7204/dsz/main/Install.zip
sportjump[.]ru
gamesjumpers[.]com
gamejump[.]site
alljump[.]ru
pastebin[.]com/raw/F87y7zJV
pastebin[.]com/raw/uU34Qunt
rentry[.]co/mi9fomgo/raw
Securelist