Mitigação do CitrixBleed 2 (CVE-2025-5777): divulgação de memória do NetScaler com o App & API Protector
Na sexta, dia 4 de julho de 2025, foram publicados detalhes sobre uma vulnerabilidade de divulgação de memória que afeta os dispositivos Citrix NetScaler ADC e Gateway. Esta é uma falha de pré-autenticação que permite que atacantes criem solicitações maliciosas que vazam memória não inicializada de dispositivos NetScaler afetados.
A vulnerabilidade foi originalmente divulgada pelos clientes Citrix em 17 de junho de 2025 e, desde então, as organizações de pesquisa têm mostrado atividade em torno da falha, indicadores de comprometimento e uma prova de conceito de exploração. Mesmo com a correção rápida dos dispositivos afetados, é importante verificar se houve exposição agora que a prova de conceito é pública. Essa falha pode ter consequências terríveis, considerando que os dispositivos afetados podem ser configurados como VPNs, proxies ou servidores virtuais AAA. Tokens de sessão e outros dados confidenciais podem ser expostos, permitindo potencialmente o acesso não autorizado a aplicações internas, VPNs, redes de data center e redes internas.
Dispositivos e versões afetados:
- NetScaler ADC e NetScaler Gateway 14,1 ANTES DE 14,1-43,56
- NetScaler ADC e NetScaler Gateway 13,1 ANTES DE 13,1-58,32
- NetScaler ADC 13.1-FIPS e NDcPP ANTES DE 13.1-37.235-FIPS e NDcPP
- NETSCALER ADC 12.1-FIPS ANTES DE 12.1-55,328-FIPS
Desde a divulgação da vulnerabilidade, observamos um aumento drástico do tráfego de scanners de vulnerabilidade e de agentes de ameaças adicionais em busca de alvos vulneráveis. Os clientes do App & API Protector estão protegidos por uma regra rápida especial (3000967) que foi lançada para abordar esse CVE.
Observe que há alguns outros CVEs Citrix, como segue:
CVE‑2025‑6543: Trata-se de um estouro de memória não autenticado no Citrix NetScaler ADC/Gateway (modo VPN/AAA), que pode interromper o fluxo de controle, causar negação de serviço ou até mesmo levar à execução remota de código. Mas ainda não há PoC público disponível.
CVE‑2025‑5349: Isso está relacionado a uma falha inadequada de controle de acesso que afeta a Interface de gerenciamento do NetScaler, o que pode levar à execução de ações administrativas não autorizadas. Não há nenhuma PoC pública conhecida atualmente.
Detalhes da vulnerabilidade
O código subjacente do Citrix NetScaler é escrito em C ou C++, e a vulnerabilidade está na função de autenticação, que processa os parâmetros de login.
A causa raiz é o uso de uma variável de login não inicializada (destinada a armazenar detalhes de nome de usuário) combinada com tratamento inadequado de memória, falta de validação de entrada e falta de tratamento de erros na lógica de autenticação do Citrix NetScaler. Como C e C++ não inicializam automaticamente as variáveis para zero, null ou algum outro valor especificado, as variáveis não inicializadas podem apontar para espaços de memória de pilha aleatórios e permitir que os atacantes acessem dados não intencionais/confidenciais que residem neste espaço de memória — essencialmente dados sobrantes de operações ou processamentos anteriores.
Essa vulnerabilidade atinge o caminho de URL /p/u/doAuthentication.do e não exige autenticação, tornando-o muito vulnerável a ataques, sem necessidade de nenhuma condição prévia. Essa combinação de falhas permitiu que invasores não autenticados vazassem conteúdo de memória confidencial, e alguns agentes de ameaças já começaram a explorá-lo. O impacto total e o escopo das vítimas e organizações afetadas ainda não são claros.
Explorar a vulnerabilidade
Uma solicitação POST legítima para executar autenticação inclui nomes de parâmetros muito esperados, como login, passwd e parâmetros adicionais com valores correspondentes (Figura 1).
Em uma tentativa de exploração, também haveria uma carga controlável notavelmente grande de invasores no cabeçalho do usuário-agente, além de um corpo HTTP que poderia incluir somente a string de login (Figura 2). Isso torna mais trivial a exploração.
Por que se chama CitrixBleed?
O termo "CitrixBleed" é usado porque o vazamento de memória pode ser disparado repetidamente enviando a mesma carga útil, e cada tentativa poe vazar uma nova parte de memória de pilha, efetivamente "sangrando" informações confidenciais. O cabeçalho longo de usuário-agente é usado para injetar um padrão reconhecível na pilha. Ao inundar a memória com uma string aleatória grande o suficiente, como THR-WAF-RESEARCH repetidamente, o invasor pode garantir a quantidade de bytes de pilha não inicializados que serão vazados. Esses característicos marcadores aparecerão entre as tags XML <InitialValue>…</InitialValue> no corpo de resposta HTTP. Isso confirma o vazamento e expõe fragmentos da memória, que geralmente contêm dados confidenciais, como variáveis de sessão, tokens, senhas, nomes de usuário, ou valores de configuração.
Assim como a vulnerabilidade original CitrixBleed (CVE-2023-4966) divulgada em 2023, que vazou memória por meio de um Host Header malformado, o CitrixBleed 2 (CVE-2025-5777) vaza memória devido ao uso de uma variável não inicializada. O primeiro problema foi atenuado por padrão pelos servidores fantasmas da Akamai, graças à validação rigorosa do Host Header. Já o CitrixBleed 2 exige uma regra dedicada do Adaptive Security Engine (ASE).
Aqui está uma recapitulação simples das etapas de exploração:
1) Reconhecimento: procura instâncias expostas de ADC/Gateway do Citrix NetScaler.
2) Enumeração: verifica se o destino executa uma versão vulnerável.
3) Exploração: envia uma solicitação criada para /p/u/doAuthentication.do com um cabeçalho longo de usuário-agente (sem necessidade de autenticação).
4) Vazamento: o dispositivo responde com a memória de pilha vazada em tags XML <initialValue>.
5) fase de sangramento: as etapas 3 a 4 são repetidas, causando vazamentos contínuos de memória da pilha (CitrixBleed 2) do mesmo dispositivo do destino.
6) Pós-exploração: os invasores usam os dados vazados para fins mal-intencionados, como a autenticação bem-sucedida com tokens de sessão vazados.
Mitigação do App & API Protector
Em resposta ao CitrixBleed 2, a equipe de pesquisa de ameaças WAF lançou uma nova regra rápida em 7 de julho de 2025, com uma ação padrão definida como "Alerta":
3000967: divulgação de memória do Citrix NetScaler detectada (CVE-2025-5777)
Após confirmar que a regra é precisa, a ação de regra rápida recomendada foi definida como a ação padrão "Negar" em 8 de julho de 2025.
Detalhes da exploração
Em 8 de julho, observamos mais de 200.000 solicitações POST direcionadas ao caminho de URL /p/u/doAuthentication.do em vários nomes de host e originadas de vários endereços IP. Elas parecem ser tentativas de verificação em larga escala destinadas a identificar instâncias vulneráveis do NetScaler. A Figura 4 é uma solicitação de amostra que detectamos durante esta atividade:
Nota final
O Akamai SIG continuará a monitorar, relatar e criar mitigações para ameaças como essas para nossos clientes e para a comunidade de segurança em geral. Para acompanhar as notícias mais recentes do Akamai Security Intelligence Group, confira nossa página inicial de pesquisa e nos siga nas redes sociais.