Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2025-8671 PoC — CVE-2025-8671

Source
Associated Vulnerability
Title:CVE-2025-8671 (CVE-2025-8671)
Description:A mismatch caused by client-triggered server-sent stream resets between HTTP/2 specifications and the internal architectures of some HTTP/2 implementations may result in excessive server resource consumption leading to denial-of-service (DoS). By opening streams and then rapidly triggering the server to reset them—using malformed frames or flow control errors—an attacker can exploit incorrect stream accounting. Streams reset by the server are considered closed at the protocol level, even though backend processing continues. This allows a client to cause the server to handle an unbounded number of concurrent streams on a single connection. This CVE will be updated as affected product details are released.
Description
PoC para validar vulnerabilidade MadeYouReset
Readme
# PoC-CVE-2025-8671-MadeYouReset-HTTP-2
PoC para validar vulnerabilidade MadeYouReset

Este repositório contém uma PoC controlada desenvolvida para validar se uma infraestrutura é potencialmente vulnerável à CVE-2025-8671 (MadeYouReset).
O código não é um exploit completo e não realiza DoS real – o objetivo é somente simular os vetores descritos publicamente e observar as respostas do servidor.

Sobre a CVE-2025-8671
A CVE-2025-8671 afeta implementações HTTP/2 em que o servidor não lida corretamente com certos frames inválidos enviados após o encerramento de streams ou conexões.
Um atacante poderia explorar a falha para causar consumo excessivo de CPU/memória, resultando em negação de serviço (DoS).

Os vetores mais comuns descritos publicamente incluem:

* WINDOW\_UPDATE inválido (em stream inexistente ou conexão com janela zero)
* DATA enviado após END\_STREAM
* HEADERS de tamanho zero após o encerramento do stream
* PRIORITY com tamanho inválido após encerramento
* CONTINUATION sem HEADERS prévios

O que o código faz
O script:

1. Estabelece conexão HTTP/2 com o alvo informado.

2. Executa requisições para os vetores conhecidos (listados acima).

3. Monitora a resposta do servidor, registrando eventos como:

   * GOAWAY (encerramento da conexão pelo servidor)
   * RST\_STREAM (reset adequado do stream inválido)
   * Fechamento antecipado da conexão
   * Respostas recebidas (quando o servidor processa a request)
   * Erros internos

4. Para cada tentativa, gera uma saída em JSON com:

   * vector → vetor de ataque testado
   * attempt → número da tentativa
   * rst\_stream → se o servidor resetou o stream
   * goaway → se o servidor encerrou a conexão
   * responses → se houve resposta do servidor
   * conn\_closed\_early → se a conexão foi encerrada antes do esperado
   * error → mensagem de erro capturada localmente

Limitações

* O script não é um exploit de DoS real. Ele envia apenas algumas dezenas de frames por vetor para detecção controlada.
* O código não mede exaustão de CPU/memória do servidor diretamente; a análise depende de:

  * Logs do lado do servidor, CDN ou backend
  * Métricas de tempo de resposta, bytes enviados e status codes
* Não cobre todos os cenários possíveis de exploração, apenas os vetores já descritos publicamente.
* É uma ferramenta de validação defensiva, não de ataque.

Como usar

Requisitos

* Python 3.10 ou superior
* Dependências:
  pip install h2 hyperframe

Execução


python3 poc_cve.py

Interpretação dos Resultados

GOAWAY = 1 → o servidor encerrou corretamente a conexão.
RST_STREAM = 1 → o servidor resetou corretamente o stream inválido.
responses > 0 → o servidor processou a request (aceitável em paths válidos, desde que encerre depois).
conn_closed_early = 1 → o servidor fechou a conexão de forma imediata (normal em alguns vetores).
error → indica erro local do cliente (não necessariamente problema do servidor).

Infraestruturas não vulneráveis costumam:

Encerrar a conexão (GOAWAY) ou resetar streams inválidos (RST_STREAM)

Não manter processamento ativo após os frames inválidos

Não apresentar lentidão ou consumo anômalo nos logs

Conclusão

Este código permite validar, de forma segura e não intrusiva, se uma infraestrutura HTTP/2 reage adequadamente aos vetores associados à CVE-2025-8671.

Ele cumpre seu propósito de PoC defensiva: detectar comportamentos incorretos sem gerar DoS real ou explorar a falha em produção.
  


File Snapshot

[4.0K] /data/pocs/9849aa8a3170748c8b11473d301cb9af69f3389e ├── [6.3K] PoC_CVE-2025-8671.py └── [3.5K] README.md 0 directories, 2 files
Shenlong Bot has cached this for you
Remarks
    1. It is advised to access via the original source first.
    2. Local POC snapshots are reserved for subscribers — if the original source is unavailable, the local mirror is part of the paid plan.
    3. Mirroring, verifying, and maintaining this POC archive takes ongoing effort, so local snapshots are a paid feature. Your subscription keeps the archive online — thank you for the support. View subscription plans →