SOC Prime Bias: Critico

11 Feb 2026 15:47 UTC

Approfondimento sulla Nuova Campagna XWorm che Utilizza Email di Phishing a Tema Multiplo

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Segui
Approfondimento sulla Nuova Campagna XWorm che Utilizza Email di Phishing a Tema Multiplo
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Riepilogo

FortiGuard Labs ha osservato una campagna di phishing multistadio che distribuisce il trojan di accesso remoto XWorm attraverso allegati Excel maligni. Il documento sfrutta CVE-2018-0802 nell’Editor di Equazioni di Microsoft per recuperare un file HTA, che poi attiva un caricatore .NET senza file che utilizza il process hollowing per iniettare XWorm in un nuovo processo Msbuild.exe generato. Il RAT comunica con il suo C2 utilizzando traffico crittografato AES ed espone un ampio set di comandi con supporto plugin per un controllo esteso. La campagna mostra un uso sofisticato di binari living-off-the-land e tecniche senza file per ottenere un controllo remoto persistente su endpoint compromessi.

Indagine

Gli analisti hanno ricostruito il flusso dall’email di phishing allo sfruttamento dell’OLE di Excel, esecuzione HTA, download del modulo .NET basato su PowerShell e il finale process hollowing in Msbuild.exe. La revisione statica e dinamica ha evidenziato dati payload codificati Base64 nascosti in un’immagine JPEG, con il componente finale XWorm caricato in memoria senza scrivere un eseguibile decrittografato su disco durante l’esecuzione. Le catture di rete hanno mostrato pacchetti crittografati AES inviati al dominio C2 berlin101.com sulla porta 6000. Il rapporto ha anche catalogato l’esteso set di comandi e architettura dei plugin di XWorm.

Mitigazione

FortiGuard raccomanda di abilitare le protezioni macro e OLE, applicare la patch per CVE-2018-0802 e limitare l’esecuzione di file Msbuild, PowerShell e HTA provenienti da contenuti email. Implementare filtri web, controlli anti-phishing e firme IDS/IPS legate agli indicatori osservati per bloccare la consegna e lo staging al gateway. Monitorare per alberi dei processi anomali—specialmente Msbuild.exe lanciato da PowerShell—per identificare l’esploit rapidamente.

Risposta

Alla rilevazione, isolare l’endpoint colpito, terminare i processi maligni ed espellere il modulo XWorm caricato dalla memoria. Raccogliere artefatti forensi inclusi telemetria della riga di comando, log di rete e modifiche al registro per delineare l’intrusione. Reimpostare eventuali credenziali compromesse, aggiornare il componente vulnerabile Editor di Equazioni e bloccare i domini maligni e il server C2. Applicare aggiornamenti dell’intelligenza sulle minacce alle rilevazioni EDR/SIEM per prevenire la ricorrenza e cercare attività correlate nell’ambiente.

Flusso di Attacco

Esecuzione della Simulazione

Prerequisito: Il Check Pre-volo della Telemetria e del Baseline deve essere passato.

Motivazione: Questa sezione descrive 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 mirare a generare la telemetria esatta attesa dalla logica di rilevamento.

  • Narrazione & Comandi dell’Attacco:

    1. Drop Iniziale: L’attaccante consegna un file Excel maligno che sfrutta CVE‑2018‑0802. Per la simulazione bypassiamo l’exploit e lanciamo direttamente il payload.
    2. Process Hollowing tramite EQNEDT32.EXE: Avvio EQNEDT32.EXE con una riga di comando che invoca ShellExecuteExW() per mascherarsi come un componente legittimo di Office.
    3. Esecuzione Laterale Msbuild.exe: Genera Msbuild.exe con CreateProcessA() per compilare un payload .NET furtivo al volo.
    4. Esecuzione .NET senza file: Use powershell.exe con un comando codificato base64 che carica un’assembly .NET riflettente (T1620). La riga di comando contiene la stringa letterale CreateProcessA() per soddisfare la regola.
  • Script di Test di Regressione:

    <#
    Simula la catena di esecuzione XWorm:
    1. EQNEDT32.exe con ShellExecuteExW()
    2. Msbuild.exe con CreateProcessA()
    3. PowerShell con caricatore riflettente .NET contenente CreateProcessA()
    #>
    
    # 1. EQNEDT32.exe (Process Hollowing)
    $eqnPath = "$env:SystemRootSystem32EQNEDT32.EXE"
    $eqnArgs = "-Command "ShellExecuteExW()""
    Start-Process -FilePath $eqnPath -ArgumentList $eqnArgs -WindowStyle Hidden
    
    # 2. Msbuild.exe (Iniezione DLL Dinamica)
    $msbuildPath = "$env:ProgramFilesMicrosoft Visual Studio2022CommunityMSBuildCurrentBinMsbuild.exe"
    $msbuildArgs = "/t:Compile /p:UseShellExecute="CreateProcessA()""
    Start-Process -FilePath $msbuildPath -ArgumentList $msbuildArgs -WindowStyle Hidden
    
    # 3. PowerShell (caricamento riflettente .NET senza file)
    # Esempio di payload .NET (segnaposto) codificato in base64
    $payload = "W3siQmFzZURhdGEiOiAiIiB9XQ=="   # base64 dummy
    $psArgs = "-EncodedCommand $payload -ArgumentList "CreateProcessA()""
    Start-Process -FilePath "powershell.exe" -ArgumentList $psArgs -WindowStyle Hidden
    
    Write-Host "Simulazione XWorm completata."
  • Comandi di Pulizia:

    # Termina eventuali processi di simulazione in sospeso
    Get-Process -Name "EQNEDT32","Msbuild","powershell" -ErrorAction SilentlyContinue | Stop-Process -Force
    
    # Rimuovere opzionalmente i file temporanei (nessun creato in questa simulazione puramente di processi)
    Write-Host "Pulizia completata."