Финансовый сектор вновь оказался под прицелом злоумышленников. В конце апреля 2026 года подразделение eSentire Threat Response Unit (TRU) перехватило попытку доставки обновлённой версии вредоносной программы-стилера Amatera. Это не совсем новый инструмент, а ребрендинг известного стилера ACR (AcridRain), который с 2018 года существовал как услуга "вредоносное ПО как услуга" (MaaS). Исходный код продали в 2024 году, что сделало угрозу доступной для множества киберпреступных групп. Сейчас атаки нацелены на финансовые организации, а сам стилер существенно эволюционировал.
Описание
Атакующие используют многовекторную цепочку заражения, которая начинается с приёма ClickFix - социальной инженерии, заставляющей жертву скопировать и выполнить вредоносную команду. Затем следуют несколько стадий PowerShell, которые загружают 32‑битный шелл-код в память. Этот шелл-код расшифровывает и распаковывает основную полезную нагрузку Amatera прямо в контексте PowerShell. Таким образом, файлы на диск не записываются, что затрудняет обнаружение традиционными антивирусами.
Исследователи eSentire в отчёте подчеркнули ключевые изменения в Amatera по сравнению с версией, описанной в ноябре 2025 года. Самое заметное - система шифрования трафика. Раньше использовался алгоритм AES-256-CBC со жёстко заданным ключом, который можно было извлечь статическим анализом. Теперь обмен данными с командным центром (C2) построен на протоколе ECDH (эллиптическая кривая NIST P-256) с последующим шифрованием сообщений алгоритмом ChaCha20-Poly1305. Это значит, что без захвата закрытого ключа или общего секрета из оперативной памяти перехватить и расшифровать трафик невозможно.
Кроме того, разработчики усилили защиту от анализа. Все строки в коде шифруются алгоритмом XTEA, а указатели на расшифрованные строки кешируются в глобальных переменных. Для вызова системных функций используется техника RecycledGate, объединяющая методы FreshyCalls и Hell's Gate. Она позволяет обходить перехватчики (hooks) в ntdll, которые устанавливают средства защиты конечных точек (EDR). Номера системных вызовов (SSN) хранятся в закодированном виде и декодируются непосредственно перед выполнением 64‑битного системного вызова через WoW64Transition. Таким образом, статический анализ затрудняется, а динамические проверки не могут найти готовые сигнатуры.
В арсенал средств антиотладки и уклонения добавились несколько новых проверок. Вредонос проверяет, установлены ли драйверы "Лаборатории Касперского" (klif.sys, kldisk.sys и другие). Если все четыре файла найдены, программа завершает работу. Интересно, что из-за ошибки в коде проверка идёт в каталоге C:\Windows\SysWOW64\drivers, куда Касперский свои драйверы не устанавливает - они находятся в System32. Однако этот баг можно использовать как защиту: создав там файлы-пустышки, администраторы могут заблокировать работу стилера. Дополнительно проверяется активная раскладка клавиатуры: если украинская (код 0x22), вредонос тоже отключается. Есть эвристики на количество установленных программ (меньше пяти - подозрение на эмулятор) и количество запущенных процессов (меньше шести - тоже подозрительно). Проверяется список процессов песочниц (например, vboxservice, qemu-ga.exe). Каждая из этих проверок увеличивает некий счётчик, и при достижении порога в 45 программа аварийно завершается.
С точки зрения функциональности кражи данных Amatera стал значительно опаснее. Количество поддерживаемых браузеров выросло с 37 до 65. Среди новинок - AI-браузер Perplexity Comet, приватные браузеры (GhostBrowser, Blisk), а также популярные в Азии форки Chromium вроде Naver Whale и QQ Browser. Расширения для браузеров, извлекающие криптокошелёчные данные, расширились со 132 до 165. Десктопные криптокошельки - цель номер один для финансовых преступников - теперь охватываются в три раза шире: 137 приложений вместо прежних 41. В список вошли кошельки для приватных монет, компаньоны аппаратных кошельков (Trezor Suite, Ledger Live), а также форки Electrum и экзотические альткоины.
Кража данных из мессенджеров тоже расширилась. Amatera теперь извлекает информацию из Discord, а для Signal - не только файл config.json и базы SQLite, но и папку attachments.noindex, то есть все отправленные и полученные вложения. Файловый граббер теперь прочёсывает папку "Загрузки" жертвы, ища по маскам seed-фразы, закрытые ключи, пароли, файлы с расширениями .pem, .key, .kdbx, .wallet и множество других. Количество шаблонов приближается к 80.
Настройки вредоноса хранятся на сервере C2 и загружаются только после установления зашифрованного сеанса. Для получения конфигурации нужен правильный GUID, вшитый в полезную нагрузку. В ходе исследования специалисты eSentire смогли расшифровать часть коммуникаций благодаря тому, что захватили закрытый ключ клиента. Конфигурация оказалась упакована в Base64 и дополнительно закодирована XOR с ключом 852149723.
Amatera - зрелая и постоянно развивающаяся угроза. Использование ECDH и ChaCha20-Poly1305 делает анализ сетевого трафика бесполезным без доступа к памяти заражённой машины. Техники RecycledGate обходят многие современные EDR. А расширение целей кражи - особенно криптокошельков и мессенджеров - делает эту программу крайне опасной для финансового сектора и рядовых пользователей, хранящих цифровые активы. Защита должна строиться на многоуровневом подходе: мониторинг аномалий в PowerShell и процессах, контроль запуска неподписанного кода, своевременное обновление сигнатур поведенческого анализа. Особенно стоит обратить внимание на обнаружение попыток обращения к файлам-пустышкам Касперского в SysWOW64 - это может стать простым индикатором компрометации. В целом же эта находка подтверждает: старые угрозы не исчезают, а лишь приобретают новые, более изощрённые формы.
Индикаторы компрометации
IPv4
- 77.91.97.244
Domains
- compactedtightness.cfd
- oakenfjrod.ru
URLs
- https://download.version-516.com/other
SHA256
- 534460224e1140ca7f512daea7258a9fce40dc0daef6994d79d08bdf4ce3e4b8
- e913fa5b2dd0a7fc3dbaf0a6f882b3ead9a58511bd945b6e5c478cbd2b900508
- ec1206989449d30746b5ceb2b297cda9f3f09636a0e122ecafb40b1dc2e86772
YARA
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | rule Amatera_Shellcode_Loader { meta: author = "YungBinary" description = "Amatera Stealer shellcode loader" strings: $peb_from_teb = { 64 A1 18 00 00 00 8B 40 30 } $peb_ldr_inload = { 8B 48 0C 83 C1 0C } $os_pre_win81_gate = { 64 8B 0D 18 00 00 00 8B 49 30 8B 91 A4 00 00 00 C1 E2 08 66 0B 91 A8 00 00 00 66 81 FA 03 06 72 } $pe_erase_flag = { 8A 85 88 00 00 00 88 44 24 } $hash_lowercase_mul31 = { 0F B6 37 6B D2 1F 47 83 CE 20 } $loop_memcpy_off89 = { 8A 8C 05 89 00 00 00 88 0C 03 40 EB } $loop_xor_decrypt = { 8A 4C 0D 08 30 0C 03 40 EB } condition: filesize < 3MB and 4 of them } |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | rule Amatera_Stealer { meta: author = "YungBinary" description = "Amatera Stealer: XTEA + DJB2, FreshyCalls SysCall resolver, Wow64 SysCall stub, UA geofence, Kaspersky drivers" strings: $crypto_xtea_delta = { C7 44 24 04 00 00 37 9E C7 04 24 B9 79 00 00 } $crypto_djb2 = { 89 D7 C1 E7 05 01 D7 0F B6 D1 01 FA 8A 0E 46 } $resolver_wow64_xorSSN = { A1 ?? ?? ?? ?? 35 ?? ?? ?? ?? 8B D4 64 FF 15 C0 00 00 00 C3 } $resolver_scan_B8 = { 80 7C 19 FE B8 74 ?? 43 83 FB 22 75 } $resolver_hook_range = { 89 0C 24 81 C1 17 FF FF FF 83 F9 16 77 } $resolver_hook_bittest = { 8B 0C 24 81 C1 17 FF FF FF 0F A3 CE 72 } $resolver_nt_filter = { 80 ?? ?? 4E 75 ?? 80 ?? ?? ?? 64 8B } $antidebug_peb = { 80 7? 02 00 75 ?? F6 ?? 68 70 74 } $geofence_UA_keyboard = { BA FF 03 00 00 8B 74 8C ?? 21 D6 83 FE 22 0F 94 C3 0F } $kaspersky_klif = "\\??\\C:\\Windows\\System32\\drivers\\klif.sys" ascii $kaspersky_kldisk = "\\??\\C:\\Windows\\System32\\drivers\\kldisk.sys" ascii $kaspersky_klhk = "\\??\\C:\\Windows\\System32\\drivers\\klhk.sys" ascii $kaspersky_kneps = "\\??\\C:\\Windows\\System32\\drivers\\kneps.sys" ascii condition: filesize < 400KB and ( 3 of ($resolver_*) or ( $resolver_wow64_xorSSN and 2 of ($crypto_*, $antidebug_peb, $geofence_UA_keyboard) ) or all of ($kaspersky_*) ) } |