Crypto Drainer come Minaccia Convergente: Approfondimenti sui Nuovi Ecosistemi di Attacchi Ibridi
Detection stack
- AIDR
- Alert
- ETL
- Query
Riepilogo
Il rapporto spiega come le infrastrutture consolidate del crimine informatico stiano sempre più convergendo con le operazioni di drainer di criptovalute, dando origine ad ecosistemi di attacco ibridi che mettono a rischio sia i beni Web2 che Web3. Gli attori delle minacce si affidano a pagine di phishing ben elaborate a tema strumenti di IA o servizi finanziari per convincere le vittime a collegare i loro wallet, autorizzare le transazioni di token e trasferire inconsapevolmente fondi su più blockchain. Due esempi emblematici, StepDrainer e EtherRAT, dimostrano come questo modello si estenda sia al draining dei wallet basati su browser sia al malware Windows con funzionalità consapevole della blockchain. Di conseguenza, la minaccia ora si estende ben oltre gli utenti nativi di criptovalute e raggiunge più in profondità gli ambienti aziendali mainstream.
Indagine
I ricercatori hanno esaminato l’operazione StepDrainer malware-as-a-service, compresa la sua infrastruttura di staging PHP e JavaScript e il suo utilizzo di Web3Modal per visualizzare prompt di connessione al wallet convincenti. Hanno anche analizzato il malware Windows EtherRAT, che è stato distribuito tramite un installer TFTP trojanizzato, mantenendo la persistenza attraverso una chiave di registro Run, e comunicava con gli endpoint RPC di Ethereum e Solana. Durante l’indagine, il team ha estratto indicatori come domini malevoli, chiavi di registro e artefatti da riga di comando legati a entrambi i percorsi di attacco.
Mitigazione
Le organizzazioni dovrebbero bloccare l’accesso ai domini noti come malevoli, richiedere l’autenticazione multi-fattore per le estensioni del wallet ove possibile, e monitorare i sistemi per registrare voci di Run sospette e processi Node.js inaspettati. I team di sicurezza dovrebbero anche ispezionare il traffico verso i servizi pubblici RPC della blockchain per comportamenti anomali e rivedere regolarmente le estensioni del browser per segni di manomissione o abuso.
Risposta
Se viene rilevata questa attività, isolare immediatamente l’host interessato, rimuovere l’ingresso di registro Run malevolo, terminare i processi Node.js non autorizzati e revocare tutte le approvazioni di token concesse dai wallet colpiti. Gli investigatori dovrebbero quindi eseguire un’analisi forense per identificare eventuali payload aggiuntivi o meccanismi di persistenza e aggiornare le allow-list o blocklist per prevenire ulteriori comunicazioni con le infrastrutture di comando e controllo identificate.
Flusso di Attacco
Rilevamenti
Punti di Persistenza Possibili [ASEPs – Alveare Software/NTUSER] (via registry_event)
Visualizza
NodoJS Binario che Esegue Da Posizione Insolita (via cmdline)
Visualizza
Enumerazione Possibile Software Antivirus o Firewall (via process_creation)
Visualizza
LOLBAS Conhost (via cmdline)
Visualizza
Uso Sospetto di CURL (via cmdline)
Visualizza
Controlli di Evasione Possibili (via powershell)
Visualizza
Tentativo di Abuso Publicnode Ethereum come Canale C2 (via dns_query)
Visualizza
Infiltrazione / Esfiltrazione dei Dati Possibile / C2 tramite Servizi / Strumenti di Terze Parti (via proxy)
Visualizza
Infiltrazione / Esfiltrazione dei Dati Possibile / C2 tramite Servizi / Strumenti di Terze Parti (via dns)
Visualizza
Rilevamento del Meccanismo di Persistenza di EtherRAT Utilizzando conhost.exe in Modalità Senza Testa [Creazione Processo Windows]
Visualizza
Esecuzione del Comando PowerShell di EtherRAT per Ricognizione del Sistema [Windows Powershell]
Visualizza
Esecuzione di Simulazione
Prerequisito: Il Controllo Prevolo della Telemetria e della Base deve essere passato.
-
Narrativa di Attacco & Comandi
L’avversario ha già collocato un file JavaScript malevolo (
payload.js) sul bersaglio. Per ottenere la persistenza, utilizza ilnode.exebinario installato per avviareconhost.exein modalità senza testa, che quindi carica il payload JavaScript. Questa tecnica evita finestre console visibili e si integra nel normalenodeutilizzo.- Collocare il payload malevolo (
payload.js) in una posizione temporanea. - Esegui
node.execon un comando che generaconhost.exe --headlesspunta al payload. - Crea un’attività programmata che esegue lo stesso comando all’avvio del sistema, fornendo persistenza.
- Collocare il payload malevolo (
-
Script di Test di Regressione
# Simulazione di Persistenza EtherRAT – PowerShell # ------------------------------------------------- # 1. Preparare payload JavaScript malevolo $payloadPath = "$env:TEMPpayload.js" @" // JS malevolo minimo – in realtà questo caricherebbe l'implant EtherRAT const { exec } = require('child_process'); exec('calc.exe'); // Esempio di effetto collaterale "@ | Set-Content -Encoding UTF8 $payloadPath # 2. Individuare node.exe (si suppone sia nel PATH) $node = (Get-Command node.exe).Source if (-not $node) { Write-Error "node.exe non trovato nel PATH." exit 1 } # 3. Costruire la linea di comando conhost $conhostCmd = "C:WindowsSystem32conhost.exe --headless `"$payloadPath`"" # 4. Avvia tramite node.exe (questo crea la relazione genitore-figlio) $script = "require('child_process').exec(`"$conhostCmd`")" & $node -e $script # 5. OPZIONALE: Creare un'attività programmata per la persistenza $taskName = "SystemUpdate" $action = New-ScheduledTaskAction -Execute $node -Argument "-e `"$script`"" $trigger = New-ScheduledTaskTrigger -AtLogOn Register-ScheduledTask -TaskName $taskName -Action $action -Trigger $trigger -RunLevel Highest -Force -
Comandi di Pulizia
# Rimuovi attività programmata Unregister-ScheduledTask -TaskName "SystemUpdate" -Confirm:$false # Elimina payload Remove-Item -Path "$env:TEMPpayload.js" -Force # Ferma qualsiasi processo conhost persistente generato dal test Get-Process conhost -ErrorAction SilentlyContinue | Where-Object { $_.Path -eq 'C:WindowsSystem32conhost.exe' -and $_.CommandLine -match '--headless' } | Stop-Process -Force