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-2026-33555 — Um pacote QUIC de zero bytes é suficiente para dessincronizar o pool de conexões de backend do HAProxy e contrabandear requisições HTTP entre usuários não relacionados — até mesmo usuários em um protocolo de frontend completamente diferente. | Kitploit
Ferramentas/GitHubGitHub/r3verii/cve-2026-33555
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebSegurança WebSegurança de RedePapers e Pesquisa
GitHubr3verii/cve-2026-33555

CVE-2026-33555

Um pacote QUIC de zero bytes é suficiente para dessincronizar o pool de conexões de backend do HAProxy e contrabandear requisições HTTP entre usuários não relacionados — até mesmo usuários em um protocolo de frontend completamente diferente.

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

Bypass de Validação de Corpo FIN Standalone em HAProxy H3/QUIC para Contrabando de Requisições HTTP

Post completo aqui : https://r3verii.github.io/cve/2026/04/14/haproxy-h3-standalone-fin-smuggling.html

Resumo

Uma vulnerabilidade na implementação HTTP/3 do HAProxy permite que um atacante envie uma requisição HTTP com um cabeçalho Content-Length que não corresponde ao tamanho real do corpo. O HAProxy encaminha essa requisição malformada para o backend via HTTP/1.1 com o Content-Length declarado, mas zero bytes de corpo. Quando o backend envia uma resposta antecipada (ex.: redirecionamento 301) e drena o corpo pendente da conexão TCP, ele consome bytes pertencentes à próxima requisição HTTP naquela conexão — que pode ser originada de um usuário diferente.

Isso resulta em contrabando de requisições HTTP entre usuários via o pool de conexões do backend do HAProxy.

Afetado: HAProxy com suporte a QUIC/H3 (USE_QUIC=1). Testado no HAProxy 3.0.18. Configuração necessária: http-reuse always (não padrão, mas comum em produção)

Configuração do Laboratório

Docker Compose com 3 serviços:

  • haproxy: Frontend H3/QUIC (porta 10002/udp) + H2/TCP (porta 10002/tcp), pooling de conexões do backend (http-reuse always)
  • nginx: Nginx 1.27 padrão com autoindex on no diretório /photos, /status retorna 200
  • client: Contêiner Python com aioquic

Passos

root@kitploit:~
# 1. Inicie o laboratório (a compilação do HAProxy leva ~10 min na primeira vez)
cd poc/
docker compose up -d --build

# 2. Execute o PoC em modo contínuo
docker exec -it poc-client python3 poc.py --target haproxy --port 10002 --interval 3

# 3. Em um navegador, acesse https://<host>:10002/status
#    (aceite o certificado autoassinado, use --ignore-certificate-errors no Chrome)
#    Atualize repetidamente. ~50% das respostas serão 400 Bad Request.

# 4. Pare o PoC (Ctrl+C). Todas as respostas do navegador voltam ao normal (200).

Verificação de disparo único

root@kitploit:~
docker exec -it poc-client python3 poc.py --target haproxy --port 10002 --once

Saída esperada:

root@kitploit:~
[1] Enviando requisição de envenenamento (H3/QUIC)...
    -> 301 recebido. Conexão do backend no pool com dreno de corpo pendente.
[2] Aguardando 0.5s para o HAProxy colocar a conexão no pool...
[3] Enviando requisição GET /status da vítima a partir de conexão QUIC SEPARADA...
    -> Resposta: HTTP 400

  [!] CONTRABANDO CONFIRMADO
  [!] Vítima em conexão separada recebeu 400 em vez de 200
  [!] Backend interpretou a requisição da vítima como corpo do POST de envenenamento
Baixar ferramenta