В январе 2026 года подразделение реагирования на угрозы (Threat Response Unit, TRU) компании eSentire зафиксировало попытку внедрения вредоносного ботнета Prometei на сервер Windows, принадлежащий клиенту из строительного сектора. Этот инцидент позволил экспертам провести глубокий технический анализ многофункционального вредоносного ПО, активного с 2016 года и предположительно связанного с русскоязычными угрозчиками.
Описание
Prometei представляет собой сложный ботнет с широким набором возможностей. Он включает функции удаленного управления, сбор учетных данных, скрытый майнинг криптовалюты Monero, перемещение по сети (lateral movement), а также взаимодействие с командным сервером (Command and Control, C2) как через обычный интернет, так и через сеть TOR. Кроме того, вредоносная программа принимает меры по самообеспечению непрерывности работы (persistence), укрепляя скомпрометированные системы против других злоумышленников, чтобы сохранить эксклюзивный доступ.
В данном случае вектор первоначального доступа остался неопределенным из-за недостаточного уровня журналирования и отсутствия на целевой системе возможностей EDR. Однако анализ развернутых модулей позволил выдвинуть гипотезу о том, что угрозчики получили доступ, используя стандартные или часто применяемые учетные данные для службы удаленного рабочего стола (Remote Desktop Protocol, RDP). После получения доступа злоумышленники выполнили специальную команду в командной строке с повышенными привилегиями, что привело к развертыванию вредоносной нагрузки (payload).
Атака началась с команды, которая с помощью командной строки cmd записала в файл C:\Windows\mshlpda32.dll четыре байта, выступающие в роли XOR-ключа. Этот файл необходим для следующего этапа - расшифровки и выполнения основного исполняемого файла Prometei (zsvc.exe). Затем сценарий PowerShell загрузил зашифрованную полезную нагрузку с удаленного сервера, расшифровал ее с использованием сложного алгоритма на основе скользящего XOR-ключа и сохранил на диск. Важно отметить, что если файл с XOR-ключом отсутствует, вредоносная программа намеренно выполняет серию безобидных действий-приманок перед завершением работы, что является эффективным методом обхода песочниц (sandbox bypass).
После успешного запуска Prometei инициировал процесс установки, который включал несколько этапов. Во-первых, вредоносная программа сгенерировала уникальный идентификатор для связи с C2 (CommID), ключ RC4 для шифрования данных и зашифровала этот ключ с помощью алгоритма RSA-1024, сохранив все значения в реестре Windows. Затем она создала служебную папку для дополнительных модулей, отключила службу Windows Remote Management (WinRM) и добавила исключения в брандмауэр Windows, чтобы разрешить входящий трафик для своего процесса.
Ключевым механизмом обеспечения устойчивости (persistence) стало создание службы Windows с именем UPlugPlay, которая автоматически запускается при старте системы. Prometei скопировал себя в файл C:\Windows\sqhost.exe и зарегистрировал его как службу, используя как собственный код, так и стандартную утилиту sc.exe в качестве запасного варианта.
Коммуникация с командным сервером осуществляется по протоколу HTTP. Собранная с зараженной машины информация шифруется с помощью RC4, кодируется в base64 и передается в параметрах GET-запроса. Для некоторых данных также применяется сжатие LZNT1. Первоначальный контакт с C2 включает регистрацию, в ходе которой отправляются детальные сведения о системе: имя компьютера, данные об оборудовании, установленном антивирусе и другие характеристики, собранные с использованием легитимных системных утилит (LOLBins), таких как wmic.exe.
В ответ C2 может отправлять различные команды. В расследованном инциденте была зафиксирована загрузка дополнительных модулей, расширяющих функционал ботнета. Среди них - netdefender.exe, который мониторит неудачные попытки входа через RDP и блокирует подозрительные IP-адреса в брандмауэре, защищая систему от перебора паролей и обеспечивая эксклюзивность доступа для операторов Prometei. Другие модули, такие как miWalk (на основе Mimikatz), предназначены для кражи учетных данных, а rdpcIip.exe и windrlver.exe обеспечивают перемещение по сети. Модули msdtc.exe и smcard.exe организуют проксирование трафика через сеть TOR для скрытия связи с C2.
Специалисты eSentire отмечают, что Prometei демонстрирует высокий уровень технической изощренности. Вредоносная программа использует многослойное шифрование, включая собственный алгоритм на основе скользящего XOR-ключа для распаковки основного модуля и комбинацию RC4, RSA и LZNT1 для защиты коммуникаций. Активное использование легитимных административных инструментов (LOLBins) значительно затрудняет ее обнаружение.
В ответ на инцидент аналитики круглосуточного SOC (Security Operations Center) eSentire оперативно изолировали зараженный хост, чтобы сдержать распространение угрозы, и помогли клиенту в проведении мероприятий по восстановлению и очистке системы.
На основе этого случая эксперты TRU дали ряд рекомендаций по усилению защиты. Прежде всего, необходимо ужесточить контроль за использованием удаленного рабочего стола. Следует внедрить мониторинг аномальных подключений и попыток подбора паролей, применить многофакторную аутентификацию (MFA) для всех учетных записей с удаленным доступом, установить политики блокировки учетных записей после нескольких неудачных попыток входа и регулярно менять сложные пароли. Также критически важно поддерживать актуальность всех системных обновлений и исправлений безопасности, проводить регулярные оценки уязвимостей и рассмотреть возможность ограничения выполнения несущественных легитимных утилит с помощью политик AppLocker или WDAC (Windows Defender Application Control).
Индикаторы компрометации
IPv4
- 103.176.111.176
- 103.91.90.182
- 23.248.230.26
SHA256
- 01bee3bb01f34f8da926c6b83980958166f1b10d00a923deb87361e9f34bcd83
- 314d2f1cb70c025ab0ba9de8c13914bda674b8f0a23e54454374d14d57fd2786
- 33f4cbf0292c4e957f894269d2d9411fed7ed9b2be4c858ac20418ee36a8b595
- 38fee2445532a4cf120226ff175e0fff55601cc36ff1b8eb7006c2b3f6955831
- 8c6d0728e65864923a9dd9cf1cb512ab65c3d80b69505818a52563a1efe4b59f
- 8d6f833656638f8c1941244c0d1bc88d9a6b2622a4f06b1d5340eac522793321
- 9a6f5a55f5048bd8b0c80fd6da979fc6d7b5e589c7e65ad1c21c861b87855151
- af000bc9f397975604ec0ffd36ff414005ea49ca97ec176eadd14072ceccac00
- c0f71e86d71f799ef6fc493e85bf1db5b1202b8ead301718d55544e8151cb4c2
- c5f76cb93d2f3fd68b46c6ae8e5ca98d3b58eca0964025ef67af109cecf60c49
- c9fd9d54834f0a08597aa952e4265a25dcb248d552facd37cda967f32fc9cc7f
- e5819085c1d8bf668ca0737f6d288bd1d5d3ede5658c11be0c51a6c48fb0f60d
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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | rule Prometei { meta: description = "Detects Prometei Botnet installer" author = "YungBinary" strings: $xor_key_dll = { C6 80 [4] 5C C6 80 [4] 6D C6 80 [4] 73 C6 80 [4] 68 C6 80 [4] 6C C6 80 [4] 70 C6 80 [4] 64 C6 80 [4] 61 } $decrypt = { BF ?? ?? ?? ?? 8A 4D ?? 02 C8 30 0F } $bogus_log = { C6 05 [4] 73 C6 05 [4] 65 C6 05 [4] 74 C6 05 [4] 75 C6 05 [4] 70 C6 05 [4] 5F C6 05 [4] 67 C6 05 [4] 69 } $systeminfo = { C6 05 [4] 73 C6 05 [4] 79 C6 05 [4] 73 C6 05 [4] 74 C6 05 [4] 65 C6 05 [4] 6D C6 05 [4] 69 C6 05 [4] 6E C6 05 [4] 66 C6 05 [4] 6F } $cpuid = { 0D 00 00 20 00 50 9D 9C 58 25 00 00 20 00 3D 00 00 20 00 74 } $rdtsc = { F6 45 ?? 10 59 59 5F 74 ?? 0F 31 C9 C3 } condition: 3 of them } |
