SOC Prime Bias: Medio

28 Gen 2026 11:56

Un Arsenale Condiviso: Identificare le TTP Comuni tra i RAT

Author Photo
Ruslan Mikhalov Capo della Ricerca sulle Minacce presso SOC Prime linkedin icon Segui
Un Arsenale Condiviso: Identificare le TTP Comuni tra i RAT
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Riassunto

Un post di Splunk esamina come molte famiglie di trojan di accesso remoto e stealer convergano sulla stessa base di tecniche MITRE ATT&CK. Menziona comportamenti ripetibili come il trasferimento di strumenti di ingresso, la scoperta di host e rete, la persistenza tramite registro e task programmati, l’evasione delle difese e il furto di credenziali. Allo stesso tempo, nota piccole differenze di implementazione che possono comunque aiutare a distinguere le famiglie durante la triage. Questo approccio supporta una caccia trasversale piĂą coerente tra le famiglie.

Indagine

Il team ha mappato circa diciotto famiglie di malware in ATT&CK, riassunto le TTP sovrapposte e incluso frammenti di codice pratici che coprono persistenza, manipolazione di token e utilizzo di servizi web. Gli esempi spaziano da query WMI, scrittura di Run-key, creazione di schtasks e comandi PowerShell che aggiungono esclusioni a Windows Defender.

Mitigazione

Le linee guida danno prioritĂ  alle rilevazioni centrate sulla tecnica rispetto ai nomi delle famiglie: osservare l’abuso di utilitĂ  comuni (schtasks, reg, WMI), limitare il traffico web in uscita e rafforzare i controlli di accesso alle credenziali. Si consiglia anche di restringere le politiche di esclusione di Windows Defender e di generare avvisi sulle modifiche nei privilegi dei token.

Risposta

Quando queste tecniche vengono rilevate, isolare l’endpoint, raccogliere elementi chiave (hive del registro, definizioni di task programmati, log della linea di comando) e cercare IOCs correlati in tutto il dominio. Rimuovere la persistenza, applicare blocchi basati su indicatori per domini e hash noti, ed espandere le rilevazioni per coprire i comportamenti condivisi.

Flusso di attacco

Stiamo ancora aggiornando questa parte. Iscriviti per essere notificato

Notificami

Esecuzione della Simulazione

Prerequisito: Il Controllo Pre-vole Telemetria & Baseline deve aver superato.

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 prevista dalla logica di rilevamento.

  • Narrazione & Comandi di Attacco:

    1. Ricognizione: L’attaccante enumera la versione dell’OS per verificare che il target sia una macchina Windows capace di utilizzare Run‑key.
    2. Preparazione del Payload: Viene scelto un eseguibile di test innocuo (notepad.exe) per evitare impatti dannosi effettivi pur rappresentando un tipico payload di persistenza.
    3. Impianto di Persistenza: Utilizzando reg.exe, l’attaccante scrive un nuovo valore stringa denominato ProvingMalware sotto HKCUSoftwareMicrosoftWindowsCurrentVersionRun, puntando a C:WindowsSystem32notepad.exe. Questo genera l’Evento ID 4657 con il percorso del Run-key, soddisfacendo la regola di rilevamento.
    4. Verifica: L’attaccante interroga il registro per confermare che il valore esiste.
  • Script di Test di Regressione:

    # -------------------------------------------------
    # Proving – Simulazione di Persistenza Run‑Key del Registro
    # -------------------------------------------------
    try {
        # 1. Verificare che l'OS sia Windows
        if (-not $IsWindows) {
            throw "Lo script può essere eseguito solo su Windows."
        }
    
        # 2. Definire il percorso Run‑key e il payload dannoso
        $runKey = "HKCU:SoftwareMicrosoftWindowsCurrentVersionRun"
        $valueName = "ProvingMalware"
        $payloadPath = "$env:SystemRootSystem32notepad.exe"
    
        # 3. Scrivere il Run‑key dannoso (questo attiva l'Evento ID 4657)
        New-ItemProperty -Path $runKey -Name $valueName -Value $payloadPath -PropertyType String -Force |
            Out-Null
    
        Write-Host "[+] Run‑key $valueName aggiunto sotto $runKey puntando a $payloadPath"
    }
    catch {
        Write-Error "[!] $($_.Exception.Message)"
    }
  • Comandi di Pulizia:

    # Rimuovere il valore di persistenza simulata
    $runKey = "HKCU:SoftwareMicrosoftWindowsCurrentVersionRun"
    $valueName = "ProvingMalware"
    if (Test-Path "$runKey") {
        Remove-ItemProperty -Path $runKey -Name $valueName -ErrorAction SilentlyContinue
        Write-Host "[+] Run‑key $valueName ripulito"
    }