Staging Environment: Content and features may be unstable or change without notice.
Search for packages
Package details: pkg:deb/debian/python-aiohttp@3.7.4-1%2Bdeb11u1?distro=trixie
purl pkg:deb/debian/python-aiohttp@3.7.4-1%2Bdeb11u1?distro=trixie
Vulnerabilities affecting this package (0)
Vulnerability Summary Fixed by
This package is not known to be affected by vulnerabilities.
Vulnerabilities fixed by this package (9)
Vulnerability Summary Aliases
VCID-bcuu-jvzt-6fhn aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. Improper validation made it possible for an attacker to modify the HTTP request (e.g. to insert a new header) or create a new HTTP request if the attacker controls the HTTP version. The vulnerability only occurs if the attacker can control the HTTP version of the request. This issue has been patched in version 3.9.0. CVE-2023-49081
GHSA-q3qx-c6g2-7pw2
PYSEC-2023-250
VCID-bhkk-2b7c-wfgr aiohttp vulnerable to Denial of Service when trying to parse malformed POST requests ### Summary An attacker can send a specially crafted POST (multipart/form-data) request. When the aiohttp server processes it, the server will enter an infinite loop and be unable to process any further requests. ### Impact An attacker can stop the application from serving requests after sending a single request. ------- For anyone needing to patch older versions of aiohttp, the minimum diff needed to resolve the issue is (located in `_read_chunk_from_length()`): ```diff diff --git a/aiohttp/multipart.py b/aiohttp/multipart.py index 227be605c..71fc2654a 100644 --- a/aiohttp/multipart.py +++ b/aiohttp/multipart.py @@ -338,6 +338,8 @@ class BodyPartReader: assert self._length is not None, "Content-Length required for chunked read" chunk_size = min(size, self._length - self._read_bytes) chunk = await self._content.read(chunk_size) + if self._content.at_eof(): + self._at_eof = True return chunk async def _read_chunk_from_stream(self, size: int) -> bytes: ``` This does however introduce some very minor issues with handling form data. So, if possible, it would be recommended to also backport the changes in: https://github.com/aio-libs/aiohttp/commit/cebe526b9c34dc3a3da9140409db63014bc4cf19 https://github.com/aio-libs/aiohttp/commit/7eecdff163ccf029fbb1ddc9de4169d4aaeb6597 https://github.com/aio-libs/aiohttp/commit/f21c6f2ca512a026ce7f0f6c6311f62d6a638866 CVE-2024-30251
GHSA-5m98-qgg9-wh84
VCID-jxqg-x9dh-z3hb aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. Security-sensitive parts of the Python HTTP parser retained minor differences in allowable character sets, that must trigger error handling to robustly match frame boundaries of proxies in order to protect against injection of additional requests. Additionally, validation could trigger exceptions that were not handled consistently with processing of other malformed input. Being more lenient than internet standards require could, depending on deployment environment, assist in request smuggling. The unhandled exception could cause excessive resource consumption on the application server and/or its logging facilities. This vulnerability exists due to an incomplete fix for CVE-2023-47627. Version 3.9.2 fixes this vulnerability. CVE-2024-23829
GHSA-8qpw-xqxj-h4r2
PYSEC-2024-26
VCID-pmr9-w1fc-93cm aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. The HTTP parser in AIOHTTP has numerous problems with header parsing, which could lead to request smuggling. This parser is only used when AIOHTTP_NO_EXTENSIONS is enabled (or not using a prebuilt wheel). These bugs have been addressed in commit `d5c12ba89` which has been included in release version 3.8.6. Users are advised to upgrade. There are no known workarounds for these issues. CVE-2023-47627
GHSA-gfw2-4jvh-wgfg
PYSEC-2023-246
VCID-pqus-ew4j-k7da aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. When using aiohttp as a web server and configuring static routes, it is necessary to specify the root path for static files. Additionally, the option 'follow_symlinks' can be used to determine whether to follow symbolic links outside the static root directory. When 'follow_symlinks' is set to True, there is no validation to check if reading a file is within the root directory. This can lead to directory traversal vulnerabilities, resulting in unauthorized access to arbitrary files on the system, even when symlinks are not present. Disabling follow_symlinks and using a reverse proxy are encouraged mitigations. Version 3.9.2 fixes this issue. CVE-2024-23334
GHSA-5h86-8mv2-jq9f
PYSEC-2024-24
VCID-t2aj-cszz-tyd7 aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. Affected versions of aiohttp have a security vulnerability regarding the inconsistent interpretation of the http protocol. HTTP/1.1 is a persistent protocol, if both Content-Length(CL) and Transfer-Encoding(TE) header values are present it can lead to incorrect interpretation of two entities that parse the HTTP and we can poison other sockets with this incorrect interpretation. A possible Proof-of-Concept (POC) would be a configuration with a reverse proxy(frontend) that accepts both CL and TE headers and aiohttp as backend. As aiohttp parses anything with chunked, we can pass a chunked123 as TE, the frontend entity will ignore this header and will parse Content-Length. The impact of this vulnerability is that it is possible to bypass any proxy rule, poisoning sockets to other users like passing Authentication Headers, also if it is present an Open Redirect an attacker could combine it to redirect random users to another website and log the request. This vulnerability has been addressed in release 3.8.0 of aiohttp. Users are advised to upgrade. There are no known workarounds for this vulnerability. CVE-2023-47641
GHSA-xx9p-xxvh-7g8j
PYSEC-2023-247
VCID-tn28-662n-vug8 aiohttp Cross-site Scripting vulnerability on index pages for static file handling ### Summary A XSS vulnerability exists on index pages for static file handling. ### Details When using `web.static(..., show_index=True)`, the resulting index pages do not escape file names. If users can upload files with arbitrary filenames to the static directory, the server is vulnerable to XSS attacks. ### Workaround We have always recommended using a reverse proxy server (e.g. nginx) for serving static files. Users following the recommendation are unaffected. Other users can disable `show_index` if unable to upgrade. ----- Patch: https://github.com/aio-libs/aiohttp/pull/8319/files CVE-2024-27306
GHSA-7gpw-8wmc-pm8g
VCID-ue33-na1g-rqa7 aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. Improper validation makes it possible for an attacker to modify the HTTP request (e.g. insert a new header) or even create a new HTTP request if the attacker controls the HTTP method. The vulnerability occurs only if the attacker can control the HTTP method (GET, POST etc.) of the request. If the attacker can control the HTTP version of the request it will be able to modify the request (request smuggling). This issue has been patched in version 3.9.0. CVE-2023-49082
GHSA-qvrw-v9rv-5rjx
PYSEC-2023-251
VCID-zrgm-47ph-x3g3 aiohttp allows request smuggling due to incorrect parsing of chunk extensions ### Summary The Python parser parses newlines in chunk extensions incorrectly which can lead to request smuggling vulnerabilities under certain conditions. ### Impact 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. ----- Patch: https://github.com/aio-libs/aiohttp/commit/259edc369075de63e6f3a4eaade058c62af0df71 CVE-2024-52304
GHSA-8495-4g3g-x7pr

Date Actor Action Vulnerability Source VulnerableCode Version
2026-04-16T13:18:20.462965+00:00 Debian Importer Fixing VCID-bhkk-2b7c-wfgr https://security-tracker.debian.org/tracker/data/json 38.4.0
2026-04-16T13:15:49.966851+00:00 Debian Importer Fixing VCID-pqus-ew4j-k7da https://security-tracker.debian.org/tracker/data/json 38.4.0
2026-04-16T12:38:45.315859+00:00 Debian Importer Fixing VCID-pmr9-w1fc-93cm https://security-tracker.debian.org/tracker/data/json 38.4.0
2026-04-16T11:20:47.919259+00:00 Debian Importer Fixing VCID-zrgm-47ph-x3g3 https://security-tracker.debian.org/tracker/data/json 38.4.0
2026-04-16T11:17:32.749634+00:00 Debian Importer Fixing VCID-t2aj-cszz-tyd7 https://security-tracker.debian.org/tracker/data/json 38.4.0
2026-04-16T11:12:40.284949+00:00 Debian Importer Fixing VCID-ue33-na1g-rqa7 https://security-tracker.debian.org/tracker/data/json 38.4.0
2026-04-16T10:13:55.675387+00:00 Debian Importer Fixing VCID-bcuu-jvzt-6fhn https://security-tracker.debian.org/tracker/data/json 38.4.0
2026-04-13T09:09:58.434365+00:00 Debian Importer Fixing VCID-bhkk-2b7c-wfgr https://security-tracker.debian.org/tracker/data/json 38.3.0
2026-04-13T09:08:03.565594+00:00 Debian Importer Fixing VCID-pqus-ew4j-k7da https://security-tracker.debian.org/tracker/data/json 38.3.0
2026-04-13T08:39:56.548217+00:00 Debian Importer Fixing VCID-pmr9-w1fc-93cm https://security-tracker.debian.org/tracker/data/json 38.3.0
2026-04-13T07:43:25.790772+00:00 Debian Importer Fixing VCID-zrgm-47ph-x3g3 https://security-tracker.debian.org/tracker/data/json 38.3.0
2026-04-13T07:40:56.450710+00:00 Debian Importer Fixing VCID-t2aj-cszz-tyd7 https://security-tracker.debian.org/tracker/data/json 38.3.0
2026-04-13T07:37:16.865490+00:00 Debian Importer Fixing VCID-ue33-na1g-rqa7 https://security-tracker.debian.org/tracker/data/json 38.3.0
2026-04-13T06:52:47.683465+00:00 Debian Importer Fixing VCID-bcuu-jvzt-6fhn https://security-tracker.debian.org/tracker/data/json 38.3.0
2026-04-03T07:50:35.583847+00:00 Debian Importer Fixing VCID-zrgm-47ph-x3g3 https://security-tracker.debian.org/tracker/data/json 38.1.0
2026-04-03T07:50:35.408926+00:00 Debian Importer Fixing VCID-bhkk-2b7c-wfgr https://security-tracker.debian.org/tracker/data/json 38.1.0
2026-04-03T07:50:35.341943+00:00 Debian Importer Fixing VCID-tn28-662n-vug8 https://security-tracker.debian.org/tracker/data/json 38.1.0
2026-04-03T07:50:35.275629+00:00 Debian Importer Fixing VCID-jxqg-x9dh-z3hb https://security-tracker.debian.org/tracker/data/json 38.1.0
2026-04-03T07:50:35.208460+00:00 Debian Importer Fixing VCID-pqus-ew4j-k7da https://security-tracker.debian.org/tracker/data/json 38.1.0
2026-04-03T07:50:35.148778+00:00 Debian Importer Fixing VCID-ue33-na1g-rqa7 https://security-tracker.debian.org/tracker/data/json 38.1.0
2026-04-03T07:50:35.090235+00:00 Debian Importer Fixing VCID-bcuu-jvzt-6fhn https://security-tracker.debian.org/tracker/data/json 38.1.0
2026-04-03T07:50:35.043256+00:00 Debian Importer Fixing VCID-t2aj-cszz-tyd7 https://security-tracker.debian.org/tracker/data/json 38.1.0
2026-04-03T07:50:34.987199+00:00 Debian Importer Fixing VCID-pmr9-w1fc-93cm https://security-tracker.debian.org/tracker/data/json 38.1.0