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
CVE-2023-43804 — Laboratório conteinerizado de três camadas que reproduz o vazamento de cookie do urllib3 CVE-2023-43804 por meio de redirecionamentos de origem cruzada, com script de exploração e verificação de patch. | Kitploit
Ferramentas/GitHubGitHub/deepanshu-khurana/cve-2023-43804
Ferramentas DefensivasSegurança de ContêineresAnálise de VulnerabilidadesExploraçãoSegurança WebTestes de PenetraçãoAprendizado e EducaçãoLabs e Prática

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 →
GitHub
deepanshu-khurana/cve-2023-43804

CVE-2023-43804

Laboratório conteinerizado de três camadas que reproduz o vazamento de cookie do urllib3 CVE-2023-43804 por meio de redirecionamentos de origem cruzada, com script de exploração e verificação de patch.

Ver Repositório
1há 4h 40mAinda não revisado
Compartilhar

CVE-2023-43804: Laboratório de Reprodução e Remediação do Vazamento de Cookie do urllib3

O repositório inclui um ambiente de laboratório totalmente conteinerizado, de três camadas, destinado a demonstrar, explorar e verificar as correções para o CVE-2023-43804 (o Vazamento de Cookie do urllib3 que ocorre durante redirecionamentos de origem cruzada).


1. Ambiente de Laboratório e Arquitetura

O laboratório é orquestrado usando Docker Compose e consiste em três serviços isolados que se comunicam através de uma rede bridge interna:

  • victim_client: Contêiner baseado em Python que executa o script de reprodução e exploração (exploit.py).
  • target_app: Aplicação web Flask que simula um servidor alvo vulnerável que aciona um redirecionamento de origem cruzada HTTP 302 para uma origem externa.
  • attacker_app: Servidor de registro Flask projetado para capturar requisições HTTP recebidas e extrair cabeçalhos vazados.

2. Pré-requisitos e Requisitos do Sistema

  • Docker Desktop instalado e em execução.
  • Docker Compose (v2+).
  • PowerShell ou qualquer shell de linha de comando padrão.

3. Etapas de Instalação e Configuração

  1. Clone o repositório e navegue até o diretório do projeto:
    root@kitploit:~
    git clone [https://github.com/deepanshu-khurana/cve-2023-43804-lab.git](https://github.com/deepanshu-khurana/cve-2023-43804-lab.git)
    cd cve-2023-43804-lab
    
    
    
    
  2. Compile e inicie a infraestrutura conteinerizada do laboratório:
root@kitploit:~
docker compose up -d --build


4. Como Iniciar e Parar o Laboratório

  • Iniciar Contêineres do Laboratório:
root@kitploit:~
docker compose up -d

  • Parar o Laboratório e Limpar Recursos:
root@kitploit:~
docker compose down --volumes


5. Visão Geral da Vulnerabilidade (CVE-2023-43804)

  • Componente Vulnerável: urllib3
  • Versões Vulneráveis: < 1.26.17 ou < 2.0.5
  • Descrição da Vulnerabilidade: O urllib3 falhava em remover cabeçalhos de autenticação sensíveis (como Cookie) ao seguir redirecionamentos HTTP 302 entre origens diferentes, permitindo que endpoints de redirecionamento não confiáveis interceptassem tokens de sessão sensíveis.

6. Como Explorar a Vulnerabilidade (Fase 1)

  1. Certifique-se de que a versão vulnerável do urllib3 está instalada dentro do contêiner cliente:
root@kitploit:~
docker exec -it victim_client pip install urllib3==1.26.16

  1. Execute o script de exploração:
root@kitploit:~
docker exec -it victim_client python3 -u /lab/exploit.py

  1. Resultado Vulnerável Esperado:
  • A saída do cliente exibe "status": "EXFILTRATED" juntamente com o token de sessão vazado.
  • docker logs attacker_app exibe o cabeçalho de cookie sensível capturado.

7. Como Executar o Mecanismo de Detecção e Verificação (Fase 2)

Para verificar a correção após observar a exploração:

  1. Atualize o urllib3 dentro do contêiner cliente para a versão corrigida:
root@kitploit:~
docker exec -it victim_client pip install urllib3==1.26.17

  1. Execute novamente o script de exploração:
root@kitploit:~
docker exec -it victim_client python3 -u /lab/exploit.py

  1. Resultado Corrigido Esperado:
  • A saída do cliente exibe "status": "SECURE", "stolen_cookie": "None / Stripped".
  • Os logs do attacker_app confirmam que a requisição recebida contém Leaked Cookie Header: None.

8. Remediação

  • Atualização da Biblioteca: Atualize as dependências em requirements.txt para impor versões seguras:
root@kitploit:~
urllib3>=1.26.17

  • Defesa em Profundidade: Configure explicitamente políticas de gerenciamento de cabeçalhos via remove_headers_on_redirect em configurações personalizadas de Retry caso mantenha runtimes legados.

9. Notas de Solução de Problemas

  • Nomenclatura de Contêineres: Certifique-se de direcionar os nomes dos contêineres com precisão (victim_client, target_app, attacker_app) conforme atribuídos pelo Docker Compose. Use docker ps para verificar os nomes dos contêineres ativos.
  • Disponibilidade de Portas: Certifique-se de que as portas 5000 e 5001 não estão ocupadas por outros serviços locais antes de iniciar a stack Docker.

10. Demonstração do Laboratório e Resultados

Fase 1: Estado Vulnerável (Vazamento de Cookie)

Ao executar o laboratório com o urllib3==1.26.16 vulnerável, o cookie de autenticação sensível é interceptado através de redirecionamentos de origem cruzada e registrado com sucesso pelo servidor atacante.

  • Saída do Cliente e Captura de Log do Servidor: Vulnerable Execution and Log Capture
    • Figura 1.1: exploit.py exibindo "status": "EXFILTRATED" juntamente com o token de sessão vazado, verificado pela saída de log do attacker_app.

Fase 2: Verificação da Correção (Estado Seguro)

Após atualizar o urllib3 para a versão corrigida (1.26.17), a biblioteca remove automaticamente o cabeçalho Cookie sensível durante redirecionamentos de origem cruzada.

  • Atualização do Pacote para a Versão Corrigida: Urllib3 Upgrade

    • Figura 2.1: Atualizando o urllib3 dentro do victim_client via pip install urllib3==1.26.17.
  • Saída Segura do Cliente e Logs Removidos: Secure Execution and Log Capture

    • Figura 2.2: exploit.py retornando "status": "SECURE" com "stolen_cookie": "None / Stripped", confirmado pelo log do servidor mostrando Leaked Cookie Header: None.
Baixar ferramenta