> [!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.