UAT-10608 Scoperto: Furto Automizzato di Credenziali su Larga Scala Contro Applicazioni Web
Detection stack
- AIDR
- Alert
- ETL
- Query
Riassunto
Cisco Talos segnala un’operazione su vasta scala che sfrutta la vulnerabilità React2Shell nelle applicazioni Next.js per rubare credenziali in massa. Gli attaccanti usano un framework appositamente sviluppato chiamato NEXUS Listener per estrarre segreti di alto valore dagli host compromessi, inclusi variabili d’ambiente, chiavi SSH, token cloud e Kubernetes e credenziali API. Talos ha osservato oltre 766 sistemi impattati in diverse regioni e fornitori di cloud. I dati rubati vengono inviati tramite callback HTTP a un endpoint C2 centralizzato.
Indagine
Talos ha analizzato i payload consegnati tramite CVE-2025-55182, che rilasciano uno script shell con nome casuale in /tmp ed eseguirlo usando nohup per una continuità simile alla persistenza. Lo script esegue moduli di raccolta in fasi coprendo segreti ambientali, materiale SSH, metadati del cloud, token Kubernetes, dettagli Docker e cronologia dei comandi. I risultati vengono inviati nuovamente al servizio NEXUS Listener sulla porta 8080. Gli investigatori hanno esaminato l’interfaccia utente web di NEXUS Listener, l’archiviazione dati backend e la telemetria di rete associata per convalidare i tipi di credenziali e la scala della raccolta.
Mitigazione
Correggi le distribuzioni Next.js interessate per mitigare l’esposizione React2Shell. Applica IMDSv2 sugli endpoint dei metadati del cloud, ruota immediatamente qualsiasi segreto potenzialmente esposto e separa l’uso delle chiavi SSH per ambiente e ruolo. Aggiungi controlli RASP o regole WAF progettate per catturare tentativi di iniezione in stile SSR. I team cloud devono abilitare la scansione dei segreti, minimizzare le autorizzazioni dei ruoli delle istanze e rivedere la configurazione server-side per prevenire l’esposizione accidentale di variabili d’ambiente sensibili. deployments to remediate React2Shell exposure. Enforce IMDSv2 on cloud metadata endpoints, rotate any potentially exposed secrets immediately, and separate SSH key usage by environment and role. Add RASP controls or WAF rules designed to catch SSR-style injection attempts. Cloud teams should enable secret scanning, minimize instance role permissions, and review server-side configuration to prevent accidental exposure of sensitive environment variables.
Risposta
Allerta su script generati con nohup che si eseguono da /tmp, specialmente file con prefissi di punto o nomi casuali, e monitora il traffico HTTP in uscita verso destinazioni sconosciute sulla porta 8080. Blocca gli URL di esfiltrazione che corrispondono a schemi noti di callback di NEXUS Listener. Isola gli host coinvolti, revoca chiavi/token compromessi e effettua una revisione forense per capire quali dati sono stati raccolti e dove sono stati utilizzati. Implementa rilevamenti IDS per lo sfruttamento di React2Shell e restringi l’accesso con privilegi minimi a metadati e archivi di segreti.
"graph TB %% Class definitions classDef technique fill:#ffcc99 classDef tool fill:#99ccff classDef malware fill:#ccffcc %% Node definitions tech_initial_access["<b>Tecnica</b> – <b>T1189 Compromesso Driveu2011by </b><br/><b>Descrizione</b>: L’attaccante ottiene l’accesso iniziale sfruttando una vulnerabilità in un sito web pubblico e eseguendo codice sul sistema della vittima."] class tech_initial_access technique tool_react2shell["<b>Strumento</b> – <b>Nome</b>: React2Shell (CVEu20112025u201155182)<br/><b>Descrizione</b>: Vulnerabilità di esecuzione di codice remoto preu2011autenticazione nelle applicazioni Next.js."] class tool_react2shell tool tech_exploit_client["<b>Tecnica</b> – <b>T1203 Sfruttamento per Esecuzione Client</b><br/><b>Descrizione</b>: Sfrutta vulnerabilità del software per eseguire codice su un sistema target."] class tech_exploit_client technique tech_script_proxy["<b>Tecnica</b> – <b>T1216 Esecuzione Proxy Script di Sistema</b><br/><b>Descrizione</b>: Utilizza script di sistema per mandare in esecuzione codice malevolo."] class tech_script_proxy technique malware_loader["<b>Malware</b> – <b>Nome</b>: Script Loader<br/><b>Descrizione</b>: Piccolo script shell collocato in /tmp con nome casuale e lanciato con nohup."] class malware_loader malware tech_hide_artifacts["<b>Tecnica</b> – <b>T1564.011 Nascondere Artefatti: Ignorare Interruzioni dei Processi</b><br/><b>Descrizione</b>: Esegue processi malevoli in background per evitare il rilevamento."] class tech_hide_artifacts technique tech_network_logon["<b>Tecnica</b> – <b>T1037.003 Script di Accesso alla Rete</b><br/><b>Descrizione</b>: Configura uno script di accesso che si esegue ogni volta che un utente accede alla rete."] class tech_network_logon technique tech_private_keys["<b>Tecnica</b> – <b>T1552.004 Chiavi Private</b><br/><b>Descrizione</b>: Cerca ed estrae chiavi SSH private dal file system."] class tech_private_keys technique tech_credentials_files["<b>Tecnica</b> – <b>T1552.001 Credenziali in File</b><br/><b>Descrizione</b>: Raccoglie credenziali memorizzate in file come .env, authorized_keys, config Docker, ecc."] class tech_credentials_files technique tech_cloud_metadata["<b>Tecnica</b> – <b>T1552.005 API Metadati Istanza Cloud</b><br/><b>Descrizione</b>: Interroga i servizi dei metadati del fornitore di cloud per ottenere credenziali IAM temporanee."] class tech_cloud_metadata technique tech_container_api["<b>Tecnica</b> – <b>T1552.007 API Container</b><br/><b>Descrizione</b>: Accede ai token dell’account servizio Kubernetes dal file system del pod."] class tech_container_api technique tech_remote_staging["<b>Tecnica</b> – <b>T1074.002 Staging Dati Remoto</b><br/><b>Descrizione</b>: Organizza i dati raccolti localmente prima dell’esfiltrazione."] class tech_remote_staging technique tech_automated_exfil["<b>Tecnica</b> – <b>T1020 Esfiltrazione Automatica</b><br/><b>Descrizione</b>: Automatizza l’esfiltrazione dei dati tramite processi scriptati."] class tech_automated_exfil technique tech_web_service["<b>Tecnica</b> – <b>T1102 Servizio Web</b><br/><b>Descrizione</b>: Utilizza servizi web legittimi per la comunicazione di comando e controllo."] class tech_web_service technique tech_dead_drop["<b>Tecnica</b> – <b>T1102.001 Risolutore Dead Drop</b><br/><b>Descrizione</b>: Memorizza i dati esfiltrati in un servizio web che funge da posizione dead drop."] class tech_dead_drop technique tech_ssh["<b>Tecnica</b> – <b>T1021.004 SSH</b><br/><b>Descrizione</b>: Utilizza SSH per il movimento laterale del servizio remoto."] class tech_ssh technique tech_ssh_hijack["<b>Tecnica</b> – <b>T1563.001 Dirottamento SSH</b><br/><b>Descrizione</b>: Riutilizza le chiavi private raccolte per dirottare sessioni SSH esistenti."] class tech_ssh_hijack technique tool_nexus["<b>Strumento</b> – <b>Nome</b>: NEXUS Listener<br/><b>Descrizione</b>: Interfaccia grafica basata su web che riceve dati raccolti e li mostra agli operatori."] class tool_nexus tool %% Connessioni tech_initial_access –>|utilizza| tool_react2shell tool_react2shell –>|attiva| tech_exploit_client tech_exploit_client –>|consente| tech_script_proxy tech_script_proxy –>|lancia| malware_loader malware_loader –>|applica| tech_hide_artifacts malware_loader –>|configura| tech_network_logon malware_loader –>|raccoglie| tech_private_keys malware_loader –>|raccoglie| tech_credentials_files malware_loader –>|interroga| tech_cloud_metadata malware_loader –>|accede| tech_container_api malware_loader –>|crea un staging| tech_remote_staging tech_remote_staging –>|esfiltra tramite| tech_automated_exfil tech_automated_exfil –>|utilizza| tech_web_service tech_automated_exfil –>|utilizza| tech_dead_drop tech_web_service –>|fornisce C2 a| tool_nexus tool_nexus –>|abilita| tech_ssh tech_ssh –>|arricchito da| tech_ssh_hijack tech_ssh_hijack –>|riutilizza| tech_private_keys "
Flusso di Attacco
Rilevamenti
File Nascosto Creato su Host Linux (tramite file_event)
Visualizza
Uso di Nohup (tramite cmdline)
Visualizza
Script Linux Creato in Cartelle Temporanee (tramite file_event)
Visualizza
IOC (DestinationIP) per rilevare: UAT-10608: All’interno di un’operazione su larga scala di raccolta automatizzata di credenziali che bersaglia le applicazioni web
Visualizza
IOC (SourceIP) per rilevare: UAT-10608: All’interno di un’operazione su larga scala di raccolta automatizzata di credenziali che bersaglia le applicazioni web
Visualizza
Esecuzione Script di Raccolta Automatizzata di Credenziali [Creazione Processo Linux]
Visualizza
Esecuzione Simulazione
Prerequisito: Il Controllo Pre-volo di Telemetria e Baseline deve essere superato.
Motivo: Questa sezione dettaglia l’esecuzione precisa della tecnica avversaria (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrativa DEVONO riflettere direttamente i TTP identificati e mirare a generare esattamente la telemetria attesa dalla logica di rilevamento.
-
Narrativa dell’Attacco e Comandi:
Un attaccante ha ottenuto una copia di uno script di raccolta di credenziali (.eba9ee1e4.sh) che tenta di leggere/etc/passwd, cerca chiavi SSH e compie tentativi di accesso brute-force contro un’applicazione web target. Per mantenere lo script in esecuzione dopo la fine della sessione SSH e per eludere il monitoraggio interattivo, l’attaccante carica lo script in/tmp/.eba9ee1e4.she lo lancia connohup sh. Poiché la regola di rilevamento cerca la linea di comando letteralenohup sh /tmp/.eba9ee1e4.sh, questa esecuzione esatta genererà la telemetria attesa. -
Script Test di Regressione:
#!/bin/bash # ------------------------------------------------------------- # Script di regressione per attivare la regola Sigma: # rilevamento di `nohup sh /tmp/.eba9ee1e4.sh` # ------------------------------------------------------------- # 1. Rilascia lo script dalle sembianze malevole (contenuto innocuo per test) cat <<'EOF' > /tmp/.eba9ee1e4.sh #!/bin/bash echo "Raccolta credenziali simulata – nessuna attività reale" EOF chmod +x /tmp/.eba9ee1e4.sh # 2. Esegui lo script con nohup in background (linea di comando specifica) nohup sh /tmp/.eba9ee1e4.sh >/dev/null 2>&1 & echo "Simulazione avviata – verifica SIEM per rilevamento." -
Comandi di Pulizia:
# Termina qualsiasi istanza in background rimanente dello script di test pkill -f "/tmp/.eba9ee1e4.sh" || true # Rimuovi lo script di test rm -f /tmp/.eba9ee1e4.sh echo "Pulizia completata."