# CVE-2014-0160 - Heartbleed (OpenSSL)
> [!critical] CVSS 7.5 - Heartbleed: Vazamento de Memória no OpenSSL
> Uma das vulnerabilidades mais impactantes da história da internet - permite leitura de até 64KB de memória do servidor por requisição, potencialmente expondo chaves privadas SSL, senhas e dados de sessão de qualquer servidor usando OpenSSL 1.0.1x.
## Visão Geral
A [[cve-2014-0160|CVE-2014-0160]], conhecida mundialmente como **Heartbleed**, é uma vulnerabilidade de divulgação de informações na extensão **TLS Heartbeat** do OpenSSL. Ao enviar uma requisição heartbeat malformada, um atacante pode induzir o servidor a retornar até **64KB de memória de processo** por requisição - repetível indefinidamente sem autenticação. Esta memória pode conter chaves privadas SSL/TLS, tokens de sessão, senhas e outros dados confidenciais.
Divulgada em abril de 2014 pela Google Security e pela empresa Codenomicon, o Heartbleed afetou estimadamente **17% de todos os servidores HTTPS** do mundo na época. O grupo de espionagem **[[g0026-apt18|APT18]]** (Wekby) foi associado à exploração ativa da falha para comprometimento de sistemas de saúde americanos, segundo relatório do FBI de 2014. A Heartbleed foi histórica não apenas por sua severidade, mas por demonstrar como uma falha simples (falta de válidação de comprimento em código C) em uma biblioteca crítica pode comprometer toda a infraestrutura de segurança da internet.
> [!latam] Impacto LATAM
> O Heartbleed afetou massivamente a infraestrutura web brasileira em 2014. Portais bancários, sistemas governamentais (incluindo o portal da Receita Federal), e plataformas de e-commerce foram afetados. A lição histórica permanece relevante: sistemas legados no Brasil ainda podem executar versões desatualizadas do OpenSSL, especialmente em infraestruturas industriais e embarcadas que raramente recebem atualizações de segurança.
## Detalhes Técnicos
A extensão TLS Heartbeat (RFC 6520) permite que servidores e clientes verifiquem que a conexão ainda está ativa enviando uma mensagem de "heartbeat". O receptor deve responder com o mesmo payload. O bug: o OpenSSL não verificava se o comprimento declarado no heartbeat (`payload_length`) correspondia ao comprimento real da mensagem. Um atacante podia declarar um comprimento de 64KB com payload de apenas 1 byte, fazendo o servidor copiar 64KB de memória de processo - incluindo dados sensíveis de outras conexões - na resposta.
**Técnicas relacionadas:**
- [[t1190-exploit-public-facing-application|T1190 - Exploit Public-Facing Application]] - exploração remota de serviços HTTPS
- [[t1552-unsecured-credentials|T1552 - Unsecured Credentials]] - vazamento de chaves privadas e senhas da memória
## Mitigação
- Atualizar OpenSSL para versão 1.0.1g ou posterior (corrigida em 7 de abril de 2014)
- Revogar e regenerar certificados SSL/TLS após aplicação do patch (chaves privadas podem ter sido comprometidas)
- Inválidar e regenerar todos os tokens de sessão ativos
- Considerar sistemas afetados como comprometidos até que revisão forense seja realizada
## Referências
- [NVD - CVE-2014-0160](https://nvd.nist.gov/vuln/detail/CVE-2014-0160)
- [Heartbleed.com - Explicação oficial](https://heartbleed.com/)
- [OpenSSL Security Advisory - 7 de abril de 2014](https://www.openssl.org/news/secadv/20140407.txt)
## Notas Relacionadas
**Atores usando:** [[g0026-apt18|APT18 (Wekby)]]
**TTPs relacionadas:** [[t1190-exploit-public-facing-application|T1190 - Exploit Public-Facing Application]] · [[t1552-unsecured-credentials|T1552 - Unsecured Credentials]]
**Setores em risco:** [[financial|financeiro]] · [[healthcare|saúde]] · [[government|governo]] · [[technology|tecnologia]]