SOC Prime Bias: Critico

27 May 2026 15:26 UTC

Da appliance edge a compromissione aziendale: Intrusione Linux multi-fase tramite F5 e Confluence

Author Photo
SOC Prime Team linkedin icon Segui
Da appliance edge a compromissione aziendale: Intrusione Linux multi-fase tramite F5 e Confluence
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Riassunto

Un attore malevolo ha ottenuto l’accesso iniziale tramite un load balancer F5 BIG-IP esposto, quindi è passato a un server Linux interno e in seguito ha compromesso un’istanza interna di Atlassian Confluence sfruttando una vulnerabilità nota. Da lì, l’attaccante ha condotto una scoperta approfondita, rubato credenziali e lanciato attacchi di relay Kerberos e NTLM contro risorse di dominio Windows. L’operazione si è basata su una combinazione di strumenti open-source e script personalizzati per la scansione, il movimento laterale e l’esfiltrazione dei dati.

Indagine

La Ricerca sulla Sicurezza di Microsoft Defender ha tracciato l’intrusione dall’apparecchio BIG-IP compromesso al host Linux interno, dove gli investigatori hanno trovato uno strumento di scansione personalizzato scaricato da un indirizzo IP malevolo. L’analisi ha anche documentato l’uso di utility come Nmap, gowitness e Responder durante l’attacco. I ricercatori hanno ulteriormente scoperto il furto di credenziali dai file di configurazione di Confluence, seguito da attacchi di relay mirati al controller di dominio e ad altre risorse Windows.

Mitigazione

Le organizzazioni dovrebbero trattare i dispositivi ai margini esposti Internet come risorse di Livello-0, applicare una rigorosa gestione delle patch e del ciclo di vita per i dispositivi obsoleti o non supportati e limitare l’esposizione delle interfacce di gestione. Le applicazioni web interne dovrebbero essere rinforzate e aggiornate prontamente contro le vulnerabilità note. Controlli di autenticazione più forti, inclusa la disabilitazione di NTLM dove possibile e l’applicazione della firma SMB, possono aiutare a ridurre l’impatto degli attacchi basati su relay.

Risposta

I difensori dovrebbero segnalare accessi SSH insoliti da indirizzi IP non previsti, monitorare trasferimenti di file non autorizzati e l’esecuzione di utility di scansione conosciute, e bloccare binari ELF sospetti. I team di sicurezza dovrebbero anche ruotare le credenziali potenzialmente esposte, imporre il privilegio minimo per gli account di servizio e verificare l’integrità delle configurazioni di Confluence e Active Directory.

"graph TB %% Class definitions classDef action fill:#99ccff classDef technique fill:#c2e0ff classDef tool fill:#e6e6e6 classDef credential fill:#ffdd99 %% Step 1 u2013 Exploit Publicu2011Facing Application step1_exploit["<b>Tecnica</b> – <b>T1190 Exploit Publicu2011Facing Application</b><br/><b>Descrizione</b>: Un avversario sfrutta una vulnerabilità in un servizio esposto a Internet per ottenere l’accesso iniziale."] class step1_exploit technique %% Tool u2013 Vulnerable F5 BIGu2011IP tool_f5["<b>Strumento</b> – <b>Nome</b>: F5 BIGu2011IP load balancer (vulnerabile)<br/><b>CVE</b>: CVEu20112025u201153521"] class tool_f5 tool %% Step 2 u2013 Exploitation of Remote Services step2_remote["<b>Tecnica</b> – <b>T1210 Exploitation of Remote Services</b><br/><b>Descrizione</b>: Usare la stessa vulnerabilità per eseguire codice sul sistema bersaglio e muoversi lateralmente."] class step2_remote technique %% Step 3 u2013 SSH Remote Services step3_ssh["<b>Tecnica</b> – <b>T1021.004 SSH</b><br/><b>Descrizione</b>: Autenticarsi via SSH con un account privilegiato a un host Linux interno."] class step3_ssh technique %% Step 4 u2013 Remote Service Session Hijacking step4_hijack["<b>Tecnica</b> – <b>T1563.001 Remote Service Session Hijacking</b><br/><b>Descrizione</b>: Mantenere una sessione SSH interattiva dal vivo per l’esecuzione di comandi."] class step4_hijack technique %% Step 5 u2013 Active Scanning (IP Blocks) step5_ipscan["<b>Tecnica</b> – <b>T1595.001 Scanning IP Blocks</b><br/><b>Descrizione</b>: Eseguire script di Nmap per scoprire host attivi e porte aperte tra sottoreti interne."] class step5_ipscan technique %% Tool u2013 Nmap tool_nmap["<b>Strumento</b> – <b>Nome</b>: Nmap<br/><b>Scopo</b>: Scoperta di rete e scansione porte"] class tool_nmap tool %% Step 6 u2013 Active Scanning (Vulnerability) step6_vulnscan["<b>Tecnica</b> – <b>T1595.002 Vulnerability Scanning</b><br/><b>Descrizione</b>: Usare scanner personalizzati e gowitness per individuare applicazioni interne vulnerabili come Confluence."] class step6_vulnscan technique %% Tool u2013 gowitness tool_gowitness["<b>Strumento</b> – <b>Nome</b>: gowitness<br/><b>Scopo</b>: Catturare schermate dei servizi web per l’enumerazione"] class tool_gowitness tool %% Step 7 u2013 System Network Configuration Discovery step7_netconfig["<b>Tecnica</b> – <b>T1016 System Network Configuration Discovery</b><br/><b>Descrizione</b>: Raccogliere dettagli di configurazione di rete per mappare l’ambiente."] class step7_netconfig technique %% Step 8 u2013 File and Directory Discovery step8_filedisc["<b>Tecnica</b> – <b>T1083 File and Directory Discovery</b><br/><b>Descrizione</b>: Enumerare i file sull’host Linux compromesso e il server Confluence (es. server.xml, confluence.cfg.xml)."] class step8_filedisc technique %% Step 9 u2013 Unsecured Credentials step9_creds["<b>Tecnica</b> – <b>T1552 Unsecured Credentials</b><br/><b>Descrizione</b>: Estrarre credenziali di account di servizio dai file di configurazione."] class step9_creds technique %% Credential node cred_service["<b>Credenziale</b> – Credenziali di account di servizio acquisite"] class cred_service credential %% Step 10 u2013 Valid Accounts step10_valid["<b>Tecnica</b> – <b>T1078 Valid Accounts</b><br/><b>Descrizione</b>: Riutilizzare le credenziali di Confluence acquisite per autenticarsi ai servizi di Active Directory."] class step10_valid technique %% Step 11 u2013 Lateral Movement via Remote Services step11_lateral["<b>Tecnica</b> – <b>T1021 Remote Services</b><br/><b>Descrizione</b>: Tentare un movimento laterale basato su NTLM utilizzando strumenti di enumerazione e condivisione di file."] class step11_lateral technique %% Tools u2013 enum4linux, netexec, smbclient tool_enum4linux["<b>Strumento</b> – <b>Nome</b>: enum4linux<br/><b>Scopo</b>: Raccolta dati di enumerazione Windows"] class tool_enum4linux tool tool_netexec["<b>Strumento</b> – <b>Nome</b>: netexec<br/><b>Scopo</b>: Eseguire comandi su SMB"] class tool_netexec tool tool_smbclient["<b>Strumento</b> – <b>Nome</b>: smbclient<br/><b>Scopo</b>: Accedere a condivisioni SMB"] class tool_smbclient tool %% Step 12 u2013 Pass the Ticket (Kerberos/NTLM Relay) step12_passticket["<b>Tecnica</b> – <b>T1550.003 Pass the Ticket</b><br/><b>Descrizione</b>: Eseguire attacchi di relay Kerberos e NTLM (es. PetitPotam) contro i controller di dominio."] class step12_passticket technique %% Tool u2013 PetitPotam tool_petitpotam["<b>Strumento</b> – <b>Nome</b>: PetitPotam<br/><b>Scopo</b>: Relay NTLM tramite Microsoft RPC"] class tool_petitpotam tool %% Step 13 u2013 Steal or Forge Kerberos Tickets step13_kerb["<b>Tecnica</b> – <b>T1558 Steal or Forge Kerberos Tickets</b><br/><b>Descrizione</b>: Ottenere ticket Kerberos privilegiati per comprometter ulteriormente AD."] class step13_kerb technique %% Step 14 u2013 Hijack Execution Flow (File Permissions) step14_perm["<b>Tecnica</b> – <b>T1574.005 Hijack Execution Flow: Esecuzione dei Permessi delle File Installer Deboli</b><br/><b>Descrizione</b>: Aggiungere permessi eseguibili a binari ELF malevoli prima dell’esecuzione."] class step14_perm technique %% Step 15 u2013 Deploy Web Shell step15_webshell["<b>Tecnica</b> – <b>T1505.003 Componente Software Server: Web Shell</b><br/><b>Descrizione</b>: Distribuire una web shell sul server Confluence per la persistenza."] class step15_webshell technique %% Step 16 u2013 Application Layer Protocols (File Transfer & Web) step16_transfer["<b>Tecnica</b> – <b>T1071.002 Protocollo Livello Applicazione: Protocolli di Trasferimento File</b> & <b>T1071.001 Protocolli Web</b><br/><b>Descrizione</b>: Trasferire strumenti e payload tramite FTP e HTTP."] class step16_transfer technique %% Step 17 u2013 Exfiltration Over Alternative Protocol step17_exfil["<b>Tecnica</b> – <b>T1048 Exfiltration Over Alternative Protocol</b><br/><b>Descrizione</b>: Esfiltrare dati e strumenti usando protocolli applicativi non standard."] class step17_exfil technique %% Connections step1_exploit –>|exploits| tool_f5 step1_exploit –>|leads_to| step2_remote step2_remote –>|uses| step3_ssh step3_ssh –>|maintains| step4_hijack step4_hijack –>|enables| step5_ipscan step5_ipscan –>|uses| tool_nmap step5_ipscan –>|leads_to| step6_vulnscan step6_vulnscan –>|uses| tool_gowitness step6_vulnscan –>|leads_to| step7_netconfig step7_netconfig –>|leads_to| step8_filedisc step8_filedisc –>|leads_to| step9_creds step9_creds –>|produces| cred_service step9_creds –>|leads_to| step10_valid step10_valid –>|uses| cred_service step10_valid –>|enables| step11_lateral step11_lateral –>|uses| tool_enum4linux step11_lateral –>|uses| tool_netexec step11_lateral –>|uses| tool_smbclient step11_lateral –>|leads_to| step12_passticket step12_passticket –>|uses| tool_petitpotam step12_passticket –>|leads_to| step13_kerb step13_kerb –>|leads_to| step14_perm step14_perm –>|leads_to| step15_webshell step15_webshell –>|enables| step16_transfer step16_transfer –>|enables| step17_exfil %% Class assignments class step1_exploit,step2_remote,step3_ssh,step4_hijack,step5_ipscan,step6_vulnscan,step7_netconfig,step8_filedisc,step9_creds,step10_valid,step11_lateral,step12_passticket,step13_kerb,step14_perm,step15_webshell,step16_transfer,step17_exfil action class tool_f5,tool_nmap,tool_gowitness,tool_enum4linux,tool_netexec,tool_smbclient,tool_petitpotam tool class cred_service credential "

Flusso di Attacco

Rilevamenti

Esecuzione della Simulazione

Prerequisito: Il Controllo Pre-volo di Telemetria & Baseline deve essere superato.

Motivazione: Questa sezione descrive l’esecuzione precisa della tecnica avversaria (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrativa DEVONO riflettere direttamente i TTP identificati e mirano a generare la telemetria esatta prevista dalla logica di rilevamento. Esempi astratti o non correlati porteranno a diagnosi errate.

  • Narrazione dell’Attacco & Comandi:

    1. Fase 1 – Accesso SSH Privilegiato da F5 BIG‑IP

      • Un avversario ha ottenuto credenziali per l’account privilegiato account_privilegiato su un apparecchio F5 BIG‑IP.
      • Utilizzando il servizio SSH di gestione dell’apparecchio, l’attaccante apre una sessione sull’host Linux target, iniettando la variabile d’ambiente HOSTNAME=F5_BIG-IP_device per soddisfare il requisito di corrispondenza della SourceHostName quota.
    2. Fase 2 – Riconoscimento della Rete (nmap)

      • All’interno della sessione SSH, l’attaccante esegue nmap contro la sottorete interna per mappare gli host attivi e i servizi.
    3. Fase 3 – Riconoscimento dei Servizi Web (gowitness)

      • Dopo aver identificato i server web, l’attaccante invoca gowitness per catturare schermate degli endpoint HTTP/HTTPS.
    4. Evasione e Evitamento (Specifico per la Regola)

      • Nessun uso di ftplibdi Python; quindi la esclusione_ftp clausola non si attiva.
  • Script di Test di Regressione:

    #!/usr/bin/env bash
    #
    # Simulazione di Intrusione Multi‑Stage – attiva la regola Sigma.
    # Prerequisito: l'utente esecutore deve avere diritti sudo per impostare HOSTNAME per la sessione.
    #
    
    set -euo pipefail
    
    # -------------------------------------------------
    # Fase 1 – Simula login SSH privilegiato da F5
    # -------------------------------------------------
    export HOSTNAME="F5_BIG-IP_device"
    export LOGNAME="privileged_account"
    export USER="privileged_account"
    
    echo "[*] Simulazione sessione SSH privilegiata da ${HOSTNAME} come ${USER}"
    
    # -------------------------------------------------
    # Fase 2 – Esegui nmap (scoperta di rete)
    # -------------------------------------------------
    echo "[*] Esecuzione della scansione nmap sulla sottorete interna 10.0.0.0/24"
    nmap -sn 10.0.0.0/24
    
    # -------------------------------------------------
    # Fase 3 – Esegui gowitness (enumerazione servizi web)
    # -------------------------------------------------
    echo "[*] Esecuzione di gowitness contro gli host web scoperti"
    # Presupponiamo che gowitness sia installato e in $PATH
    gowitness file -f /tmp/discovered_web_hosts.txt
    
    echo "[+] Simulazione completata – l'allerta prevista dovrebbe essere generata."
  • Comandi di Pulizia:

    #!/usr/bin/env bash
    #
    # Pulizia per la simulazione di intrusione multi‑stadio
    #
    
    set -euo pipefail
    
    # Rimuovere i file temporanei creati da gowitness
    rm -f /tmp/discovered_web_hosts.txt
    
    # Rimuovere le variabili d'ambiente usate per la simulazione
    unset HOSTNAME LOGNAME USER
    
    echo "[*] Pulizia completata."