Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-29145-Tester — Este repositório contém um ambiente de prova de conceito (PoC) projetado para testar a CVE-2026-29145. | Kitploit
Ferramentas/GitHubGitHub/chenjp/cve-2026-29145-tester
Análise de VulnerabilidadesExploraçãoSegurança WebTestes de PenetraçãoAutenticaçãoAprendizado e Educação
GitHubchenjp/cve-2026-29145-tester

CVE-2026-29145-Tester

Este repositório contém um ambiente de prova de conceito (PoC) projetado para testar a CVE-2026-29145.

Ver Repositório
20há 5 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

Ambiente de Teste para CVE-2026-29145

📌 Visão Geral

Este repositório contém um ambiente de prova de conceito (PoC) projetado para testar a CVE-2026-29145.

A vulnerabilidade é uma falha de autenticação na implementação de TLS Mútuo (CLIENT_CERT) do Apache Tomcat. Quando o OCSP (Online Certificate Status Protocol) é configurado com soft-fail desabilitado, o Tomcat pode falhar ao tratar uma falha de verificação OCSP como uma negação definitiva. Isso permite que um cliente com um certificado potencialmente revogado ou não verificado contorne a autenticação se o respondedor OCSP estiver inacessível ou retornar um erro.

🛡️ Detalhes da Vulnerabilidade

PropriedadeValor
ID CVECVE-2026-29145
Pontuação CVSS9.1 (Crítica) - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Vetor de AtaqueRede
Privilégios NecessáriosNenhum
ImpactoBypass de Autenticação

Pré-requisitos para a Vulnerabilidade

  • ✓ Autenticação CLIENT_CERT habilitada no Tomcat
  • ✓ Verificação de revogação OCSP habilitada
  • ✓ Opção soft-fail desabilitada (modo hard-fail)
  • ✓ Respondedor OCSP inacessível ou com falha

🚀 Começando

Pré-requisitos

  • Docker & Docker Compose: Para executar o contêiner Tomcat vulnerável
  • OpenSSL: Para gerar a PKI (Public Key Infrastructure) - geralmente pré-instalado em Linux/macOS
  • Python 3.7+: Para executar o script de teste e o respondedor simulado
  • curl (opcional): Para testes manuais
  • PowerShell (somente Windows): Se usar os scripts .ps1

1. Ciclo de Teste Automatizado Completo (Recomendado)

O script run_test.sh automatiza todo o processo: limpeza, geração de certificados e execução de todos os cenários de teste (vulnerável, sucesso e corrigido).

# Navegue até o diretório do projeto
cd CVE-2026-29145-Tester

# Torne os scripts executáveis
chmod +x cleanup.sh setup_certs.sh run_test.sh

# Instale as dependências Python (se o poc_exploit.py exigir)
pip install -r requirements.txt

# Execute a suíte de testes completa
./run_test.sh

2. Gerar certificados

No Linux/macOS:

./setup_certs.sh

No Windows (PowerShell):

.\setup_certs.ps1

O que isso faz:

  • Cria uma CA Raiz (Certificate Authority)
  • Gera o certificado do servidor para o Tomcat
  • Gera o certificado do cliente com extensão OCSP apontando para http://localhost:8888
  • Valida se todos os certificados foram criados com sucesso

Saída esperada:

[INFO] Iniciando geração de certificados para o ambiente de teste CVE-2026-29145
[INFO] OpenSSL encontrado: OpenSSL 3.0.x (...)
[INFO] Diretório certs criado
[INFO] Gerando CA Raiz...
[INFO] Gerando Certificado do Servidor...
[INFO] Gerando Certificado do Cliente com Extensão OCSP...
[INFO] Configuração de certificados concluída com sucesso!

3. Iniciar o ambiente vulnerável

docker-compose up -d

O que isso faz:

  • Inicia o Respondedor Simulado OCSP na porta 8888 (simula falha com HTTP 500)
  • Inicia o Tomcat 10.1.52 vulnerável na porta 8443 com autenticação CLIENT_CERT
  • Cria rede Docker interna para comunicação entre serviços
  • Configura health checks para ambos os serviços

Verifique se os contêineres estão em execução:

docker-compose ps

4. Executar o teste de exploração

python poc_exploit.py

Saídas esperadas:

Sistema Vulnerável:

[INFO] Tentando conexão com https://localhost:8443/protected-resource...
[WARNING] VULNERÁVEL: Acesso concedido apesar da falha na verificação OCSP.
[WARNING] Prévia da resposta: <html>...

Sistema Corrigido:

[INFO] Tentando conexão com https://localhost:8443/protected-resource...
[INFO] NÃO VULNERÁVEL: Acesso negado (Autenticação funcionando).

🧪 Cenários de Teste

CenárioStatus OCSPEsperado (Corrigido)Resultado (Vulnerável)Observações
Operação NormalOnline e Válido200 OK ✓200 OK ✓Verificação OCSP bem-sucedida, acesso concedido
Falha SuaveOffline/Timeout403 Proibido ✓200 OK ✗BYPASS - Respondedor OCSP inacessível
Revogação DefinitivaOnline e Revogado403 Proibido ✓403 Proibido ✓Certificado explicitamente revogado
Certificado InválidoCadeia Inválida403 Proibido ✓403 Proibido ✓Validação da cadeia falha

Executando Diferentes Cenários de Teste

Teste 1: Padrão (Respondedor OCSP com Falha)

# Mantenha os contêineres em execução
python poc_exploit.py

Teste 2: Parar Respondedor OCSP (Simular Timeout)

docker-compose pause ocsp-responder
python poc_exploit.py
docker-compose unpause ocsp-responder

Teste 3: Teste Manual com curl

curl -v \
  --cert certs/client-cert.pem \
  --key certs/client-key.pem \
  --cacert certs/ca-chain.pem \
  https://localhost:8443/protected-resource

🛠️ Estrutura do Projeto

CVE-2026-29145-Tester/
├── README.md                    # Este arquivo
├── setup_certs.sh              # Script de geração de certificados - Bash (Linux/macOS)
├── setup_certs.ps1             # Script de geração de certificados - PowerShell (Windows)
├── cleanup.sh                  # Script de limpeza e redefinição - Bash (Linux/macOS)
├── cleanup.ps1                 # Script de limpeza e redefinição - PowerShell (Windows)
├── run_test.sh                 # Script de ciclo de teste automatizado completo
├── docker-compose.yml          # Orquestração de serviços Docker
├── requirements.txt            # Dependências Python
├── poc_exploit.py              # Script de teste principal (com logging e tratamento de erros)
├── simple_proxy_fail.py        # Respondedor OCSP simulado (com logging detalhado)
├── .gitignore                  # Regras de ignore do Git para certificados e logs
├── certs/                      # Certificados gerados (criados pelos scripts setup_certs)
│   ├── ca-chain.pem           # Certificado da CA Raiz
│   ├── ca-key.pem             # Chave privada da CA Raiz
│   ├── server-cert.pem        # Certificado do servidor Tomcat
│   ├── server-key.pem         # Chave privada do servidor Tomcat
│   ├── client-cert.pem        # Certificado do cliente de teste
│   └── client-key.pem         # Chave privada do cliente de teste
├── tomcat/
│   └── server.xml             # Configuração do Tomcat vulnerável
└── logs/                       # Logs do Tomcat (criados em tempo de execução)

📋 Detalhes de Configuração

Configuração do Server.xml (Vulnerável)

O arquivo tomcat/server.xml configura:

<SSLHostConfig 
    hostName="localhost"
    certificateVerification="required"
    caCertificateFile="conf/certs/ca-chain.pem">
    
    <OpenSSLConf>
        <ConfCommand name="OCSP" value="on"/>
    </OpenSSLConf>
</SSLHostConfig>

Configurações Principais:

  • certificateVerification="required" - Impõe autenticação CLIENT_CERT
  • OCSP on - Habilita verificação de revogação OCSP
  • Sem override de soft-fail - Usa modo hard-fail (vulnerável)

Configuração do Respondedor OCSP

O respondedor OCSP simulado (simple_proxy_fail.py):

  • Escuta em localhost:8888
  • Sempre retorna HTTP 500 (Erro do Servidor)
  • Registra todas as solicitações OCSP recebidas
  • Simula um serviço OCSP inacessível/com falha

🔧 Solução de Problemas

Problemas Comuns e Soluções

❌ Erro: "OpenSSL não está instalado"

# macOS
brew install openssl

# Ubuntu/Debian
sudo apt-get install openssl

# CentOS/RHEL
sudo yum install openssl

❌ Erro: "Arquivos de certificado ausentes"

Causa: A geração de certificados falhou ou não foi executada.

# Limpe e regenere
rm -rf certs
./setup_certs.sh

❌ Erro: "Conexão recusada" na porta 8443

Causa: O contêiner Tomcat não está em execução ou não está pronto.

# Verifique o status do contêiner
docker-compose ps
Baixar ferramenta