Исследовательская группа Zscaler ThreatLabz обнаружила новое вредоносное ПО, получившее название Marco Stealer. Этот похититель данных (information stealer) впервые был замечен в июне 2025 года. Основными целями зловреда стали данные браузеров, информация из криптовалютных кошельков, файлы из популярных облачных сервисов, таких как Dropbox и Google Drive, а также другие конфиденциальные документы на компьютере жертвы.
Описание
Marco Stealer использует несколько техник для противодействия анализу, включая шифрование строк и принудительное завершение работы инструментов безопасности. Для связи с командным сервером (C2, command-and-control) вредоносная программа использует HTTP-протокол, а все передаваемые сообщения шифруются с помощью алгоритма AES-256.
Технический портрет угрозы
Атака часто начинается с компонента-загрузчика (downloader). Этот модуль расшифровывает строки с помощью AES-128 в режиме ECB, чтобы сгенерировать команду PowerShell. Затем он выполняет её для запуска следующей стадии атаки. Например, команда может загружать исполняемый файл похитителя данных во временную директорию и немедленно запускать его.
После проникновения в систему Marco Stealer активирует статический мьютекс (mutex) с именем "Global\ItsMeRavenOnYourMachineed". Это гарантирует, что в инфицированной системе одновременно будет работать только одна копия вредоносной программы.
Обход средств защиты и анализ
Для усложнения статического анализа зловред широко применяет шифрование строк. Эти строки расшифровываются только во время выполнения, используя алгоритм на основе операций сложения, циклического сдвига и исключающего "ИЛИ" (ARX), схожий с ChaCha20.
Кроме того, Marco Stealer активно противодействует динамическому анализу. С помощью Windows API вредоносная программа перечисляет запущенные процессы и извлекает метаданные из их исполняемых файлов. Если в этих метаданных обнаруживаются названия распространённых инструментов отладки и анализа, таких как x64dbg, Wireshark, Process Hacker или OllyDbg, зловред немедленно завершает соответствующие процессы.
Перед началом сбора данных похититель проверяет подключение к интернету, пытаясь обратиться к "https://www.google.com". Если проверка не удаётся, вредоносная программа запускает процедуру самоудаления. В случае успеха Marco Stealer определяет географическое положение жертвы, запрашивая внешний IP-адрес и код страны у сервисов вроде "ipinfo.io".
Систематический сбор информации
После подтверждения подключения к сети начинается этап сбора данных для построения профиля атакованной машины. Зловред запрашивает Machine GUID из реестра Windows, создавая уникальный идентификатор оборудования. Все собранные данные шифруются с помощью AES перед отправкой на C2-сервер. Первоначальная передача включает в себя клиентский ID, аппаратный ID и IP-адрес.
Marco Stealer также ищет установленное антивирусное программное обеспечение. Для этого он сканирует реестр Windows Security Center и выполняет WMI-запрос. Параллельно происходит сбор списка установленного программного обеспечения через определённые ключи реестра.
Кража данных из браузеров и криптокошельков
Одной из ключевых функций Marco Stealer является хищение данных браузеров. Для этого используются два внедрённых файла: "chromeDecryptor.dll" и "needme.exe". Зловред создаёт уникальную временную директорию, извлекает эти файлы и использует их для двух различных методов атаки.
Первый метод нацелен на Chromium-браузеры. Marco Stealer завершает их процессы, создаёт "безголовый" экземпляр браузера и внедряет в него "chromeDecryptor.dll". Основная задача этой библиотеки - расшифровать ключ, хранящийся в файле "Local State" браузера Chrome, который затем используется для доступа к данным в SQLite-базах.
Второй метод использует именованные каналы (named pipes). Marco Stealer создаёт канал "\\.\pipe\FirefoxBrowserExtractor" и ожидает подключения от исполняемого файла "needMe.exe". Этот файл отвечает за извлечение данных из браузеров, таких как Basilisk, Firefox, Pale Moon и других, также обращаясь к их SQLite-базам.
Отдельное внимание уделяется криптовалютным кошелькам. Похититель сканирует стандартные пути в пользовательских профилях браузеров на наличие директорий расширений, связанных с кошельками. Обнаружив их, вредоносная программа извлекает, шифрует и отправляет данные на сервер злоумышленников.
Охота за файлами и финальная эксфильтрация
Marco Stealer не ограничивается браузерами. Он также собирает содержимое буфера обмена, способен делать скриншоты и рекурсивно сканирует множество локальных и облачных директорий в поисках конфиденциальных файлов. Целями становятся папки "Рабочий стол", "Документы", "Загрузки", а также каталоги OneDrive, Dropbox и Google Drive. Зловред ищет файлы по ключевым словам и расширениям, указывающим на наличие важной информации.
Вся собранная информация перед отправкой шифруется с использованием AES-256 в режиме CBC. Ключ шифрования генерируется на основе SHA-256 хеша от жёстко заданного значения, что делает его статическим для каждой версии вредоносной программы. Зашифрованные данные, включая идентификаторы клиента и оборудования, отправляются на заранее определённый C2-эндпоинт через HTTP POST-запрос.
Заключение
Marco Stealer представляет собой новый, технически развитый похититель данных, нацеленный на широкий спектр информации: от учётных данных в браузерах до криптовалютных активов и личных документов. Его использование техник противодействия анализу и шифрование трафика усложняют обнаружение и расследование. Несмотря на недавние успехи правоохранительных органов в борьбе с такими угрозами, как Rhadamanthys и Lumma, рынок вредоносных похитителей данных остаётся активным. Появление Marco Stealer подчёркивает сохраняющуюся значительную угрозу, которую подобные инструменты представляют как для частных пользователей, так и для корпоративных сред.
Индикаторы компрометации
URLs
- http://107.189.25.189:49259/receive
- http://217.156.50.228:8185/LoqnOOuuIsTIYfkrdsfL/eUelHAyY.exe
- http://45.74.19.20:49259/receive
MD5
- 028604d6aa556de2ae4ca6b31e600677
- 1042affb0ca6758ca0043112cdc7eda2
- 33dd8a5e234d911391cc8c301dc4a606
- 34deb6594098545d7ffb98844f0790bf
- 3a3e8f6bc70748a39ffc047b3c86a665
- 49ab8d4c55b7f64eaba699ef0dc9054b
- 5eb91d1ad26c7eced894e34710aaa28e
- 661a5465d9a322276ebc414f39891a8b
- a98fa5fba55e470750ae74186c15fa73
