Banana RAT: как бразильские хакеры взламывают банки через поддельные счета-фактуры

С 17 по 22 апреля 2026 года специалисты TrendAI Vision One MDR зафиксировали и разобрали по частям одну из наиболее технически сложных банковских троянских программ, нацеленных исключительно на Бразилию. Трояну присвоено имя Banana RAT, группировке, стоящей за ним, — временный идентификатор SHADOW-WATER-063. Внутри самого кода операция именуется "Projeto Banana", а заголовок версии выглядит так: PROTECTED SCRIPT v4.0 – Projeto Banana (MSEDGE EDITION). TrendAI работает в тесном контакте с Federação Brasileira de Bancos (FEBRABAN), передавая накопленные данные об угрозе.
Banana RAT: как бразильские хакеры взламывают банки через поддельные счета-фактуры
Изображение носит иллюстративный характер

Заражение начинается с до боли обычного файла. Жертва получает через WhatsApp или фишинговую ссылку файл Consultar_NF-e.bat, замаскированный под электронную счёт-фактуру в бразильской системе NF-e (Nota Fiscal Eletrônica). Файл скачивается с домена convitemundial2026[.]com. Цель выбрана неслучайно: бухгалтеры и сотрудники компаний ежедневно работают с такими документами и открывают их почти не задумываясь.
После запуска BAT-файла в дело вступает стейджер — 490-байтовый PowerShell-сниппет (st.txt). Он скрывает консольное окно через user32.ShowWindow, создаёт папку C:\Users\Public\Documents\ и скачивает следующий этап с адреса [.]199[.]90[.]58/payload[.]php через Net.WebClient.DownloadFile. Существует и расширенный вариант — st.php, использующий Start-BitsTransfer с запасным вариантом через WebClient для надёжной работы через прокси и контент-фильтры.
Полезная нагрузка payload.php генерируется FastAPI-сервером, который постоянно держит в резерве от 100 до 200 готовых сборок. Четыре параллельных потока прогревают этот пул при каждом запуске сервера. Каждая сборка уникальна побайтово и используется ровно один раз: варьируются имена переменных и функций, фрагментируются имена , вставляется мусорный код, меняются XOR-ключи и AES-зашифрованные блоки. При таком подходе сигнатурное обнаружение по хешу файла практически бессмысленно в масштабе всей кампании. Финальная полезная нагрузка сбрасывается как msedge.txt в C:\Users\Public\Documents\, расшифровывается в памяти через AES с встроенным ключом и IV, а затем выполняется через ScriptBlock::Create. На диск расшифрованный банкер не попадает никогда. Для маскировки используется путь C:\Users\<имя>\AppData\Roaming\Microsoft\Diagnosis\ETW\msedgeupdate[.]txt — имитация хранилища диагностических данных Microsoft.
Закрепление в системе реализовано через PS_ScheduledTask.ExecMethod(RegisterByUser): PowerShell запускается с параметрами -WindowStyle Hidden и -ExecutionPolicy Bypass, задание скрыто от стандартного просмотра в Планировщике задач и срабатывает каждую минуту на протяжении 9 999 дней. Одиночный экземпляр процесса обеспечивается через PID-файл.
Связь с сервером управления идёт на домен c[.]windowsk-cdn[.]com через порт 443 с шифрованием TLS. Домен — тайпсквот под легитимную инфраструктуру Microsoft CDN. Резервный IP — 162.141.111[.]227. Протокол — собственный бинарный с AES-256-CBC. Аутентификация строится на HMAC-SHA256-токене, производном от GUID машины и MAC-адреса. При недоступности основного домена делается до трёх попыток, после чего трафик уходит на хардкодированные резервные адреса.
Функциональность Banana RAT охватывает полный спектр инструментов для банковского мошенничества в реальном времени. Троян непрерывно транслирует изображение рабочего стола оператору через BitBlt с учётом DPI, перехватывает ввод с клавиатуры через кольцевой буфер на 2 000 записей, управляет мышью и клавиатурой жертвы через Win32 API (SetCursorPos/mouse_event/keybd_event), блокирует ввод жертвы через BlockInput(true), пока оператор работает в системе, и читает или подменяет содержимое буфера обмена. Отдельного внимания заслуживает модуль перехвата Pix QR-кодов: библиотека ZXing (zxing.dll) сканирует экран, обнаруживает QR-коды платёжной системы Pix и позволяет оператору подменить реквизиты получателя. Для этого предусмотрены специальные опкоды C&C: 0x64 (AutoQRToggle), 0x65 (QRCodeDetected), 0x66 (ShowQROverlay), 0x67 (HideQROverlay).
Троян выводит на экран жертвы полноэкранные оверлеи, имитирующие интерфейсы Itaú, Bradesco, Santander, Caixa и Banco do Brasil. Текст на экране гласит: "Atualização de Segurança obrigatória – NÃO DESLIGUE O COMPUTADOR" («Обязательное обновление безопасности — НЕ ВЫКЛЮЧАЙТЕ КОМПЬЮТЕР»). Оверлей использует Environment.UserName и Environment.MachineName, чтобы выглядеть персонализированным, и показывает четыре поддельных этапа: проверка ОС, загрузка модуля безопасности, проверка цифровых сертификатов, применение обновления. Отдельный DLL-модуль для Pix создаёт убедительный банковский интерфейс с кастомизируемым QR-кодом и просит пользователя «подтвердить личность».
Компиляция вспомогательных модулей происходит прямо на машине жертвы: PowerShell вызывает csc.exe из Framework и динамически собирает временные C-файлы (.cs) в DLL внутри папки Temp пользователя. Артефакты компиляции имеют расширения.0.cs,.cmdline,.tmp,.dll,.out и.err.
Атрибуция выполнена с высокой степенью уверенности. Три опорных столпа: весь список целей состоит исключительно из бразильских учреждений (16 банков и 5 криптобирж), кодовая база написана на бразильском португальском без диакритических знаков (например, "seguranca" вместо "segurança"), а внутренний криптографический мастер-ключ iuhbdaubdvauygd5562$3@$r используется повторно между кампаниями — как HMAC-ключ для аутентификации установочного токена и как исходный материал для SHA-256-деривации AES-256-ключа, шифрующего состояние клиента на диске. Среди целей — Bradesco, Itaú, Santander Brasil, Safra, Caixa, Banco do Brasil, Banrisul, Daycoval, Sicoob, Sicredi и ещё ряд региональных учреждений. Переменная BrowserOnlyDomains = @('CAIXA', 'Santander', 'Banco do Brasil') позволяет тонко настраивать поведение под каждый банк.
Banana RAT разделяет ряд черт с семейством Tetrade — Grandoreiro, Mekotio, Casbaneiro, Guildma, Javali, CHAVECLOAK: банковские оверлеи, техники перехвата Pix QR, социально-инженерные скрипты практически дословно совпадают с задокументированными у Grandoreiro и Mekotio, а профиль жертв совпадает с FLUXROOT (Google TAG) и TA2725 (Proofpoint). Но есть и принципиальные различия: Grandoreiro написан на Delphi как монолитный бинарник, Banana RAT — чисто PowerShell-клиент с Python/FastAPI-сервером; полиморфизм на уровне каждой жертвы у Grandoreiro не задокументирован, здесь же — 100–200 побайтово уникальных сборок; девять собственных слоёв обфускации написаны на Python с нуля. Пересечений с опубликованными наборами индикаторов Grandoreiro на момент расследования обнаружено не было. Аналитики TrendAI допускают, что Banana RAT находится рядом с Tetrade, а не внутри него — возможно, это ответвление, параллельный кластер или самостоятельный оператор, работающий по региональным лекалам. Признаки модели MaaS (Malware-as-a-Service) присутствуют.
Инфраструктура специально разделена: домен доставки (convitemundial2026[.]com) и C&C (c[.]windowsk-cdn[.]com) работают независимо. Если уронить хост доставки, уже заражённые машины продолжат общаться с C&C. Если заблокировать C&C — конвейер доставки для следующей кампании останется нетронутым. Единственная точка пересечения — HTTP GET-запрос из st.txt к payload.php. Именно её блокировка на сетевом периметре остановит новые заражения; лечение уже заражённых машин требует отдельной работы с C&C-каналом.
Индикаторы компрометации:
    []st.txt — SHA256: ecdc8fade561a75d68235859ad8b1fe131db2c458b4894268e38e90ecab1c47f (Backdoor.PS1.BANANARAT.A)
    []st.php — SHA256: 38dfeb772afbd01c04eddda120d283acfb1147a6dc3d54ac62fe23ad06e39d8f (Trojan.PS1.BANANARAT.A)
    []payload.php — SHA256: 4912b1134e69ade7266e8508eec33ccb2d80ad693f1dbc4f1f4344c6dfcf2ff1 (Trojan.PS1.BANANARAT.A)
    []msedge.txt — SHA256: d7545b6dacebdae27effb3c778c5e349027ec789c76ae4f777bd9ba56a70cdaa (Backdoor.PS1.BANANARAT.A)
    []
[.]199[.]90[.]58:80/ и /payload[.]php, /st[.]txt — вектор доставки
[]c[.]windowsk-cdn[.]com — сервер управления
[]162.141.111[.]227 — резервный IP C&C
[]convitemundial2026[.]com — домен кампании

Для охоты через TrendAI Vision One можно использовать следующие поисковые запросы: обнаружение по malName:BANANARAT AND eventName:MALWARE_DETECTION AND LogType: detection, запись файла по пути eventSubId:101 and objectFilePath:\\Users\\Public\\Documents\\msedge.txt, а также попадание в маскировочный путь ETW: eventSubId:101 and objectFilePath:\\ProgramData\\Microsoft\\Diagnosis\\ETW\\ AND objectName:.txt.


Новое на сайте

Ссылка