Campagna di Phishing Deploya una Variante di PureLogs Guidata da JavaScript per Rubare Dati Sensibili
Detection stack
- AIDR
- Alert
- ETL
- Query
Sommario
Una campagna di phishing sta utilizzando un allegato JavaScript dannoso per decifrare ed eseguire uno script PowerShell. Tale script esegue quindi un hollowing di processo per iniettare un downloader .NET nel fidato MsBuild.exe processo. Il downloader si collega a un server di comando e controllo per recuperare un plugin PureLogs che ruba credenziali, dati del browser, informazioni su portafogli di criptovalute e altri asset sensibili. La catena d’attacco è altamente evasiva e si basa su crittografia stratificata insieme a tecniche di esecuzione senza file per ridurre il rilevamento.
Indagine
FortiGuard Labs ha esaminato l’allegato email, il JavaScript offuscato, lo script PowerShell distribuito e i componenti .NET in memoria utilizzati successivamente nell’attacco. Durante l’analisi, i ricercatori hanno osservato la creazione di un MsBuild.exe processo svuotato, il caricamento di una DLL downloader e l’esecuzione di un plugin PureLogs che ha raccolto dati dai browser, Discord, portafogli di criptovalute e altre applicazioni. Il traffico di rete catturato ha mostrato comunicazioni GET e POST criptate con un unico server di comando e controllo.
Mitigazione
Il rapporto raccomanda di applicare un forte filtro email, limitare l’esecuzione di script ove possibile e monitorare l’attività sospetta di PowerShell e l’hollowing di processo che coinvolge MsBuild.exe. Consiglia inoltre di utilizzare strumenti di rilevamento e risposta agli endpoint in grado di identificare assembly .NET in memoria e comportamenti di rete uscente insoliti associati alla distribuzione di malware a livelli.
Risposta
Se questa attività viene rilevata, isolare l’endpoint interessato, terminare il MsBuild.exe processo dannoso e bloccare l’indirizzo IP di comando e controllo. Gli investigatori dovrebbero quindi eseguire un’analisi forense per determinare se sono state sottratte credenziali o dati sensibili e ripristinare gli account esposti secondo necessità. Anche il contenuto di rilevamento dovrebbe essere aggiornato per coprire l’abuso di PowerShell, l’hollowing di processo e il comportamento relativo a PureLogs.
Flusso di Attacco
Stiamo ancora aggiornando questa parte. Iscriviti per ricevere notifica
AvvisamiRilevamenti
Possibilità di Esecuzione tramite Righe di Comando PowerShell Nascoste (via cmdline)
Visualizza
Esecuzione di PowerShell in una Directory Sospetta Utilizzando la Politica di Bypass (via cmdline)
Visualizza
LOLBAS WScript / CScript (via creazione_processo)
Visualizza
IOC (HashSha256) da rilevare: Indagini di Minaccia presso FortiGuard Labs Campagna di Phishing Distribuito PureLogs Variant tramite JavaScript per Rubare Dati Sensibili
Visualizza
IOC (SourceIP) da rilevare: Indagini di Minaccia presso FortiGuard Labs Campagna di Phishing Distribuito PureLogs Variant tramite JavaScript per Rubare Dati Sensibili
Visualizza
IOC (DestinationIP) da rilevare: Indagini di Minaccia presso FortiGuard Labs Campagna di Phishing Distribuito PureLogs Variant tramite JavaScript per Rubare Dati Sensibili
Visualizza
Esecuzione di Script PowerShell Senza File e Hollowing di Processo tramite Assembly .NET [Windows Powershell]
Visualizza
Rilevamento della Distribuzione di PureLogs Variant tramite PowerShell e Hollowing di Processo [Creazione di Processo Windows]
Visualizza
Esecuzione di Simulazione
Requisito: Il Controllo Preliminare di Telemetria e 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 narrazione DEVONO riflettere direttamente i TTP identificati e mirano a generare la telemetria esatta prevista dalla logica di rilevamento.
-
Narrazione e Comandi di Attacco:
- Fase 1 – Distribuzione JavaScript: L’attaccante consegna un
.jspayload dannoso (codificato) tramite un’email di phishing. Il payload viene salvato in%TEMP%ed eseguito conwscript.exe. - Fase 2 – Lanciatore PowerShell: Il JavaScript lancia PowerShell con le opzioni
-ExecutionPolicy Bypass -NoProfile -WindowStyle Hidden -File, puntando a uno script secondario che esegue l’hollowing di processo. - Fase 3 – Processo di Hollowing tramite MsBuild: Lo script PowerShell avvia
MsBuild.exein modalità sospesa, inietta il payload dannoso (una DLL fittizia) e riprende il processo, ottenendo l’esecuzione mentre appare come uno strumento legittimo di build.
- Fase 1 – Distribuzione JavaScript: L’attaccante consegna un
-
Script di Test di Regressione: (PowerShell – eseguire come utente normale, non richiede file esterni)
# -------------------------------------------------------------- # Simulazione Variant PureLogs – JavaScript → PowerShell → MsBuild # -------------------------------------------------------------- # 1. Creare JavaScript dannoso (codificato in base64 per simulare offuscamento) $jsPayload = @" // JS Dannoso: lancia PowerShell con opzioni di bypass var shell = new ActiveXObject("WScript.Shell"); var psCmd = "powershell.exe -ExecutionPolicy Bypass -NoProfile -WindowStyle Hidden -File ""%TEMP%launch.ps1"""; shell.Run(psCmd, 0, false); "@ $jsPath = "$env:TEMPmalicious.js" $jsPayload | Set-Content -Path $jsPath -Encoding ASCII # 2. Creare payload PowerShell che esegue hollowing di processo con MsBuild $psPayload = @" # Lancia MsBuild in modalità sospesa $msbuildPath = (Get-Command MsBuild.exe).Source $si = New-Object System.Diagnostics.ProcessStartInfo $si.FileName = $msbuildPath $si.UseShellExecute = $false $si.CreateNoWindow = $true $si.Arguments = "/t:Compile" $proc = [System.Diagnostics.Process]::Start($si) Start-Sleep -Milliseconds 500 # lasciare tempo per la creazione # Simulare hollowing semplicemente scrivendo un file fittizio nello spazio di memoria del processo # (l'hollowing reale utilizzerebbe chiamate API di Windows; qui manteniamo solo il processo attivo) Write-Host "Hollowing di processo simulato – MsBuild in esecuzione" "@ $psPath = "$env:TEMPlaunch.ps1" $psPayload | Set-Content -Path $psPath -Encoding ASCII # 3. Eseguire JavaScript – questo è il punto di ingresso che la regola monitora wscript.exe $jsPath # Attendere per un breve periodo per assicurarsi che i log siano generati Start-Sleep -Seconds 10 -
Comandi di Pulizia:
# Terminare eventuali processi MsBuild persistenti avviati dalla simulazione Get-Process MsBuild -ErrorAction SilentlyContinue | Stop-Process -Force # Rimuovere artefatti Remove-Item "$env:TEMPmalicious.js" -ErrorAction SilentlyContinue Remove-Item "$env:TEMPlaunch.ps1" -ErrorAction SilentlyContinue