Сегодня хотим поделиться любопытной информацией о кластере NGC5350, который коллеги по индустрии именуют группировкой Hellhounds.
Недавно на публичный мультисканер из России загрузили ELF-семпл DecoyDog под именем «33»:
03b007a5fbb9d1556b4bedd6e930463ce35f5ae17b245edc58c12eb086de891f
Захардкоженный в теле семпла хэш коммита GitHub:
revision 673a05b1.Это connect-имплант DecoyDog, а не DNS, про который чаще выпускали статьи коллеги по индустрии. Он подключается к указанному C2, используя заданный тип транспорта. Конфиг рассматриваемого семпла:
"launcher": "connect",
"launcher_args": ["-t", "ec4", "--host", "185.143.221.125:80"]
Также в конфиге были SSL-сертификаты с датой начала действия (Not Before):
16/07/2024 15:34:40.Информация по C2 —
185.143.221.125 Moscow AS 51659 (LLC Baxet). В 2024 резолвился в:
ns1.dpi-srv-s01.net
ns2.dpi-srv-s01.net
Домен зарегистрирован 2024-08-28. По информации из сертификатов, образец мог использоваться уже в июле 2024.
На
185.143.221.125 на порту 49364/TCP мы обнаружили сертификат с характерным Subject:
Subject C=ZZ, O=Pupy, CN=185.143.221.125
Это сертификат proxy-сервера DecoyDog. Подобные сертификаты используются в golang-коде утилиты proxy из GitHub Pupy и упоминались в первой статье Infoblox.
Сертификат создан на следующий день после начала действия сертификатов семпла.
По параметрам сертификата Proxy можно найти дополнительные Proxy-серверы DecoyDog или Pupy:
5.252.176.63 MIVOCLOUD (39798) Moscow, Russia
91.210.107.141 ORG-LVA15-AS (50867) Moscow, Russia
5.252.176.45 MIVOCLOUD (39798) Moscow, Russia
52.184.34.71 MICROSOFT-CORP-MSN-AS-BLOCK (8075) Hong Kong
Разберем детальнее каждый IOC
1️⃣
5.252.176.63:64539 (01.06.2024-01.06.2025)Тут Issuer не пустой:
Issuer C=ZZ, O=Pupy CA.В 2024-01-11 стал резолвиться в
mp0.ignorelist.com, который использовался First Stage Decoy Dog Loader for Windows «MaxPatrol SIEM Agent.exe» из статьи «Hellhounds: Операция Lahat. Часть 2».2️⃣
91.210.107.141:62731 (31.08.2024-31.08.2025)С 2024-08-01 резолвится в:
ns1.mow-srv-0074h.network
ns2.mow-srv-0074h.network
По неймингу похож на старые C2 DecoyDog.
Здесь поле Issuer пустое. Вышеупомянутая golang-утилита proxy генерирует сертификаты с непустым Issuer.
3️⃣
5.252.176.45:29311 (25.09.2024-25.09.2025)Здесь поле Issuer тоже пустое. IP упомянут в одном из GitHub, как «TOR Known Tor Relay/Route».
4️⃣
52.184.34.71:9000 (01.10.2024-01.10.2025)На 80/TCP CaddyServer— веб-сервак на Go.
Тут Issuer не пустой:
Issuer C=ZZ, O=Pupy CA. В Names и CN вместо ожидаемого 52.184.34.71: 10.1.0.4Что ещё интересного
Есть ещё старый DecoyDog из 2023 года с таким же revision 673a05b1 — _bareos.cfg:
d189e0150f42d2a2e40fefcec6973fcbc4a8b1a1757a358d13df3519ef275412
Загружен на мультисканер 2023-09-12 04:47:24 +0300 MSK от того же пользователя, что и упомянутый в начале поста семпл. Это тоже connect DecoyDog апреля 2023 года. Конфиг:
"launcher": "connect",
"launcher_args": ["-t", "ec4", "--host", "194.87.68.65:80"]
Этот семпл и C2 уже упоминались в первой части статьи «Hellhounds: операция Lahat».
Интересно, что в атаках в апреле 2023 и в летом 2024 года использовался один и тот же connect-имплант, но с разными C2.
IOC:
C2 connect DecoyDog:
185.143.221.125
194.87.68.65
proxy PupyRAT или DecoyDog:
5.252.176.45
5.252.176.63
52.184.34.71
91.210.107.141
Возможно, пустой Issuer — это показатель, что используется кастомная версия proxy, и перед нами не стандартный Pupy, а DecoyDog.