
CVE-2025-8671 취약점 PoC
CVE-2025-8671 취약점 PoC
HTTP/2 서버에서 MadeYouReset 취약점(CVE-2025-8671)을 탐지하는 전문 보안 연구 도구입니다. 이 스캐너는 스트림 어카운팅 조작 공격에 취약한 서버를 식별하기 위해 여러 탐지 휴리스틱을 사용합니다.
MadeYouReset 취약점은 비정상적인 프로토콜 위반을 통해 서버가 RST_STREAM 프레임을 보내도록 강제하면서 백엔드 처리는 계속되게 하여 HTTP/2 스트림 어카운팅을 악용합니다. 이로 인해 다음과 같은 리소스 고갈 상태가 발생할 수 있습니다:
스캐너는 세 가지 기본 공격 원리를 테스트합니다:
git clone https://github.com/mysara2022/CVE-2025-8671-vulnerability-POC-.git
cd CVE-2025-8671-vulnerability-POC
pip3 install -r requirements.txt
또는 수동으로 설치:
pip3 install h2
chmod +x cve-2025-8671-scanner.py---
domains.txt 파일을 만들고 줄마다 도메인 하나를 입력하세요:
# Production servers
prod-api.example.com
prod-web.example.com
# Staging servers
staging.example.org
# CDN endpoints
cdn1.example.net
cdn2.example.net
#로 시작하는 줄은 주석으로 처리됩니다domains.txt 파일을 만들고 줄마다 도메인 하나를 입력하세요:
# Production servers
prod-api.example.com
prod-web.example.com
# Staging servers
staging.example.org
# CDN endpoints
cdn1.example.net
cdn2.example.net
#로 시작하는 줄은 주석으로 처리됩니다단일 도메인 테스트:
python3 cve-2025-8671-scanner.py example.com
파일에서 여러 도메인 테스트:
python3 cve-2025-8671-scanner.py domains.txt
python3 cve-2025-8671-scanner.py <domain|file> [options]
Options:
--verbose Show detailed testing output
--runs N Number of test iterations (default: 3)
상세(verbose) 단일 도메인 스캔:
python3 cve-2025-8671-scanner.py vulnerable-server.com --verbose
5회 반복 배치 스캔:
python3 cve-2025-8671-scanner.py domains.txt --runs 5
상세 출력을 이용한 세부 분석:
python3 cve-2025-8671-scanner.py target.example.org --verbose --runs 5
http:// 또는 https:// 접두사는 필요하지 않습니다스캐너는 여러 지표를 기반으로 취약점 점수(0-15+)를 계산합니다:
스캐너는 다음 취약점 신호를 분석합니다:
======================================================================
Testing: vulnerable-api.example.com
======================================================================
✓ vulnerable-api.example.com - VULNERABLE
Confidence: HIGH (score: 8.0/max: 9)
Indicators: 7.3 avg server RST, 2.0 avg 5xx, no GOAWAY
======================================================================
SCAN SUMMARY
======================================================================
Total tested: 5
Vulnerable: 2
Likely vulnerable: 1
Possibly vulnerable: 0
Not vulnerable: 2
기준 측정
공격 단계
분석 단계
# WINDOW_UPDATE with increment=0 (RFC 7540 violation)
USE_WINDOW_UPDATE_ZERO = True
# WINDOW_UPDATE causing flow control overflow
USE_WINDOW_OVERFLOW = True
# DATA frames on half-closed streams
USE_HALF_CLOSED_DATA = True
조정 가능한 주요 매개변수(소스 코드에서 수정 가능):
PORT = 443 # Target port
TIMEOUT = 6 # Connection timeout
TOTAL_STREAMS = 100 # Max streams to open
SCAN_TIME_LIMIT = 15 # Max scan duration (seconds)
BASELINE_PINGS = 5 # Baseline RTT measurements
보안 연구 및 승인된 테스트 전용
이 도구는 합법적인 보안 연구와 취약점 평가를 위해 제공됩니다. 사용자는 다음을 준수해야 합니다:
저자는 이 소프트웨어로 인한 오용 또는 손해에 대해 책임을 지지 않습니다.
⚡ 보안을 유지하고 책임감 있게 스캔하세요!
| 점수 범위 | 분류 | 신뢰도 | 필요 조치 |
|---|
| 6+ | ✅ 취약 | 높음 | 즉시 패치 권장 |
| 4-5 | ⚠️ 취약 가능성 높음 | 중간 | 추가 조사 필요 |
| 2-3 | ❓ 취약 가능성 있음 | 낮음 | 모니터링 및 재테스트 |
| 0-1 | ❌ 취약하지 않음 | 해당 없음 | 조치 불필요 |