SOC Prime Bias: Crítico

08 Abr 2026 18:14

UAT-10608 Revelado: Roubo Automatizado de Credenciais em Larga Escala Contra Aplicações Web

Author Photo
Ruslan Mikhalov Chefe de Pesquisa de Ameaças na SOC Prime linkedin icon Seguir
UAT-10608 Revelado: Roubo Automatizado de Credenciais em Larga Escala Contra Aplicações Web
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

A Cisco Talos relata uma operação em larga escala que explora a vulnerabilidade React2Shell em aplicativos Next.js para roubar credenciais em massa. Os atacantes utilizam uma estrutura desenvolvida especialmente, chamada NEXUS Listener, para extrair segredos de alto valor de hosts comprometidos, incluindo variáveis de ambiente, chaves SSH, tokens de nuvem e Kubernetes, e credenciais de API. A Talos observou mais de 766 sistemas impactados em várias regiões e provedores de nuvem. Os dados roubados são enviados por callbacks HTTP para um endpoint C2 centralizado.

Investigação

A Talos analisou as cargas entregues via CVE-2025-55182, que soltam um script shell com nome aleatório em /tmp e o executam usando nohup para uma continuidade semelhante à persistência. O script executa módulos de coleta em várias etapas, cobrindo segredos de ambiente, material SSH, metadados de nuvem, tokens Kubernetes, detalhes do Docker e histórico de comandos. Os resultados são enviados de volta para o serviço NEXUS Listener pela porta 8080. Os investigadores revisaram a interface web do NEXUS Listener, armazenamento de dados no backend e telemetria de rede associada para validar os tipos de credenciais e a escala da coleta.

Mitigação

Corrija os desdobramentos do Next.js para remediar a exposição React2Shell. Imponha IMDSv2 nos endpoints de metadados da nuvem, rode qualuqer segredo potencialmente exposto imediatamente e separe o uso de chaves SSH por ambiente e função. Adicione controles RASP ou regras WAF projetadas para capturar tentativas de injeção estilo SSR. As equipes de nuvem devem habilitar a varredura de segredos, minimizar permissões de funções de instância e revisar a configuração do lado do servidor para prevenir a exposição acidental de variáveis de ambiente sensíveis.

Resposta

Alerta sobre scripts inesperados gerados por nohup sendo executados a partir de /tmp, especialmente arquivos com prefixo de ponto ou nomeados aleatoriamente, e monitore o tráfego HTTP de saída para destinos desconhecidos na porta 8080. Bloqueie URLs de exfiltração que correspondam a padrões de callback conhecidos do NEXUS Listener. Isole hosts impactados, revogue chaves/tokens comprometidos e realize uma revisão forense para entender quais dados foram coletados e onde foram utilizados. Implemente detecções de IDS para exploração React2Shell e restrinja o acesso ao mínimo necessário a metadados e armazenamento de segredos.

"graph TB %% Definições de classe definição de classe de técnica fill:#ffcc99 definição de classe de ferramenta fill:#99ccff definição de classe de malware fill:#ccffcc %% Definições de nó tech_initial_access["<b>Técnica</b> – <b>T1189 Comprometimento Driveu2011by</b><br/><b>Descrição</b>: O atacante ganha acesso inicial explorando uma vulnerabilidade em um site voltado para o público e executando código no sistema da vítima."] classe tech_initial_access técnica tool_react2shell["<b>Ferramenta</b> – <b>Nome</b>: React2Shell (CVEu20112025u201155182)<br/><b>Descrição</b>: Vulnerabilidade de execução remota de código pré-autenticação em aplicações Next.js."] classe tool_react2shell ferramenta tech_exploit_client["<b>Técnica</b> – <b>T1203 Exploração para Execução do Cliente</b><br/><b>Descrição</b>: Explora vulnerabilidades de software para executar código em um sistema alvo."] classe tech_exploit_client técnica tech_script_proxy["<b>Técnica</b> – <b>T1216 Execução de Proxy de Script do Sistema</b><br/><b>Descrição</b>: Usa scripts do sistema para proxy de execução de código malicioso."] classe tech_script_proxy técnica malware_loader["<b>Malware</b> – <b>Nome</b>: Script de Carregador<br/><b>Descrição</b>: Pequeno script shell colocado em /tmp com um nome aleatório e iniciado com nohup."] classe malware_loader malware tech_hide_artifacts["<b>Técnica</b> – <b>T1564.011 Ocultar Artefatos: Ignorar Interrupções de Processos</b><br/><b>Descrição</b>: Executa processos maliciosos em segundo plano para evitar a detecção."] classe tech_hide_artifacts técnica tech_network_logon["<b>Técnica</b> – <b>T1037.003 Script de Logon de Rede</b><br/><b>Descrição</b>: Configura um script de logon que é executado cada vez que um usuário faz logon na rede."] classe tech_network_logon técnica tech_private_keys["<b>Técnica</b> – <b>T1552.004 Chaves Privadas</b><br/><b>Descrição</b>: Procura e extrai chaves SSH privadas do sistema de arquivos."] classe tech_private_keys técnica tech_credentials_files["<b>Técnica</b> – <b>T1552.001 Credenciais em Arquivos</b><br/><b>Descrição</b>: Coleta credenciais armazenadas em arquivos como .env, authorized_keys, Docker configs, etc."] classe tech_credentials_files técnica tech_cloud_metadata["<b>Técnica</b> – <b>T1552.005 API de Metadados de Instância de Nuvem</b><br/><b>Descrição</b>: Consulta serviços de metadados do provedor de nuvem para obter credenciais temporárias de IAM."] classe tech_cloud_metadata técnica tech_container_api["<b>Técnica</b> – <b>T1552.007 API de Contêiner</b><br/><b>Descrição</b>: Acessa tokens de conta de serviço do Kubernetes no sistema de arquivos do pod."] classe tech_container_api técnica tech_remote_staging["<b>Técnica</b> – <b>T1074.002 Estágio de Dados Remotos</b><br/><b>Descrição</b>: Estagia dados coletados localmente antes da exfiltração."] classe tech_remote_staging técnica tech_automated_exfil["<b>Técnica</b> – <b>T1020 Exfiltração Automatizada</b><br/><b>Descrição</b>: Automatiza a exfiltração de dados através de processos scriptados."] classe tech_automated_exfil técnica tech_web_service["<b>Técnica</b> – <b>T1102 Serviço Web</b><br/><b>Descrição</b>: Utiliza serviços web legítimos para comunicação de comando e controle."] classe tech_web_service técnica tech_dead_drop["<b>Técnica</b> – <b>T1102.001 Resolver Dead Drop</b><br/><b>Descrição</b>: Armazena dados exfiltrados em um serviço web atuando como um local dead‑drop."] classe tech_dead_drop técnica tech_ssh["<b>Técnica</b> – <b>T1021.004 SSH</b><br/><b>Descrição</b>: Usa SSH para movimento lateral de serviço remoto."] classe tech_ssh técnica tech_ssh_hijack["<b>Técnica</b> – <b>T1563.001 Sequestro de SSH</b><br/><b>Descrição</b>: Reutiliza chaves privadas colhidas para sequestrar sessões SSH existentes."] classe tech_ssh_hijack técnica ferramenta_nexus["<b>Ferramenta</b> – <b>Nome</b>: NEXUS Listener<br/><b>Descrição</b>: GUI baseada na web que recebe dados colhidos e os exibe para operadores."] classe ferramenta_nexus ferramenta %% Conexões tech_initial_access –>|usa| ferramenta_react2shell ferramenta_react2shell –>|desencadeia| tech_exploit_client tech_exploit_client –>|habilita| tech_script_proxy tech_script_proxy –>|lança| malware_loader malware_loader –>|aplica| tech_hide_artifacts malware_loader –>|configura| tech_network_logon malware_loader –>|coleta| tech_private_keys malware_loader –>|coleta| tech_credentials_files malware_loader –>|consulta| tech_cloud_metadata malware_loader –>|acessa| tech_container_api malware_loader –>|estagia| tech_remote_staging tech_remote_staging –>|exfiltra por via| tech_automated_exfil tech_automated_exfil –>|usa| tech_web_service tech_automated_exfil –>|usa| tech_dead_drop tech_web_service –>|fornece C2 para| ferramenta_nexus ferramenta_nexus –>|habilita| tech_ssh tech_ssh –>|aumentado por| tech_ssh_hijack tech_ssh_hijack –>|reutiliza| tech_private_keys "

Fluxo de Ataque

Execução da Simulação

Pré-requisito: A Verificação Pré‑voo de Telemetria & Baseline deve ter sido aprovada.

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 a narrativa DEVEM refletir diretamente os TTPs identificados e visam gerar a telemetria exata esperada pela lógica de detecção.

  • Narrativa do Ataque e Comandos:
    Um atacante obteve uma cópia de um script de colheita de credenciais (.eba9ee1e4.sh) que tenta ler /etc/passwd, procurar por chaves SSH e realizar tentativas de login por força bruta contra um aplicativo web alvo. Para manter o script em execução após o término da sessão SSH e para evadir o monitoramento interativo, o atacante faz upload do script para /tmp/.eba9ee1e4.sh e o lança com nohup sh. Como a regra de detecção procura o comando de linha literal nohup sh /tmp/.eba9ee1e4.sh, esta execução exata gerará a telemetria esperada.

  • Script de Teste de Regressão:

    #!/bin/bash
    # -------------------------------------------------------------
    # Script de regressão para acionar a regra Sigma:
    #   detecção de `nohup sh /tmp/.eba9ee1e4.sh`
    # -------------------------------------------------------------
    
    # 1. Solta o script de aparência maliciosa (conteúdo inofensivo para teste)
    cat <<'EOF' > /tmp/.eba9ee1e4.sh
    #!/bin/bash
    echo "Colheita de credenciais simulada – nenhuma atividade real"
    EOF
    chmod +x /tmp/.eba9ee1e4.sh
    
    # 2. Executa o script com nohup em segundo plano (linha de comando exata)
    nohup sh /tmp/.eba9ee1e4.sh >/dev/null 2>&1 &
    
    echo "Simulação lançada – verifique o SIEM para detecção."
  • Comandos de Limpeza:

    # Encerre quaisquer instâncias em segundo plano remanescentes do script de teste
    pkill -f "/tmp/.eba9ee1e4.sh" || true
    
    # Remova o script de teste
    rm -f /tmp/.eba9ee1e4.sh
    
    echo "Limpeza concluída."