CVE-2025-69224: AIOHTTP's Unicode processing of header values could cause parsing discrepancies
Summary The Python HTTP parser may allow a request smuggling attack with the presence of non-ASCII characters.
Impact If a pure Python version of aiohttp is installed (i.e. without the usual C extensions) or AIOHTTPNOEXTENSIONS is enabled, then an attacker may be able to execute a request smuggling attack to bypass certain firewalls or proxy protections.
------
Patch: https://github.com/aio-libs/aiohttp/commit/32677f2adfd907420c078dda6b79225c6f4ebce0
Other sources
AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Versions 3.13.2 and below of the Python HTTP parser may allow a request smuggling attack with the presence of non-ASCII characters. If a pure Python version of AIOHTTP is installed (i.e. without the usual C extensions) or AIOHTTPNOEXTENSIONS is enabled, then an attacker may be able to execute a request smuggling attack to bypass certain firewalls or proxy protections. This issue is fixed in version 3.13.3.
— MITRE
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2025-69224?
CVE-2025-69224 is classified as a high severity vulnerability due to the potential for request smuggling attacks.
How do I fix CVE-2025-69224?
To mitigate CVE-2025-69224, upgrade aiohttp to version 3.13.3 or later.
What kind of attack does CVE-2025-69224 allow?
CVE-2025-69224 allows for request smuggling attacks when non-ASCII characters are present in HTTP requests.
Which versions of aiohttp are affected by CVE-2025-69224?
CVE-2025-69224 affects aiohttp versions up to and including 3.13.2.
In which environments is CVE-2025-69224 most concerning?
CVE-2025-69224 is most concerning in environments using the pure Python version of aiohttp without C extensions.