CVE-2026-88771 e CVE-2026-88772 Explorados em Ataques NetScaler
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
Os agentes de ameaça estão explorando vulnerabilidades de dia zero CVE-2026-88771 e CVE-2026-88772 em appliances NetScaler ADC e Gateway. As falhas permitem a execução remota de código e corrupção de memória, permitindo que atacantes implantem web shells PHP ou .deb para acesso inicial e persistência. A campanha também usa técnicas avançadas como envenenamento de logs e rotação frequente de infraestrutura.
Investigação
A Unit 42 identificou atividades pré-divulgação envolvendo fingerprinting de versão e duas técnicas separadas de entrega de web shells. Pesquisadores descobriram uma cadeia de exploração DTLS que solta pacotes .deb e um processo de injeção de comando em três estágios que utiliza envenenamento de logs em scripts Perl. Analistas também recuperaram um web shell PHP que usa criptografia RC4 para comunicações C2.
Mitigação
As organizações devem atualizar imediatamente o software Citrix para as versões mais recentes disponíveis para remediar as vulnerabilidades identificadas. Sistemas vulneráveis devem ser isolados onde possível, e as configurações do Apache devem ser revisadas para modificações não autorizadas. Desativar execuções PHP globalmente com php_flag engine off também é recomendado como uma medida adicional de endurecimento.
Resposta
Quando se suspeita de comprometimento, capture um snapshot da instância NetScaler VPX, dados de syslog remoto e um pacote de suporte técnico. Realize um core dump do mecanismo de pacotes e investigue conexões de saída inesperadas ou sessões administrativas anômalas. Verifique a integridade de /etc/httpd.conf e inspecione diretórios acessíveis via web para arquivos não autorizados ou suspeitos.
Fluxo de Ataque
Detecções
Possível Tentativa de Exploração CVE-2026-88771 (Injeção de Comando PreAuth do Citrix NetScaler) (via servidor web)
Possível Tentativa de Exploração CVE-2026-88772 (Overflow de Memória do Citrix NetScaler no Manuseio do Protocolo DTLS) (via syslog)
Arquivo Oculto Foi Criado em Host Linux (via evento_arquivo)
IOCs (HashSha256) para detectar: Exploração de Dia Zero de Dispositivos NetScaler
IOCs (HashMd5) para detectar: Exploração de Dia Zero de Dispositivos NetScaler
IOCs (SourceIP) para detectar: Exploração de Dia Zero de Dispositivos NetScaler
IOCs (DestinationIP) para detectar: Exploração de Dia Zero de Dispositivos NetScaler
Detectar Exploração das Vulnerabilidades CVE-2026-88771 e CVE-2026-88772 do NetScaler [Servidor Web]
Execução de Simulação
-
Narrativa do Ataque & Comandos: O adversário visa explorar as vulnerabilidades do NetScaler (CVE-2026-88771/72) para obter Execução Remota de Código (RCE). O atacante primeiro tenta identificar o serviço usando um User-Agent malicioso conhecido (
pitboss PPE perdeu muitos sinais de vida). Em seguida, eles buscam por diretórios vulneráveis como/vpn/scripts/linux/. Finalmente, eles tentam fazer upload de um web shell enviando uma solicitação POST contendo a string de assinatura.deb web shelldentro do corpo para contornar filtros tradicionais de extensão de arquivo, mantendo-se detectável pela assinatura específica. -
Script de Teste de Regressão:
#!/bin/bash # Script de simulação para acionar a regra de detecção de vulnerabilidade NetScaler TARGET="http://<TARGET_IP>" echo "[+] Iniciando Simulação: Acionando Detecção de CVE do NetScaler..." # 1. Acionar via User-Agent echo "[*] Testando acionador User-Agent..." curl -s -A "pitboss PPE perdeu muitos sinais de vida" "$TARGET/" > /dev/null # 2. Acionar via Caminho Suspeito echo "[*] Testando acionador de Caminho Suspeito..." curl -s -A "Mozilla/5.0" "$TARGET/vpn/scripts/linux/test.php" > /dev/null # 3. Acionar via Palavra-Chave no Corpo echo "[*] Testando acionador de Palavra-Chave no Corpo..." curl -s -X POST -A "Mozilla/5.0" -d "payload=exploit_data_here_.deb web shell_end" "$TARGET/admin_ui/common/css/ns/ui.css" > /dev/null echo "[+] Simulação completa. Verifique alertas no SIEM." -
Comandos de Limpeza:
# Nenhum arquivo persistente é criado por esta simulação, pois ela apenas envia solicitações de rede. # Para limpar os logs, simplesmente aguarde o período de retenção/rotação dos logs. echo "[+] Nenhuma limpeza necessária: Simulação foi não persistente."