SOC Prime Bias: Alto

29 May 2026 07:16 UTC

Tracciamento di una Catena di Eliminazione del Ransomware Akira Attraverso i Log del Perimetro e degli Endpoint

Author Photo
SOC Prime Team linkedin icon Segui
Tracciamento di una Catena di Eliminazione del Ransomware Akira Attraverso i Log del Perimetro e degli Endpoint
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Riepilogo

L’articolo descrive un’intrusione recente collegata all’operazione del ransomware Akira. Gli attaccanti hanno ottenuto l’accesso iniziale forzando brutalmente un account SSL VPN locale disabilitato, per poi passare alla scoperta delle credenziali, al Kerberoasting e al movimento laterale tramite RDP. Prima di lanciare la crittografia, hanno cancellato i log e rimosso copie shadow. Notavelmente, l’intera sequenza era visibile attraverso i dati syslog del firewall e i log EVTX di Windows, senza fare affidamento sugli strumenti di rilevamento endpoint. Il rapporto evidenzia come la combinazione delle telemetrie perimetrali ed endpoint possa esporre l’attività del ransomware nelle sue fasi iniziali.

Indagine

L’indagine si è basata esclusivamente sui log del firewall SSL VPN e sui log eventi di Windows esportati dai controller di dominio e dai server membri. Gli ID evento inclusi 4624, 4688, 4769, 1102, e 7036 sono stati correlati per ricostruire l’intero kill chain dall’accesso iniziale fino all’impatto finale. Le tecniche osservate includevano stuffing delle credenziali, scoperta del dominio, Kerberoasting, autenticazione RDP, pulizia dei log e cancellazione delle copie shadow. Non sono state necessarie immagini di memoria o telemetria EDR per mappare l’intrusione.

Mitigazione

Il rapporto raccomanda di rafforzare la sicurezza degli accessi remoti, di imporre l’autenticazione a più fattori, di rimuovere gli account disabilitati dalle liste di accesso del firewall e di potenziare le politiche di blocco dell’autenticazione. Consiglia anche di abilitare l’auditing dettagliato dei processi con l’ID evento 4688 su tutti i sistemi, di aumentare la conservazione dei log di sicurezza e di inoltrare i log critici a un archivio esterno. I contenuti di rilevamento dovrebbero coprire specificamente i ticket Kerberos basati su RC4, vssadmin cancellazione delle copie shadow e comandi PowerShell inattesi utilizzando - EncodedCommand. La sincronizzazione del tempo coerente in tutta l’infrastruttura è essenziale anche per una correlazione affidabile.

Risposta

Quando appare uno degli indicatori identificati, i responder dovrebbero isolare immediatamente l’account VPN compromesso e mettere in quarantena i sistemi interessati. I log rilevanti del firewall e EVTX dovrebbero essere conservati, le credenziali reimpostate, gli account compromessi disabilitati e le copie shadow ripristinate da backup puliti, dove disponibili. Dovrebbe essere eseguito un esame forense completo per identificare eventuali persistenze aggiuntive o attività successive, mentre le procedure di risposta al ransomware vengono attivate. Gli stakeholder dovrebbero essere informati tempestivamente e si dovrebbe considerare la divulgazione pubblica, ove richiesto.

"graph TB %% Class definitions classDef phase fill:#ffcc99 classDef tool fill:#c2f0c2 %% Node definitions phase_initial_access["<b>Fase</b> – Accesso Iniziale<br/><b>Tecnica</b> – T1133 Servizi Remoti Esterni<br/><b>Descrizione</b>: Credential stuffing contro SSL VPN usando un account locale compromesso."] class phase_initial_access phase tech_valid_accounts["<b>Tecnica</b> – T1078 Account Valid<br/><b>Descrizione</b>: Uso di credenziali rubate per accedere alla VPN."] class tech_valid_accounts phase phase_discovery["<b>Fase</b> – Scoperta<br/><b>Tecnica</b> – T1482 Scoperta di Fiducia del Dominio<br/><b>Descrizione</b>: Enumerare le fiducie del dominio usando nltest."] class phase_discovery phase tech_account_discovery["<b>Tecnica</b> – T1087 Scoperta degli Account<br/><b>Descrizione</b>: Enumerare gruppi e utenti tramite net.exe e whoami."] class tech_account_discovery phase phase_credential_access["<b>Fase</b> – Accesso alle Credenziali<br/><b>Tecnica</b> – T1558.003 Kerberoasting<br/><b>Descrizione</b>: Richiedere ticket di servizio RC4 per decifrare le password degli account di servizio."] class phase_credential_access phase phase_lateral_movement["<b>Fase</b> – Movimento Laterale<br/><b>Tecnica</b> – T1021.001 Servizi Remoti Protocollo Desktop Remoto<br/><b>Descrizione</b>: Usare RDP per spostarsi lateralmente verso server e controller di dominio."] class phase_lateral_movement phase phase_persistence["<b>Fase</b> – Persistenza e Escalation dei Privilegi<br/><b>Tecnica</b> – T1136 Creare Account<br/><b>Descrizione</b>: Creare un nuovo account di servizio in una OU non predefinita e aggiungerlo a gruppi privilegiati."] class phase_persistence phase phase_execution["<b>Fase</b> – Esecuzione<br/><b>Tecnica</b> – T1059.001 PowerShell<br/><b>Descrizione</b>: Eseguire script PowerShell con -EncodedCommand.<br/><b>Tecnica</b> – T1059.003 Shell dei Comandi di Windows<br/><b>Descrizione</b>: Usare cmd.exe per vari comandi."] class phase_execution phase phase_defense_evasion["<b>Fase</b> – Evasione della Difesa<br/><b>Tecnica</b> – T1070.001 Cancellare i Log degli Eventi di Windows<br/><b>Descrizione</b>: Cancellare i log degli eventi di Windows.<br/><b>Tecnica</b> – T1562 Indebolire le Difese<br/><b>Descrizione</b>: Fermare i servizi di sicurezza usando sc.exe o net stop."] class phase_defense_evasion phase phase_impact["<b>Fase</b> – Impatto<br/><b>Tecnica</b> – T1490 Inibire il Recupero del Sistema<br/><b>Descrizione</b>: Cancellare copie shadow con vssadmin.<br/><b>Tecnica</b> – T1565.001 Manipolazione dei Dati Archiviati<br/><b>Descrizione</b>: Cifrare file su disco."] class phase_impact phase tool_ssl_vpn["<b>Strumento</b> – Client SSL VPN"] class tool_ssl_vpn tool tool_nltest["<b>Strumento</b> – Utility nltest"] class tool_nltest tool tool_net["<b>Strumento</b> – Utility net.exe"] class tool_net tool tool_whoami["<b>Strumento</b> – Comando whoami"] class tool_whoami tool tool_powershell["<b>Strumento</b> – PowerShell"] class tool_powershell tool tool_cmd["<b>Strumento</b> – cmd.exe"] class tool_cmd tool tool_sc["<b>Strumento</b> – Comando sc.exe"] class tool_sc tool tool_vssadmin["<b>Strumento</b> – Utility vssadmin"] class tool_vssadmin tool %% Connections showing flow phase_initial_access –>|conduce a| tech_valid_accounts tech_valid_accounts –>|conduce a| phase_discovery phase_discovery –>|conduce a| tech_account_discovery tech_account_discovery –>|conduce a| phase_credential_access phase_credential_access –>|conduce a| phase_lateral_movement phase_lateral_movement –>|conduce a| phase_persistence phase_persistence –>|conduce a| phase_execution phase_execution –>|conduce a| phase_defense_evasion phase_defense_evasion –>|conduce a| phase_impact %% Tool usage edges phase_initial_access –>|usa| tool_ssl_vpn phase_discovery –>|usa| tool_nltest phase_discovery –>|usa| tool_net phase_discovery –>|usa| tool_whoami phase_execution –>|usa| tool_powershell phase_execution –>|usa| tool_cmd phase_defense_evasion –>|usa| tool_sc phase_impact –>|usa| tool_vssadmin "

Flusso di Attacco

Esecuzione della Simulazione

Prerequisito: La Verifica di Telemetria & Base Preflight deve essere superata.

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 l’esatta telemetria prevista dalla logica di rilevamento.

  • Narrazione dell’Attacco & Comandi:

    1. Ricognizione (T1087): L’attaccante enumera i nomi utente da un sistema interno compromesso e crea una lista per il credential‑stuffing (esempio, users.txt).
    2. Ciclo di Forza Bruta (T1021.001 / T1078.001): Utilizzando un intervallo di IP esterni compromessi appartenente a un noto fornitore di hosting (per esempio, 203.0.113.45), l’attaccante lancia una rapida serie di tentativi di autenticazione SSLVPN falliti (≥ 50) in un’ora. Ogni tentativo usa una password diversa dalla lista, prendendo di mira un singolo account vittima.
    3. Credential Stuffing Riuscito: Dopo aver esaurito la lista, viene trovata una password corretta; l’attaccante accede con successo dallo stesso IP, soddisfacendo la clausola “successful_auth”.
    4. Evasione (Opzionale – T1070.001): L’attaccante cancella il registro di Sicurezza sull’apparato VPN dopo l’accesso riuscito per nascondere le tracce (non coperto da questa regola).
  • Script di Test di Regressione: Script Bash utilizzando curl (funziona su box Linux dell’attaccante). Regola le variabili per l’ambiente reale.

    #!/usr/bin/env bash
    # ------------------------------------------------------------------
    # Simulare forza bruta su SSLVPN / credential stuffing per attivare la regola Sigma
    # ------------------------------------------------------------------
    
    VPN_ENDPOINT="https://vpn.example.com/remote/auth"
    USERNAME="victim_user"
    PASSWORD_LIST="passwords.txt"   # una password per riga
    SOURCE_IP="203.0.113.45"        # deve essere instradabile alla VPN
    
    # Funzione per eseguire un singolo tentativo di accesso
    attempt_login() {
        local pwd="$1"
        # Usando --silent per evitare il disordine; --write-out per catturare il codice HTTP
        curl --silent --output /dev/null --write-out "%{http_code}" 
            --user "$USERNAME:$pwd" 
            "$VPN_ENDPOINT"
    }
    
    # 1. Genera 55 tentativi falliti (frequenza ~1/sec)
    echo "Inizio dei tentativi falliti..."
    count=0
    while IFS= read -r pwd && [ $count -lt 55 ]; do
        http_code=$(attempt_login "$pwd")
        echo "Tentativo $((count+1)): HTTP $http_code (previsto 401)"
        ((count++))
        sleep 1   # mantieni entro la finestra di 1 ora
    done < "$PASSWORD_LIST"
    
    # 2. Accesso riuscito con password corretta (supponiamo l'ultima riga nel file)
    echo "Effettuo accesso riuscito..."
    correct_pwd=$(tail -n1 "$PASSWORD_LIST")
    http_code=$(attempt_login "$correct_pwd")
    echo "Tentativo riuscito: HTTP $http_code (previsto 200)"
    
    echo "Simulazione completa."
  • Comandi di Pulizia: Rimuovi eventuali file temporanei e ripristina il rate‑limiting del firewall (se alterato).

    #!/usr/bin/env bash
    # Pulizia dopo simulazione di forza bruta su SSLVPN
    
    # Elimina la lista di password temporanea se è stata creata al volo
    if [ -f passwords.txt ]; then
        shred -u passwords.txt
        echo "Eliminato passwords.txt"
    fi
    
    # Facoltativamente, ripristina eventuali regole temporanee iptables utilizzate per i test
    sudo iptables -D INPUT -s 203.0.113.45 -j DROP 2>/dev/null || true
    echo "Pulizia terminata."