SOC Prime Bias: Crítico

27 May 2026 15:26 UTC

Do dispositivo de borda à comprometimento empresarial: Intrusão Linux em múltiplos estágios via F5 e Confluence

Author Photo
SOC Prime Team linkedin icon Seguir
Do dispositivo de borda à comprometimento empresarial: Intrusão Linux em múltiplos estágios via F5 e Confluence
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

Um agente de ameaça primeiro obteve acesso através de um balanceador de carga F5 BIG-IP exposto, depois se moveu para um servidor interno Linux e posteriormente comprometeu uma instância interna do Atlassian Confluence explorando uma vulnerabilidade conhecida. A partir daí, o atacante conduziu uma descoberta ampla, roubou credenciais e lançou ataques de retransmissão Kerberos e NTLM contra ativos de domínio Windows. A operação dependia de uma mistura de ferramentas de código aberto e scripts personalizados para varredura, movimento lateral e exfiltração de dados.

Investigação

A Microsoft Defender Security Research rastreou a intrusão desde o dispositivo BIG-IP comprometido até o host interno Linux, onde os investigadores encontraram uma ferramenta de varredura personalizada baixada de um endereço IP malicioso. A análise também documentou o uso de utilitários como Nmap, gowitness e Responder durante o ataque. Pesquisadores descobriram ainda o roubo de credenciais dos arquivos de configuração do Confluence, seguido por ataques de retransmissão direcionados ao controlador de domínio e outros recursos do Windows.

Mitigação

As organizações devem tratar os aparelhos de borda voltados para a internet como ativos de Tier-0, aplicar um rigoroso gerenciamento de patches e de ciclo de vida para dispositivos antigos ou sem suporte, e limitar a exposição de interfaces de gerenciamento. Aplicações web internas devem ser reforçadas e atualizadas prontamente contra vulnerabilidades conhecidas. Controles de autenticação mais fortes, incluindo a desativação de NTLM sempre que possível e a aplicação de assinatura SMB, podem ajudar a reduzir o impacto dos ataques baseados em retransmissão.

Resposta

Defensores devem alertar sobre logins SSH incomuns de endereços IP inesperados, monitorar transferências de arquivos não autorizadas e a execução de utilitários de varredura conhecidos, e bloquear binários ELF suspeitos. As equipes de segurança também devem rodar credenciais potencialmente expostas, aplicar o princípio do menor privilégio para contas de serviço e verificar a integridade das configurações do Confluence e do 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>Technique</b> – <b>T1190 Exploit Publicu2011Facing Application</b><br/><b>Description</b>: Adversário explora uma vulnerabilidade em um serviço exposto à Internet para obter acesso inicial."] class step1_exploit technique %% Tool u2013 Vulnerable F5 BIGu2011IP tool_f5["<b>Tool</b> – <b>Name</b>: Balanceador de carga F5 BIGu2011IP (vulnerável)<br/><b>CVE</b>: CVEu20112025u201153521"] class tool_f5 tool %% Step 2 u2013 Exploitation of Remote Services step2_remote["<b>Technique</b> – <b>T1210 Exploitation of Remote Services</b><br/><b>Description</b>: Use a mesma vulnerabilidade para executar código no sistema alvo e mover lateralmente."] class step2_remote technique %% Step 3 u2013 SSH Remote Services step3_ssh["<b>Technique</b> – <b>T1021.004 SSH</b><br/><b>Description</b>: Autenticar via SSH com uma conta privilegiada para um host interno Linux."] class step3_ssh technique %% Step 4 u2013 Remote Service Session Hijacking step4_hijack["<b>Technique</b> – <b>T1563.001 Remote Service Session Hijacking</b><br/><b>Description</b>: Manter uma sessão SSH interativa ao vivo para execução de comandos."] class step4_hijack technique %% Step 5 u2013 Active Scanning (IP Blocks) step5_ipscan["<b>Technique</b> – <b>T1595.001 Scanning IP Blocks</b><br/><b>Description</b>: Executar scripts Nmap para descobrir hosts ativos e portas abertas em sub-redes internas."] class step5_ipscan technique %% Tool u2013 Nmap tool_nmap["<b>Tool</b> – <b>Name</b>: Nmap<br/><b>Purpose</b>: Descoberta de rede e varredura de portas"] class tool_nmap tool %% Step 6 u2013 Active Scanning (Vulnerability) step6_vulnscan["<b>Technique</b> – <b>T1595.002 Vulnerability Scanning</b><br/><b>Description</b>: Usar scanner personalizado e gowitness para localizar aplicações internas vulneráveis, como Confluence."] class step6_vulnscan technique %% Tool u2013 gowitness tool_gowitness["<b>Tool</b> – <b>Name</b>: gowitness<br/><b>Purpose</b>: Capturar capturas de tela de serviços web para enumeração"] class tool_gowitness tool %% Step 7 u2013 System Network Configuration Discovery step7_netconfig["<b>Technique</b> – <b>T1016 System Network Configuration Discovery</b><br/><b>Description</b>: Coletar detalhes de configuração de rede para mapear o ambiente."] class step7_netconfig technique %% Step 8 u2013 File and Directory Discovery step8_filedisc["<b>Technique</b> – <b>T1083 File and Directory Discovery</b><br/><b>Description</b>: Enumerar arquivos no host Linux comprometido e no servidor Confluence (por exemplo, server.xml, confluence.cfg.xml)."] class step8_filedisc technique %% Step 9 u2013 Unsecured Credentials step9_creds["<b>Technique</b> – <b>T1552 Unsecured Credentials</b><br/><b>Description</b>: Extrair credenciais de conta de serviço dos arquivos de configuração."] class step9_creds technique %% Credential node cred_service["<b>Credential</b> – Credenciais de conta de serviço coletadas"] class cred_service credential %% Step 10 u2013 Valid Accounts step10_valid["<b>Technique</b> – <b>T1078 Valid Accounts</b><br/><b>Description</b>: Reu2011utilizar credenciais coletadas do Confluence para autenticação em serviços do Active Directory."] class step10_valid technique %% Step 11 u2013 Lateral Movement via Remote Services step11_lateral["<b>Technique</b> – <b>T1021 Remote Services</b><br/><b>Description</b>: Tentar movimento lateral baseado em NTLM utilizando ferramentas de enumeração e compartilhamento de arquivos."] class step11_lateral technique %% Tools u2013 enum4linux, netexec, smbclient tool_enum4linux["<b>Tool</b> – <b>Name</b>: enum4linux<br/><b>Purpose</b>: Coletar dados de enumeração do Windows"] class tool_enum4linux tool tool_netexec["<b>Tool</b> – <b>Name</b>: netexec<br/><b>Purpose</b>: Executar comandos sobre SMB"] class tool_netexec tool tool_smbclient["<b>Tool</b> – <b>Name</b>: smbclient<br/><b>Purpose</b>: Acessar compartilhamentos SMB"] class tool_smbclient tool %% Step 12 u2013 Pass the Ticket (Kerberos/NTLM Relay) step12_passticket["<b>Technique</b> – <b>T1550.003 Pass the Ticket</b><br/><b>Description</b>: Realizar ataques de retransmissão Kerberos e NTLM (ex., PetitPotam) contra controladores de domínio."] class step12_passticket technique %% Tool u2013 PetitPotam tool_petitpotam["<b>Tool</b> – <b>Name</b>: PetitPotam<br/><b>Purpose</b>: Retransmissão NTLM via Microsoft RPC"] class tool_petitpotam tool %% Step 13 u2013 Steal or Forge Kerberos Tickets step13_kerb["<b>Technique</b> – <b>T1558 Steal or Forge Kerberos Tickets</b><br/><b>Description</b>: Obter tickets Kerberos privilegiados para comprometer ainda mais o AD."] class step13_kerb technique %% Step 14 u2013 Hijack Execution Flow (File Permissions) step14_perm["<b>Technique</b> – <b>T1574.005 Hijack Execution Flow: Executable Installer File Permissions Weakness</b><br/><b>Description</b>: Adicionar permissões executáveis a binários ELF maliciosos antes da execução."] class step14_perm technique %% Step 15 u2013 Deploy Web Shell step15_webshell["<b>Technique</b> – <b>T1505.003 Server Software Component: Web Shell</b><br/><b>Description</b>: Implantar uma web shell no servidor Confluence para persistência."] class step15_webshell technique %% Step 16 u2013 Application Layer Protocols (File Transfer & Web) step16_transfer["<b>Technique</b> – <b>T1071.002 Application Layer Protocol: File Transfer Protocols</b> & <b>T1071.001 Web Protocols</b><br/><b>Description</b>: Transferir ferramentas e payloads via FTP e HTTP."] class step16_transfer technique %% Step 17 u2013 Exfiltration Over Alternative Protocol step17_exfil["<b>Technique</b> – <b>T1048 Exfiltration Over Alternative Protocol</b><br/><b>Description</b>: Exfiltrar dados e ferramentas usando protocolos de aplicação não padrão."] 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 "

Fluxo de Ataque

Detecções

Possíveis Comunicações de C2 Sobre HTTP Para IP Direto Com Porta Incomum (via proxy)

Equipe da SOC Prime
26 de maio de 2026

Possível Manipulação de Strings Codificadas em Base64 (via linha de comando)

Equipe da SOC Prime
26 de maio de 2026

Permissões Perigosas para um Binário/Script/Pasta foram definidas (via linha de comando)

Equipe da SOC Prime
26 de maio de 2026

Envio/Download Remoto de Arquivos via Ferramentas Padrão (via linha de comando)

Equipe da SOC Prime
26 de maio de 2026

IOCs (HashSha256) para detectar: Da borda do aparelho à corrupção empresarial: Intrusão Multi-estágio Linux via F5 e Confluence

Regras de IA da SOC Prime
27 de maio de 2026

IOCs (SourceIP) para detectar: Da borda do aparelho à corrupção empresarial: Intrusão Multi-estágio Linux via F5 e Confluence

Regras de IA da SOC Prime
27 de maio de 2026

IOCs (Arquivos) para detectar: Da borda do aparelho à corrupção empresarial: Intrusão Multi-estágio Linux via F5 e Confluence

Regras de IA da SOC Prime
27 de maio de 2026

IOCs (URL) para detectar: Da borda do aparelho à corrupção empresarial: Intrusão Multi-estágio Linux via F5 e Confluence

Regras de IA da SOC Prime
27 de maio de 2026

IOCs (DestinationIP) para detectar: Da borda do aparelho à corrupção empresarial: Intrusão Multi-estágio Linux via F5 e Confluence

Regras de IA da SOC Prime
27 de maio de 2026

Intrusão Multi-estágio Linux via F5 BIG-IP e Confluence [Criação de Processos Linux]

Regras de IA da SOC Prime
27 de maio de 2026

Execução da Simulação

Pré-requisito: O Teste de Pré-embarque de Telemetria e Base deve ter sido aprovado.

Racional: Esta seção detalha a execução precisa da técnica do adversário (TTP) projetada para acionar a regra de detecção. Os comandos e o enredo DEVEM refletir diretamente os TTPs identificados e visam gerar a telemetria exata esperada pela lógica de detecção. Exemplos abstratos ou não relacionados levarão a diagnósticos incorretos.

  • Narrativa do Ataque & Comandos:

    1. Estágio 1 – Acesso SSH privilegiado do F5 BIG‑IP

      • Um adversário obteve credenciais para a conta privilegiada conta_privilegiada em um dispositivo F5 BIG‑IP.
      • Usando o serviço SSH de gerenciamento do dispositivo, o atacante abre uma sessão para o host Linux alvo, injetando a variável de ambiente HOSTNAME=F5_BIG-IP_device para satisfazer a correspondência da regra SourceHostName .
    2. Estágio 2 – Reconhecimento de Rede (nmap)

      • Dentro da sessão SSH, o atacante executa nmap contra a sub-rede interna para mapear hosts e serviços ativos.
    3. Estágio 3 – Reconhecimento de Serviço Web (gowitness)

      • Após identificar servidores web, o atacante invoca gowitness para capturar capturas de tela de endpoints HTTP/HTTPS.
    4. Evasão de Detecção (Específico da Regra)

      • Não usar o ftplibdo Python; assim a cláusula exclusion_ftp não é ativada.
  • Script de Teste de Regressão:

    #!/usr/bin/env bash
    #
    # Simulação de Intrusão Multi-estágio – aciona a regra Sigma.
    # Pré-requisito: o usuário executante deve ter direitos sudo para definir HOSTNAME para a sessão.
    #
    
    set -euo pipefail
    
    # -------------------------------------------------
    # Estágio 1 – Simular login SSH privilegiado do F5
    # -------------------------------------------------
    export HOSTNAME="F5_BIG-IP_device"
    export LOGNAME="privileged_account"
    export USER="privileged_account"
    
    echo "[*] Simulando sessão SSH privilegiada de ${HOSTNAME} como ${USER}"
    
    # -------------------------------------------------
    # Estágio 2 – Executar nmap (descoberta de rede)
    # -------------------------------------------------
    echo "[*] Executando varredura nmap na sub-rede interna 10.0.0.0/24"
    nmap -sn 10.0.0.0/24
    
    # -------------------------------------------------
    # Estágio 3 – Executar gowitness (enumeração de serviço web)
    # -------------------------------------------------
    echo "[*] Executando gowitness contra hosts web descobertos"
    # Assume que gowitness está instalado e no $PATH
    gowitness file -f /tmp/discovered_web_hosts.txt
    
    echo "[+] Simulação completa – o alerta esperado deve ser gerado."
  • Comandos de Limpeza:

    #!/usr/bin/env bash
    #
    # Limpeza para a simulação de intrusão multi-estágio
    #
    
    set -euo pipefail
    
    # Remover arquivos temporários criados pelo gowitness
    rm -f /tmp/discovered_web_hosts.txt
    
    # Desconfigurar variáveis de ambiente usadas na simulação
    unset HOSTNAME LOGNAME USER
    
    echo "[*] Limpeza completa."