Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
heartbleed-lab — Laboratório educacional para estudar CVE-2014-0160 (Heartbleed) e inconsistências de enquadramento no manuseio de heartbeat TLS. | Kitploit
Ferramentas/GitHubGitHub/victoriacfigueiredo/heartbleed-lab
Análise de VulnerabilidadesSegurança de RedeCriptografiaAprendizado e EducaçãoExploração de BináriosLabs e Prática
GitHubvictoriacfigueiredo/heartbleed-lab

heartbleed-lab

Laboratório educacional para estudar CVE-2014-0160 (Heartbleed) e inconsistências de enquadramento no manuseio de heartbeat TLS.

Ver Repositório
8há 3 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Laboratório Heartbleed

Laboratório educacional para estudar a vulnerabilidade Heartbleed
(CVE-2014-0160) usando um ambiente OpenSSL real vulnerável dentro do Docker.

Este projeto reproduz um servidor TLS vulnerável usando OpenSSL 1.0.1f e implementa um cliente raw TLS heartbeat customizado para demonstrar como pacotes heartbeat malformados podem desencadear divulgação de memória.

O laboratório foi criado para fins educacionais e de pesquisa, especialmente para estudar:

  • Enquadramento de registros TLS
  • Análise da extensão Heartbeat
  • Vulnerabilidades de divulgação de memória
  • Falhas de confiança do analisador
  • Inconsistências de enquadramento entre protocolos
  • Semelhanças conceituais entre Heartbleed e vulnerabilidades de dessincronização HTTP

Estrutura Atual do Projeto

root@kitploit:~
heartbleed-lab/
├── client/
│   ├── attacker.py
│   └── Dockerfile
│
├── vulnerable/
│   ├── Dockerfile
│   └── server/
│
├── fixed/
│   ├── Dockerfile
│   └── server/
│
├── docs/
│   └── diagrams/
│
├── notes/
│
├── docker-compose.yml
├── .gitignore
└── README.md

Arquitetura

root@kitploit:~
heartbleed-client
        ↓
 Docker internal network
        ↓
vulnerable-heartbleed

Onde:

  • heartbleed-client envia registros TLS brutos
  • vulnerable-heartbleed executa OpenSSL 1.0.1f
  • a comunicação ocorre dentro de uma rede Docker isolada

Ambiente Vulnerável

O servidor vulnerável usa:

  • Ubuntu 14.04
  • OpenSSL 1.0.1f (lançamento vulnerável de 2014)
  • openssl s_server

O ambiente é intencionalmente configurado para reproduzir o comportamento original do Heartbleed.


Funcionalidades Implementadas

Servidor TLS Vulnerável

  • Compilação real do OpenSSL 1.0.1f
  • Suporte a handshake TLS
  • Extensão Heartbeat habilitada
  • Ambiente isolado no Docker

Cliente Heartbeat TLS Bruto

A implementação do cliente:

  • cria sockets TCP brutos
  • envia registros TLS artesanais
  • realiza um ClientHello TLS manual
  • envia requisições heartbeat malformadas
  • recebe respostas de memória vazada

Demonstração do Heartbleed

A implementação atual reproduz o comportamento original do Heartbleed enviando um pacote heartbeat malformado onde:

root@kitploit:~
payload_length > real payload size

Exemplo:

root@kitploit:~
Declared payload length: 0x4000
Real payload: 1 byte ("A")

O servidor vulnerável confia incorretamente no comprimento declarado e responde com conteúdos de memória além dos limites reais do payload.


Executando o Laboratório

Construir e iniciar containers

root@kitploit:~
sudo COMPOSE_HTTP_TIMEOUT=300 docker-compose up --build

Acessar o container do cliente

root@kitploit:~
sudo docker exec -it heartbleed-client bash

Executar a prova de conceito do Heartbleed

root@kitploit:~
python attacker.py

Exemplo de Saída Bem-sucedida

root@kitploit:~
[+] Sending malformed heartbeat
[+] Got TLS record: type=24 version=(3, 2) length=16384
[!!!] Heartbeat response received

Isso indica que o servidor vulnerável retornou conteúdos de memória além do payload legítimo do heartbeat.


Objetivos de Pesquisa

Este projeto explora a relação entre:

  • Inconsistências de enquadramento TLS
  • falhas de confiança do analisador
  • confusão de limites
  • campos de comprimento malformados
  • conceitos de dessincronização de protocolo

Um dos principais interesses de pesquisa deste laboratório é comparar:

root@kitploit:~
HTTP Request Smuggling
vs
TLS Heartbeat Parsing Failures

da perspectiva de:

  • inconsistências de enquadramento
  • comportamento do analisador
  • suposições de confiança em metadados

Trabalhos Futuros

Os próximos passos planejados incluem:

  • visualização aprimorada de vazamento
  • auxiliares de análise de vazamento de memória
  • comparação com versões corrigidas do OpenSSL
  • experimentos com proxy TLS intermediário
  • teste automatizado de mutação de heartbeat

Referências

  • CVE-2014-0160
  • RFC 6520 (Extensão Heartbeat TLS)

Aviso Legal

Este repositório existe exclusivamente para:

  • educação
  • pesquisa acadêmica
  • estudos de segurança defensiva
Baixar ferramenta