Содержание:
- Введение:
- Целевые сектора:
- Первые результаты кампании:
- Анализ фишинговых писем:
- Инфекционная цепь:
- Технический анализ:
- Этап 1: Анализ вредоносного ISO-файла.
- Этап 2: Анализ исполняемого файла.
- Анализ 1st полезная нагрузка
- Анализ 2nd Полезная нагрузка (Похититель Фантомов)
- Заключение: Зачем нужна операция MoneyMount-ISO?
- Seqrite Покрытие:
- МНК
- MITRE ATT & CK
Введение:
At Seqrite В ходе постоянного мониторинга угроз в лабораториях мы непрерывно отслеживаем глобальную активность киберугроз. Seqrite Исследовательская группа Labs выявила активную фишинговую кампанию, исходящую из России. В этой кампании используется поддельное подтверждение платежа для распространения вредоносного ПО Phantom, похищающего информацию, через многоступенчатую цепочку вложений.
Атака начинается с электронного письма, рассылаемого с использованием методов социальной инженерии и замаскированного под легитимную финансовую корреспонденцию, якобы подтверждающую платежную транзакцию. Письмо содержит вредоносный ZIP-архив, открытие которого запускает выполнение вредоносной программы.
Целевые сектора:
- Основные целевые сегменты: Финансы / Бухгалтерский учет / Казначейство / Платежи в России.
- Второстепенные целевые группы: отделы закупок, юридический отдел, отдел кадров/расчет заработной платы, помощники руководителей, представители малого и среднего бизнеса (русскоязычные).
Риски: кража учетных данных, мошенничество с выставлением счетов/платежами, несанкционированные переводы, горизонтальное перемещение в ИТ-системы.
Первые результаты кампании:
Мы проанализировали электронное письмо и обнаружили, что оно представляет собой фишинговое сообщение на русском языке под названием «Подтверждение банковского перевода». Оно было отправлено с адреса achepeleva@iskra-svarka[.]ru от имени Демьяненко Антон Владимирович (Демьяненко Антон Владимирович) по адресу agrariy@agroterminal[.]c . В сообщении утверждается, что содержится подтверждение недавнего банковского перевода, и содержится призыв к получателю просмотреть прикрепленный документ для получения подробной информации.

В электронном письме, судя по всему, утверждается, что оно отправлено от имени финансовой или торговой компании («Валютный брокер TorFX») и якобы содержит подтверждение банковского перевода.
Язык и тон указывают на то, что текст написан в формальном русском деловом стиле и призван выглядеть солидно в глазах сотрудников финансового или бухгалтерского отдела.
В электронном письме содержится ZIP-архив (~1 МБ) с именем «Подтверждение банка….zip», который содержит вредоносный ISO-файл. При открытии ISO-файл монтируется как виртуальный CD-привод и отображает исполняемый файл (.exe), замаскированный под легитимное подтверждение платежа. После запуска файл заражает систему вредоносной программой Phantom Stealer.
Содержание и структура электронного письма имитируют законную деловую переписку, цель которой — обманом заставить сотрудников финансового или бухгалтерского отдела открыть вложение под предлогом проверки банковской транзакции. Тон письма формальный, профессиональный и намеренно общий (обращаясь как «Уважаемый господин»), что указывает на то, что сообщение было разослано нескольким получателям или в почтовые ящики отделов, а не конкретному человеку.
Домен отправителя («iskra-svarka.ru») и домен, указанный «от имени» («agroterminal.c»), не имеют отношения к предполагаемой организации «TorFX Currency Broker», упомянутой в нижнем колонтитуле электронного письма — явный признак подделки и выдачи себя за другое лицо, призванный придать письму правдоподобие.
Инфекционная цепь:

Технический анализ:
Мы проанализировали письмо и скачали Zip-файл с названием «Подтверждение банковского перевода.zip».
Этап 1 – Анализ вредоносного ISO-файла.
Из ZIP-архива мы извлекли ISO-файл под названием «Подтверждение банковского перевода.iso», указывающий на российское происхождение. Запуск ISO-файла привел к его автоматическому монтированию, в результате чего отобразился смонтированный диск, содержащий исполняемый файл, показанный на скриншоте.

Этап 2: Анализ исполняемого файла:
После анализа исполняемого файла мы обнаружили, что он загружает в память дополнительную полезную нагрузку, которая, как выяснилось, является программой-похитителем Phantom.

В ходе анализа мы установили, что src представляет собой объект System.Drawing.Bitmap . Это обычно указывает на то, что изображение может содержать встроенный код или данные (стеганография) или что оно используется в качестве источника для восстановления исполняемого кода.

Анализ 1st Грузоподъемность:
В процессе извлечения мы идентифицировали первую DLL-библиотеку полезной нагрузки под названием CreativeAI.dll . Дальнейший анализ показал, что эта DLL содержит зашифрованную полезную нагрузку, и после расшифровки она внедряет фиктивное вредоносное ПО Stealer.

Анализ конечной полезной нагрузки (самолет-похититель «Фантом»):
В результате проведенного анализа мы обнаружили, что окончательная полезная нагрузка представляет собой программу-похититель фантомных данных. Ниже приведен фрагмент кода этой программы.

Антианализ
Класс AntiAnalysis — это защитный механизм, который выполняет последовательность проверок среды для обнаружения виртуализированных, изолированных или контролируемых аналитиком машин и — если какая-либо проверка срабатывает — регистрирует обнаруженное нарушение и вызывает SelfDestruct.Melt() для прерывания/удаления самого себя. Он ищет подозрительные имена пользователей и машин, перечисляет графические процессоры через WMI по именам адаптеров виртуальных машин, перебирает запущенные процессы и службы Windows на наличие известных инструментов анализа, сопоставляет локальные IP-адреса с черным списком, считывает системный MachineGuid из реестра, проверяет наличие распространенных DLL-библиотек для песочницы.


Извлечение средств из криптокошелька
Класс BrowserWallets — это простой оркестратор, который находит и извлекает данные из расширений для криптовалютных кошельков, установленных в браузерах на основе Chromium. Он определяет большие словари, сопоставляющие имена кошельков с их идентификаторами расширений Chrome/Edge, формирует соответствующие пути к папкам локальных настроек расширений в профиле пользователя для Chrome и Edge, а затем делегирует фактическую работу по извлечению данных методу BrowserWalletExtensionsHelper.GetWallets. Метод RunAllWalletExtraction() создает выходную папку и вызывает процедуры извлечения данных как для Chrome, так и для Edge, что позволяет массово собирать сохраненные данные кошельков из десятков известных крипторасширений.

Он также выполняет сбор данных из настольных кошельков, которые собирают криптовалютные кошельки с хоста (не из браузера): он определяет известные места установки (локальные и перемещаемые пути AppData) и ключи реестра для многих приложений-кошельков, затем GetWallets() создает выходную папку (InitWorkDir()/DesktopWallets/Grabber) и пытается скопировать данные кошелька, вызывая CopyWalletFromDirectoryTo для каждого известного каталога и CopyWalletFromRegistryTo для каждой известной записи реестра.

Данные Discord
Токены аутентификации Discord из файлов LevelDB браузера Chromium и каталогов нативного клиента Discord извлекаются путем сканирования файлов *.ldb на наличие шаблонов токенов, включая классические (BasicRegex), многофакторные (MFA) (NewRegex) и зашифрованные токены Chrome/Discord.
Все собранные токены дедуплицируются, а затем проверяются путем отправки аутентифицированного запроса к API Discord (/users/@me) для получения связанной с пользователем информации, такой как имя пользователя, электронная почта, номер телефона, ID и статус Nitro.

FileGrabber: модуль для целевого сбора и извлечения файлов.

Извлечение паролей браузера, файлов cookie и данных кредитных карт из браузера Chromium.
ChromiumRecovery — это модуль для извлечения данных, который сканирует все браузеры на основе Chromium, перечисленные в Paths.ChromiumBrowsers, перечисляет их профили пользователей и использует дешифратор BrowserCrypto для восстановления сохраненных учетных данных, cookie и данных кредитных карт из баз данных SQLite браузера (Login Data, Network/Cookies и Web Data). Он считывает каждую базу данных как необработанные байты, анализирует их таблицы с помощью SqlLite3Parser, расшифровывает защищенные поля, такие как пароли, значения cookie и номера карт, и создает структурированные объекты, представляющие восстановленные данные каждого профиля, одновременно обновляя счетчики извлечения. Класс также может экспортировать всю собранную информацию в текстовые и JSON-файлы с метками времени, генерируя полные отчеты о восстановленных паролях, cookie и данных кредитных карт для всех обнаруженных браузеров Chromium.

ClipLogger — утилита для непрерывного мониторинга и ведения журналов буфера обмена.
ClipLogger запускает фоновый поток STA, который каждую секунду опрашивает буфер обмена Windows (используя собственные API Win32: OpenClipboard, GetClipboardData, GlobalLock и т. д.), захватывает новое содержимое буфера обмена в виде обычного текста, удаляет дубликаты из последней захваченной записи, добавляет записи с метками времени в буфер в оперативной памяти, подсчитывает слова и автоматически сбрасывает буфер в файл с метками времени в рабочем каталоге программы, как только накопленное количество слов достигает 100 (или когда программа останавливается). Он безопасно обрабатывает ошибки доступа к буферу обмена, игнорирует нетекстовые форматы и очищает/сбрасывает состояние после каждого успешного сохранения.

Кейлоггер — низкоуровневый компонент для глобального захвата и дампа нажатий клавиш.
Кейлоггер устанавливает глобальный низкоуровневый перехватчик клавиатуры (SetWindowsHookEx WH_KEYBOARD_LL) в фоновом потоке, получает события WM_KEYDOWN/WM_SYSKEYDOWN, преобразует коды виртуальных клавиш в читаемые строки (обрабатывая буквы, цифры, функциональные клавиши, клавиши навигации и распространенные символы OEM), накапливает захваченные токены в потокобезопасном списке, подсчитывая разделители слов, и периодически записывает в рабочий каталог программы текстовый лог с меткой времени (имя машины + захваченные нажатия клавиш).

Собирает журналы событий и другую информацию.
Программа создает путь к выходному ZIP-архиву (опционально можно переопределить значение или использовать sourceDir + “.zip”), формирует многострочный комментарий, содержащий метаданные инструмента/версии и системы (публичный IP-адрес, дата, имя пользователя, имя компьютера, язык, статус антивируса), а также переключатели, показывающие, какие модули захвата были запущены, затем вызывает ZipManager.CreateZip(sourceDir, text, comment) для создания архива, удаляет исходный sourceDir с помощью Filemanager.RecursiveDelete, записывает в лог созданный путь к ZIP-архиву и, наконец, возвращает путь к ZIP-файлу.

Извлечение данных
- Модуль Telegram
Модуль управления и контроля (C2) Telegram, являющийся частью вредоносного ПО, содержит асинхронные процедуры, которые связываются с конечной точкой API бота Telegram, используя контролируемый злоумышленником токен бота, хранящийся в зашифрованном виде. Функции SendMessageAsync, SendMessageInfoAsync и SendReportAsync представляют собой сгенерированные компилятором асинхронные обертки, которые в конечном итоге отправляют текстовые сообщения, информацию о системе жертвы или отчеты/файлы об украденных данных боту Telegram злоумышленника.
- Модуль Discord
Класс UploadToDiscord — это модуль вредоносного ПО, предназначенный для пересылки собранных данных на веб-хук Discord, контролируемый злоумышленником. Он предоставляет асинхронный метод UploadFilesAsync, который запускает автоматически сгенерированный конечный автомат (из преобразования компилятора async/await), отвечающий за загрузку украденных файлов в Discord. Класс получает расшифрованный URL-адрес веб-хука непосредственно из Config.DiscordWebhook, то есть он использует ту же конечную точку Discord, которая была обнаружена ранее для отправки логов или перехваченных данных.
C2C: hxxps://discordapp.com/api/webhooks/143138186644…EPOWJm74GOZpqJMIKIKTAAWsSKMiUIaLaShpn_VTGWZPjJNYj6_ioSs-BQNZt1WK

- модуль FTP
Класс UploadToFtp предоставляет асинхронную функциональность для загрузки файлов на FTP-сервер — UploadAllAsync для отправки всех настроенных файлов и SendMessageAsync для загрузки одного локального файла — путем создания сгенерированных компилятором асинхронных конечных автоматов (фактическая логика загрузки находится в этих сгенерированных структурах). Оба метода принимают хост, имя пользователя, пароль и необязательные флаги для SSL и пассивного режима, поэтому модуль может быть настроен во время выполнения с различными учетными данными FTP.

Заключение: Зачем нужна операция MoneyMount-ISO?
Операция MoneyMount-ISO демонстрирует кластер угроз из России, движимый финансовыми мотивами, использующий исполняемые файлы, смонтированные на ISO-образе, для распространения вредоносной программы Phantom Stealer через поэтапную цепочку полезной нагрузки. Использование в качестве приманки подтверждения платежа и поддельных доменов российских компаний указывает на целенаправленную кражу учетных данных против лиц, связанных с финансовой сферой.
Данная операция отражает растущую изощренность злоумышленников, занимающихся кражей товаров, и стратегический сдвиг в сторону первоначального доступа на основе стандартов ISO для обхода периметрового контроля. Непрерывная фильтрация контейнеризированных вложений, мониторинг поведения памяти и усиление защиты почтовых процессов, связанных с финансовым сектором, остаются важными мерами по смягчению последствий.
Seqrite Покрытие:
- Trojan_Phantom_Y10018
МНК:
| 27bc3c4eed4e70ff5a438815b1694f83150c36d351ae1095c2811c962591e1bf | Эл. адрес |
| 4b16604768565571f692d3fa84bda41ad8e244f95fbe6ab37b62291c5f9b3599 | Подтверждение банковского перевода.zip |
| 60994115258335b1e380002c7efcbb47682f644cb6a41585a1737b136e7544f9 | Подтверждение банковского перевода.iso |
| 78826700c53185405a0a3897848ca8474920804a01172f987a18bd3ef9a4fc77 | HvNC.exe |
MITRE ATT&CK:
| Этап | Техника | Идентификатор техники |
| Первоначальный доступ | Фишинг: Вложение | T1566.001 |
| Пользовательское выполнение: вредоносный файл | T1204.002 | |
| Социальная инженерия на ходу | T1654 | |
| Типы | Выполнение нативного API / Выполнение бинарных файлов | T1106 |
| Выполнение файла, смонтированного с ISO-образа. | T1204.002 | |
| Уклонение от защиты | Зашифрованная/обфусцированная полезная нагрузка | T1027 |
| Стеганография / Полезная нагрузка в изображении | T1027.003 | |
| Уклонение от виртуализации/песочницы | T1497 | |
| Маскарад | T1036 | |
| Самоудаление | T1070.004 | |
| Загрузка полезной нагрузки | Инъекция DLL | T1055.001 |
| Отражательная загрузка / Выполнение в оперативной памяти | T1620 | |
| Доступ к учетным данным | Доступ к учетным данным из веб-браузеров | T1555.003 |
| Дискавери | Обнаружение системной информации | T1082 |
| Обнаружение процесса | T1057 | |
| Обнаружение программного обеспечения безопасности | T1518.001 | |
| | Keylogging | T1056.001 |
| Коллекция буфера обмена | T1115 | |
| Коллекция файлов | T1039 | |
| Сбор данных браузера | T1119 | |
| Кража токенов приложений (Discord) | T1528 | |
| Кража криптовалютного кошелька | T1555 | |
| эксфильтрации | Эксфильтрация через веб-сервисы (Telegram) | T1567.002 |
| Эксфильтрация данных в облако/вебхук (Discord) | T1530 | |
| Эксфильтрация данных через незашифрованные/FTP-каналы | T1048 | |
| Данные хранятся в архиве (ZIP-архив). | T1560.001 |
Авторы:
Диксит Панчал
Соумен Бирма
Картик Дживани



