> [!danger] CVSS 9.4 - Crítico
> Buffer over-read permite roubo de tokens de sessão e bypass de MFA. Adotada pelo LockBit.
> [!warning] CISA KEV - Exploração Ativa Confirmada
> Adicionada ao catálogo CISA KEV em 2023-10-18. Exploração zero-day desde agosto de 2023.
> [!success] Patch Disponível
> Versões corrigidas: 14.1-8.50, 13.1-49.15, 13.0-92.19. Inválidar todas as sessões após patch.
# CVE-2023-4966 - Citrix Bleed (Divulgação de Informações Sensíveis)
> CVSS: 9.4 · EPSS: 96% · Vendor: Citrix · Patch: Sim · CISA KEV: Sim
## Resumo
**CVE-2023-4966**, amplamente conhecida como "Citrix Bleed", é uma vulnerabilidade crítica de divulgação de informações sensíveis nos produtos [[_citrix|Citrix]] NetScaler ADC e NetScaler Gateway. A falha permite que atacantes não autenticados roubem tokens de sessão válidos através de requisições especialmente elaboradas, possibilitando o sequestro de sessões autenticadas.
A exploração ativa zero-day foi identificada pela [[_intel/sources|Mandiant]] desde o final de agosto de 2023, antes da disponibilização do patch. Grupos de ransomware como [[lockbit|LockBit]] adotaram rapidamente esta vulnerabilidade como vetor de acesso inicial, afetando organizações de múltiplos setores. A disponibilização de PoC público em 25 de outubro de 2023 intensificou drasticamente a exploração.
**Pontuação de risco:**
- CVSS v3.1: **9.4** (Crítico)
- EPSS: **96%** de probabilidade de exploração nos próximos 30 dias
- CISA KEV: adicionado em 2023-10-18
- Exploit público: PoC públicado pela AssetNote em outubro de 2023
## Detalhes Técnicos
A vulnerabilidade é um buffer overflow nos produtos NetScaler que resulta em divulgação de informações sensíveis quando configurados como Gateway (VPN virtual server, ICA Proxy, CVPN, RDP Proxy) ou servidor virtual AAA. O mecanismo de exploração:
1. **Buffer over-read:** a falha permite leitura além dos limites do buffer na memória do processo
2. **Extração de tokens:** atacantes extraem tokens de sessão válidos da memória
3. **Sequestro de sessão:** tokens roubados permitem assumir sessões legítimas de usuários
4. **Bypass de MFA:** o sequestro de sessão ocorre após a autenticação multifator, tornando o MFA ineficaz
A exploração tem complexidade baixa e não requer interação do usuário, tornando a vulnerabilidade altamente explorável em escala.
## Exploração
**Status atual:** Exploração massiva confirmada - amplamente adotada por grupos de ransomware.
A [[_intel/sources|Mandiant]] identificou exploração zero-day desde agosto de 2023. Scripts Python para automatizar a exploração foram distribuídos para afiliados de ransomware.
**Grupos de ameaça utilizando:**
- [[lockbit|LockBit]] - grupo de ransomware que adotou Citrix Bleed como vetor principal de acesso
- [[s1220-medusa|Medusa]] - ransomware explorando a vulnerabilidade para acesso inicial
**Campanhas associadas:**
- [[lockbit-citrix-bleed-2023]] - campanha massiva de exploração global
**TTPs relacionadas:**
- [[t1190-exploit-public-facing-application|T1190 - Exploit Public-Facing Application]] - exploração do NetScaler exposto
- [[t1539-steal-web-session-cookie|T1539 - Steal Web Session Cookie]] - roubo de tokens de sessão
- [[t1563-remote-service-session-hijacking|T1563 - Remote Service Session Hijacking]] - sequestro de sessões remotas
## Impacto
O impacto da Citrix Bleed é amplificado pela natureza da vulnerabilidade:
- **Sequestro completo de sessão:** atacantes assumem sessões autenticadas incluindo bypass de MFA
- **Acesso VPN corporativo:** obtenção de acesso à rede interna através de sessões VPN sequestradas
- **Persistência sem malware:** não requer implantação de artefatos no sistema alvo
- **Escala massiva:** milhares de appliances NetScaler expostos na internet globalmente
**Produtos Afetados:**
| Vendor | Produto | Versão Afetada | Versão com Fix |
|--------|---------|----------------|----------------|
| Citrix | NetScaler ADC 14.1 | < 14.1-8.50 | 14.1-8.50+ |
| Citrix | NetScaler ADC 13.1 | < 13.1-49.15 | 13.1-49.15+ |
| Citrix | NetScaler ADC 13.0 | < 13.0-92.19 | 13.0-92.19+ |
| Citrix | NetScaler Gateway 14.1 | < 14.1-8.50 | 14.1-8.50+ |
| Citrix | NetScaler Gateway 13.1 | < 13.1-49.15 | 13.1-49.15+ |
| Citrix | NetScaler Gateway 13.0 | < 13.0-92.19 | 13.0-92.19+ |
## Mitigação
**Patch oficial:**
- Advisory: [Citrix Security Advisory](https://www.netscaler.com/blog/news/CVE-2023-4966-critical-security-update-now-available-for-netscaler-adc-and-netscaler-gateway/)
- Versões corrigidas: 14.1-8.50, 13.1-49.15, 13.0-92.19 e posteriores
- Data de lançamento do patch: 2023-10-10
**Ações pós-patch obrigatórias:**
1. Aplicar o patch imediatamente
2. **Inválidar todas as sessões ativas** após aplicação do patch - o patch sozinho não elimina tokens já roubados
3. Rotacionar todas as credenciais que possam ter sido expostas
4. Verificar logs para sessões suspeitas originadas de IPs incomuns
**Mitigações temporárias:**
- Restringir acesso ao NetScaler Gateway por geolocalização
- Monitorar sessões ativas para IPs de origem anômalos
- Implementar detecção de sessões com mudança de IP durante a mesma sessão
## Relevância LATAM/Brasil
> [!latam] Impacto LATAM - Citrix Bleed
> O Citrix NetScaler é amplamente adotado em organizações brasileiras dos setores financeiro, governo e saúde como solução de VPN, balanceamento de carga e públicação de aplicações. Bancos e órgãos públicos frequentemente dependem do NetScaler para acesso remoto de colaboradores. A adoção massiva do exploit por grupos de ransomware como **LockBit** - com histórico confirmado de ataques na América Latina - e **Medusa** eleva o risco operacional para o contexto regional. Organizações brasileiras com NetScaler expostos devem tratar esta CVE como prioridade crítica independentemente da data do patch.
O [[_citrix|Citrix]] NetScaler é amplamente utilizado em organizações brasileiras dos setores [[financial]], [[government]] e [[healthcare|saúde]] como solução de balanceamento de carga, VPN e públicação de aplicações. Bancos brasileiros e órgãos governamentais frequentemente utilizam NetScaler para acesso remoto de funcionários. A adoção da exploração por grupos de ransomware como [[lockbit|LockBit]] - que tem histórico de ataques na América Latina - torna esta vulnerabilidade particularmente relevante para o contexto brasileiro.
## IoCs
Indicadores de comprometimento públicos:
- Sessões VPN ativas originadas de IPs geográficos inconsistentes com o perfil do usuário
- Múltiplas sessões simultâneas para o mesmo usuário de diferentes localizações
- Requisições HTTP manipuladas para extração de tokens de sessão
- Tráfego anômalo na porta 443 do NetScaler
Fontes: [CISA Guidance](https://www.cisa.gov/guidance-addressing-citrix-netscaler-adc-and-gateway-vulnerability-CVE-2023-4966-citrix-bleed), [Mandiant Analysis](https://cloud.google.com/blog/topics/threat-intelligence/session-hijacking-citrix-CVE-2023-4966/)
## Referências
- [NVD - CVE-2023-4966](https://nvd.nist.gov/vuln/detail/CVE-2023-4966)
- [CISA - Guidance for Citrix Bleed](https://www.cisa.gov/guidance-addressing-citrix-netscaler-adc-and-gateway-vulnerability-CVE-2023-4966-citrix-bleed)
- [Mandiant - Session Hijacking via Citrix](https://cloud.google.com/blog/topics/threat-intelligence/session-hijacking-citrix-CVE-2023-4966/)
- [Unit 42 - Citrix Bleed Threat Brief](https://unit42.paloaltonetworks.com/threat-brief-CVE-2023-4966-netscaler-citrix-bleed/)
- [HHS - LockBit Exploiting Citrix Bleed](https://www.hhs.gov/sites/default/files/lockbit-3-exploiting-citrix-bleed-sector-alert.pdf)
## Notas Relacionadas
**CVEs relacionados:** [[cve-2023-3519|CVE-2023-3519]] · [[cve-2023-3467|CVE-2023-3467]]
**Atores explorando:** [[lockbit|LockBit]] · [[s1220-medusa|Medusa]]
**Campanhas:** [[lockbit-citrix-bleed-2023]]
**TTPs relacionadas:** [[t1190-exploit-public-facing-application|T1190 - Exploit Public-Facing Application]] · [[t1539-steal-web-session-cookie|T1539 - Steal Web Session Cookie]] · [[t1563-remote-service-session-hijacking|T1563 - Remote Service Session Hijacking]]
**Setores em risco:** [[financial]] · [[government]] · [[healthcare|saúde]]
---
## Detecção e Resposta
> [!warning] Aviso sobre as regras abaixo
> As regras e consultas a seguir são **exemplos e pontos de partida**. Devem ser revisadas,
> testadas e adaptadas ao seu ambiente específico antes de serem implantadas em produção.
> Falsos positivos e negativos são esperados - tuning contínuo é necessário. Valide sempre
> contra sua telemetria antes de ativar alertas.
### Splunk SPL
Detecção da tentativa de exploração via endpoint vulnerável `/oauth/idp/.well-known/openid-configuration` (fonte: Splunk Analytics Story para CVE-2023-4966):
```spl
| tstats count min(_time) as firstTime max(_time) as lastTime
from datamodel=Web
where Web.url IN ("*/oauth/idp/.well-known/openid-configuration*")
Web.status=200
by Web.http_user_agent, Web.status, Web.http_method, Web.url,
Web.url_length, Web.src, Web.dest, sourcetype
| `drop_dm_object_name("Web")`
| `security_content_ctime(firstTime)`
| `security_content_ctime(lastTime)`
```
Detecção de sessões sequestradas - mesmo IP de origem acessando múltiplos usuários (indicador de token theft em larga escala):
```spl
index=* sourcetype=citrix* OR sourcetype=netscaler* "SSLVPN" "TCPCONNSTAT"
| stats dc(user) as distinct_users, values(user) as users by src_ip
| where distinct_users > 3
| sort -distinct_users
```
Detecção de divergência entre IP original da sessão e IP da conexão atual (indicador direto de session hijacking):
```spl
index=* sourcetype=citrix* OR sourcetype=netscaler* "SSLVPN" "TCPCONNSTAT"
| where Client_ip != Source
| table _time, user, Client_ip, Source, session_id
| sort -_time
```
Fonte de dados requerida: Web datamodel (Splunk CIM) populado por TA para Apache/Nginx/F5/WAF; logs syslog do NetScaler (SSLVPN TCPCONNSTAT events).
### Microsoft Sentinel (KQL)
Requisições ao endpoint vulnerável com resposta HTTP 200 (extração bem-sucedida de token):
```kql
CommonSecurityLog
| where TimeGenerated > ago(7d)
| where RequestURL contains "/oauth/idp/.well-known/openid-configuration"
| where EventOutcome == "200" or EventOutcome == "Allow"
| project TimeGenerated, SourceIP, DestinationIP, RequestURL, RequestMethod,
DeviceVendor, DeviceProduct, Activity
| order by TimeGenerated desc
```
Detecção de sessões com mudança de IP - mesmo usuário autenticando de localidades distintas em curto intervalo:
```kql
SigninLogs
| where TimeGenerated > ago(24h)
| summarize
IPList = make_set(IPAddress),
LocationList = make_set(Location),
IPCount = dcount(IPAddress)
by UserPrincipalName, bin(TimeGenerated, 1h)
| where IPCount > 2
| project TimeGenerated, UserPrincipalName, IPCount, IPList, LocationList
| order by IPCount desc
```
Tabela(s): `CommonSecurityLog` (logs do NetScaler/WAF via CEF/syslog), `SigninLogs` (Azure AD - detecção pós-exploração).
### Sigma Rule
```yaml
title: Detect CVE-2023-4966 Exploitation Attempt - Citrix Bleed
id: 87c83d8e-5390-44ce-aa4a-d3b37e54d0a0
status: experimental
description: >
Detecta tentativas de exploração de CVE-2023-4966 (Citrix Bleed) - requisição GET ao
endpoint OpenID Connect Discovery do NetScaler ADC/Gateway retornando HTTP 200,
indicando possível vazamento de tokens de sessão da memória do processo.
references:
- [[t1190-exploit-public-facing-application]]
- [[t1539-steal-web-session-cookie]]
- https://www.cisa.gov/guidance-addressing-citrix-netscaler-adc-and-gateway-vulnerability-CVE-2023-4966-citrix-bleed
- https://support.citrix.com/article/CTX579459
logsource:
category: webserver
detection:
selection:
cs-method: 'GET'
cs-uri-stem|contains: '/oauth/idp/.well-known/openid-configuration'
sc-status: 200
condition: selection
falsepositives:
- Scanners de vulnerabilidade legítimos (Tenable, Qualys, Rapid7) testando o endpoint
- Tráfego legítimo de clientes OAuth ao endpoint de descoberta do IdP
level: medium
tags:
- attack.initial_access
- attack.t1190
- attack.credential_access
- attack.t1539
```
Regra alternativa para proxy logs (id: ff349b81-617f-4af4-924f-dbe8ea9bab41 - SigmaHQ):
```yaml
title: Detect CVE-2023-4966 Exploitation Attempt - Citrix Bleed (Proxy)
id: ff349b81-617f-4af4-924f-dbe8ea9bab41
status: experimental
description: >
Variante para proxy logs - detecta tentativas de exploração do CVE-2023-4966
via campo cs-uri completo em vez de cs-uri-stem.
references:
- [[t1190-exploit-public-facing-application]]
logsource:
category: proxy
detection:
selection:
cs-method: 'GET'
cs-uri|contains: '/oauth/idp/.well-known/openid-configuration'
sc-status: 200
condition: selection
falsepositives:
- Scanners de vulnerabilidade legítimos
level: medium
tags:
- attack.initial_access
- attack.t1190
```
### EDR
#### CrowdStrike Falcon
Custom IOA Rule (Behavioral):
Detectar reconhecimento pós-exploração executado via sessão VDI/RemoteApp sequestrada. Criar regra de Custom IOA para processos filhos suspeitos oriundos de sessões Citrix:
```
Process Name: cmd.exe, powershell.exe, wscript.exe, cscript.exe
Parent Image Path: *\icahost.exe OR *\wfshell.exe OR *\ctxhide.exe
Command Line Contains: net user | ping | Test-WSMan | whoami | ipconfig | nltest
```
Threat Graph Query (Falcon Data Replicator):
```
index=main sourcetype=ProcessRollup2* event_simpleName=ProcessRollup2
| search ParentBaseFileName IN ("icahost.exe", "wfica32.exe", "wfshell.exe")
| stats dc(aid) as endpoints, count by ParentBaseFileName, FileName, CommandLine
| where NOT FileName IN ("ctxlogon.exe", "ctxinstall.exe")
| sort -count
```
#### SentinelOne
Deep Visibility Query - detecção de reconhecimento pós-hijacking de sessão Citrix:
```
ObjectType = "Process" AND
(ParentProcessName ContainsCIS "icahost" OR ParentProcessName ContainsCIS "wfica") AND
(TgtProcessName In ("cmd.exe", "powershell.exe", "net.exe", "whoami.exe", "nltest.exe"))
```
#### Microsoft Defender for Endpoint (MDE)
Advanced Hunting (KQL) - processos de reconhecimento spawned via sessão Citrix:
```kql
DeviceProcessEvents
| where Timestamp > ago(7d)
| where InitiatingProcessFileName in~ ("icahost.exe", "wfica32.exe", "receiver.exe")
| where FileName in~ ("cmd.exe", "powershell.exe", "net.exe", "whoami.exe",
"nltest.exe", "ipconfig.exe", "ping.exe")
| project Timestamp, DeviceName, AccountName, FileName, ProcessCommandLine,
InitiatingProcessFileName, InitiatingProcessCommandLine
| order by Timestamp desc
```
### Firewall / Network
#### Palo Alto Networks (PAN-OS)
Bloquear requisições GET ao endpoint vulnerável via Security Policy + URL Filtering. Habilitar threat prevention para tráfego TLS direcionado a appliances NetScaler.
Criar regra de URL Filtering customizada para `/oauth/idp/.well-known/openid-configuration` com ação `block` em acessos de origens externas não autorizadas.
App-ID / Threat ID relevante: O Unit 42 públicou Threat Brief dedicado ao CVE-2023-4966 - verificar atualização da assinatura de Threat Prevention na base do WildFire e PANDB.
#### Fortinet FortiGate
Habilitar IPS inline e Web Application Firewall (WAF) em frente a appliances NetScaler expostos.
IPS Signature: Verificar no FortiGuard Labs a assinatura `Citrix.NetScaler.CVE-2023-4966.Info.Disclosure` - aplicar em modo `block` em profiles de inspeção voltados para tráfego de acesso ao NetScaler Gateway.