
This main is a Proof of Concept (PoC) for CVE-2023-44487, also known as the HTTP/2 Rapid Reset Attack. The vulnerability allows attackers to perform a Denial of Service (DoS) attack by rapidly sending RST_STREAM frames over HTTP/2 connections, overwhelming the target server.
Install the required Python libraries using the following command:
pip install -r requirements.txt
Alternatively, you can install them individually:
pip install httpx==0.24.0
pip install h2==4.1.0
pip install tqdm==4.66.1
pip install xlsxwriter==3.1.6
Clone the Repository
git clone https://github.com/yourusername/CVE-2023-44487-HTTP-2-Rapid-Reset-Exploit-PoC.git
cd CVE-2023-44487-HTTP-2-Rapid-Reset-Exploit-PoC
Set Up a Virtual Environment (Optional but Recommended)
python3 -m venv venv
source venv/bin/activate
Install Dependencies
pip install -r requirements.txt
--url: URL to test (e.g., https://example.com or http://example.com)--bulk: File containing a list of URLs to test--port: Specify port (default is 443 for HTTPS, 80 for HTTP)--output: Output file to save results (.csv, .txt, or .xlsx)Test a Single URL
python3 main.py --url https://example.com
Test Multiple URLs from a File
python3 main.py --bulk urls.txt
Specify a Custom Port
python3 main.py --url http://example.com --port 8080
Save Results to a File
python3 main.py --bulk urls.txt --output results.xlsx
[
{
"Timestamp": "2024-12-03 10:00:00",
"URL": "https://example.com",
"HTTP/2 Support": "Yes",
"Vulnerable": "VULNERABLE",
"Details": "RST_STREAM sent successfully"
},
{
"Timestamp": "2024-12-03 10:00:05",
"URL": "http://testsite.com",
"HTTP/2 Support": "No",
"Vulnerable": "SAFE",
"Details": "Downgraded to HTTP/1.1"
}
]
RST_STREAM frame in a way that suggests it might be vulnerable to CVE-2023-44487. Further manual verification is recommended.httpx==0.24.0
h2==4.1.0
tqdm==4.66.1
xlsxwriter==3.1.6
Assuming you have a file named urls.txt containing:
https://example.com
http://testsite.com
https://vulnerable-site.com
Command:
python3 main.py --bulk urls.txt --output results.csv
Sample results.csv:
Timestamp,URL,HTTP/2 Support,Vulnerable,Details
2024-12-03 10:15:00,https://example.com,Yes,VULNERABLE,RST_STREAM sent successfully
2024-12-03 10:15:05,http://testsite.com,No,SAFE,Downgraded to HTTP/1.1
2024-12-03 10:15:10,https://vulnerable-site.com,Yes,VULNERABLE,RST_STREAM sent successfully
Note: Replace https://vulnerable-site.com with an actual site you have permission to test.
Let me know if you need further assistance or modifications!
| Timestamp | URL | HTTP/2 Support | Vulnerable | Details |
|---|
| 2024-12-03 10:00:00 | https://example.com | Yes | VULNERABLE | RST_STREAM sent successfully |
| 2024-12-03 10:00:05 | http://testsite.com | No | SAFE | Downgraded to HTTP/1.1 |