aiohttp <3.10.11 Request Smuggling via Incorrect Chunk Extension Parsing
CVE-2024-52304 Published on November 18, 2024
aiohttp vulnerable to request smuggling due to incorrect parsing of chunk extensions
aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.10.11, the Python parser parses newlines in chunk extensions incorrectly which can lead to request smuggling vulnerabilities under certain conditions. If a pure Python version of aiohttp is installed (i.e. without the usual C extensions) or `AIOHTTP_NO_EXTENSIONS` is enabled, then an attacker may be able to execute a request smuggling attack to bypass certain firewalls or proxy protections. Version 3.10.11 fixes the issue.
Weakness Type
What is a HTTP Request Smuggling Vulnerability?
When malformed or abnormal HTTP requests are interpreted by one or more entities in the data flow between the user and the web server, such as a proxy or firewall, they can be interpreted inconsistently, allowing the attacker to "smuggle" a request to one device without the other device being aware of it.
CVE-2024-52304 has been classified to as a HTTP Request Smuggling vulnerability or weakness.
Products Associated with CVE-2024-52304
stack.watch emails you whenever new vulnerabilities are published in Aiohttp or Python Aiohttp. Just hit a watch button to start following.
Affected Versions
aio-libs aiohttp:- Version < 3.10.11 is affected.
- Before 3.10.11 is affected.
Vulnerable Packages
The following package name and versions may be associated with CVE-2024-52304
| Package Manager | Vulnerable Package | Versions | Fixed In |
|---|---|---|---|
| pip | aiohttp | <= 3.10.10 | 3.10.11 |
Exploit Probability
EPSS (Exploit Prediction Scoring System) scores estimate the probability that a vulnerability will be exploited in the wild within the next 30 days. The percentile shows you how this score compares to all other vulnerabilities.