SOC Prime Bias: Critico

30 Jan 2026 16:58 UTC

Attacchi APT prendono di mira il governo indiano con SHEETCREEP, FIREPOWER e MAILCREEP | Parte 2

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Segui
Attacchi APT prendono di mira il governo indiano con SHEETCREEP, FIREPOWER e MAILCREEP | Parte 2
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Riassunto

Il rapporto copre l’operazione Sheet Attack, che ha distribuito tre backdoor su misura – SHEETCREEP, FIREPOWER e MAILCREEP – per compromettere le organizzazioni governative indiane. Gli impianti si sono basati su piattaforme cloud legittime per comando e controllo, tra cui Google Sheets, Firebase Realtime Database e Microsoft Graph API, aiutando l’attività a confondersi con il normale traffico SaaS. L’analisi nota anche artefatti coerenti con gli sviluppatori che utilizzano AI generativa per assistere la produzione di codice. La campagna è valutata come probabilmente collegata a un sottogruppo di APT36 basato in Pakistan.

Indagine

ThreatLabz ha condotto sia analisi dinamica che statica delle backdoor, documentando i metodi di persistenza, i flussi di lavoro C2, e il comportamento di esfiltrazione dei dati. Il team ha anche mappato l’infrastruttura di supporto, osservato il filtraggio basato su geografia e User-Agent, e catturato indicatori a livello di codice che suggeriscono l’assistenza AI nella generazione di sorgenti.

Mitigazione

Implementare rilevamenti stratificati per catene di consegna PDF/LNK sospetti, e monitorare per compiti programmati che avviano l’esecuzione di PowerShell o VBS. Applicare controlli rigorosi in uscita e il monitoraggio delle anomalie per i servizi cloud comunemente abusati come C2, tra cui Google Sheets, Firebase e Microsoft Graph. Utilizzare il blocco basato sugli hash per payload conosciuti e bloccare i domini e gli indirizzi IP malevoli identificati.

Risposta

Quando rilevato, isolare l’endpoint, terminare l’attività cmd.exe e PowerShell nascosta, rimuovere i compiti programmati correlati, ed eliminare i binari della backdoor. Preservare e rivedere i log C2 basati su Google Sheets e gli artefatti Firebase, poi cercare nell’ambiente ulteriori host che mostrano gli stessi indicatori.

Flusso di Attacco

Rilevamenti

Download o Upload via Powershell (via cmdline)

Squadra SOC Prime
29 Gen 2026

Dominio Microsoft Graph API Risolto da Processo Insolito (via dns_query)

Squadra SOC Prime
29 Gen 2026

File sospetti nel Profilo Utente Pubblico (via file_event)

Squadra SOC Prime
29 Gen 2026

Tentativo di Esecuzione Suspicious GNU Wget (via cmdline)

Squadra SOC Prime
29 Gen 2026

Chiama Metodi .NET Sospetti da Powershell (via powershell)

Squadra SOC Prime
29 Gen 2026

Esecuzione Sospetta da Profilo Utente Pubblico (via process_creation)

Squadra SOC Prime
29 Gen 2026

Possibile Infiltrazione/Esfiltrazione Dati/C2 tramite Servizi/Strumenti di Terze Parti (via dns)

Squadra SOC Prime
29 Gen 2026

File Estratti Sospetti da un Archive (via file_event)

Squadra SOC Prime
29 Gen 2026

IOC (SourceIP) per rilevare: Attacchi APT mirano il governo indiano usando SHEETCREEP, FIREPOWER e MAILCREEP | Parte 2

Regole AI SOC Prime
29 Gen 2026

IOC (HashMd5) per rilevare: Attacchi APT mirano il governo indiano usando SHEETCREEP, FIREPOWER e MAILCREEP | Parte 2

Regole AI SOC Prime
29 Gen 2026

IOC (DestinationIP) per rilevare: Attacchi APT mirano il governo indiano usando SHEETCREEP, FIREPOWER e MAILCREEP | Parte 2

Regole AI SOC Prime
29 Gen 2026

IOC (HashSha1) per rilevare: Attacchi APT mirano il governo indiano usando SHEETCREEP, FIREPOWER e MAILCREEP | Parte 2

Regole AI SOC Prime
29 Gen 2026

IOC (HashSha256) per rilevare: Attacchi APT mirano il governo indiano usando SHEETCREEP, FIREPOWER e MAILCREEP | Parte 2

Regole AI SOC Prime
29 Gen 2026

Rilevamento dei Comandi PowerShell per SHEETCREEP e Distribuzione Backdoor FIREPOWER [Windows Powershell]

Regole AI SOC Prime
29 Gen 2026

Rilevamento di Comunicazione C2 di SHEETCREEP e FIREPOWER Backdoor [Connessione di Rete Windows]

Regole AI SOC Prime
29 Gen 2026

Esecuzione di Simulazione

Prerequisito: Il Check Pre-volo di Telemetria & Baseline deve essere passato.

Razionale: Questa sezione dettaglia 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 prevista dalla logica di rilevamento. Esempi astratti o non correlati porteranno a una diagnosi errata.

  • Narrativa dell’Attacco & Comandi:

    1. Prepara il PNG malevolo:
      • L’attaccante crea un file PNG (details.png) che in realtà contiene un flusso di byte di un assembly .NET compilato, ma con i suoi byte invertiti per evitare l’analisi statica.
    2. Avviare PowerShell in modalità nascosta per caricare l’assembly:
      • L’attaccante esegue PowerShell con -WindowStyle Hidden -Command e un one-liner che legge i byte invertiti, ripristina l’ordine corretto, carica l’assembly tramite [System.Reflection.Assembly]::Load(), e invoca un punto di ingresso noto (Task10.Program::MB()).
    3. Distribuzione alternava di LNK a base di fuoco potenza:
      • Un .lnk preparato .lnk scorciatoia esegue powershell.exe con --headless -e (script codificato) per recuperare ed eseguire un backdoor PowerShell remoto.

    Questi passaggi corrispondono esattamente alle stringhe che la regola Sigma cerca, garantendo che l’allarme venga attivato.

  • Script di Test di Regressione:

    # -------------------------------------------------
    # Simulazione payload SHEETCREEP – riproduce esattamente la linea di comando
    # -------------------------------------------------
    
    # 1. Creare un assembly .NET fittizio (semplice C# hello world) e compilarlo
    $source = @"
    using System;
    public class Task10 {
        public static void MB() {
            Console.WriteLine("Payload executed");
        }
    }
    "@
    $tempDir = "$env:TEMPsheetcreep"
    New-Item -ItemType Directory -Force -Path $tempDir | Out-Null
    $csFile = Join-Path $tempDir "Task10.cs"
    $dllFile = Join-Path $tempDir "Task10.dll"
    $source | Set-Content -Path $csFile -Encoding UTF8
    
    # Compile using csc (assumes .NET Framework SDK installed)
    $cscPath = "$env:WINDIRMicrosoft.NETFramework64v4.0.30319csc.exe"
    & $cscPath /target:library /out:$dllFile $csFile
    
    # 2. Leggere i byte della DLL, invertirli e scrivere a un file .png
    $bytes = [IO.File]::ReadAllBytes($dllFile)
    $revBytes = $bytes[($bytes.Length-1)..0]
    $pngPath = Join-Path $tempDir "details.png"
    [IO.File]::WriteAllBytes($pngPath, $revBytes)
    
    # 3. Eseguire esattamente la linea di comando PowerShell malevola (questo attiverà la regola)
    $maliciousCmd = '-WindowStyle Hidden -Command "$b=[IO.File]::ReadAllBytes(''details.png'');' +
                    '([System.Reflection.Assembly]::Load([byte[]]($b[($b.Length-1)..0])).GetType("Task10.Program")::MB())"'
    
    Start-Process -FilePath "$env:SystemRootSystem32WindowsPowerShellv1.0powershell.exe" `
                  -ArgumentList $maliciousCmd `
                  -WindowStyle Hidden `
                  -NoNewWindow
    
    # Cleanup (opzionale, eseguire dopo la verifica)
    # Remove-Item -Recurse -Force $tempDir
  • Comandi di Pulizia:

    # Rimuovere file e directory temporanei creati per il test
    $tempDir = "$env:TEMPsheetcreep"
    if (Test-Path $tempDir) {
        Remove-Item -Recurse -Force $tempDir
    }