Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. aiohttp
  4. ›
  5. CVE-2023-47641

CVE-2023-47641: Aiohttp has inconsistent interpretation of `Content-Length` vs. `Transfer-Encoding` differing in C and Python fallbacks

November 14, 2023 (updated November 3, 2025)

Aiohttp has a security vulnerability regarding the inconsistent interpretation of the http protocol. As we know that HTTP/1.1 is persistent, if we have both Content-Length(CL) and Transfer-Encoding(TE) 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. I can give a Dockerfile with the configuration if you want.

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 (just like CVE-2021-21330) we can combine it to redirect random users to our website and log the request.

References

  • github.com/advisories/GHSA-xx9p-xxvh-7g8j
  • github.com/aio-libs/aiohttp
  • github.com/aio-libs/aiohttp/commit/f016f0680e4ace6742b03a70cb0382ce86abe371
  • github.com/aio-libs/aiohttp/releases/tag/v3.8.0
  • github.com/aio-libs/aiohttp/security/advisories/GHSA-xx9p-xxvh-7g8j
  • github.com/pypa/advisory-database/tree/main/vulns/aiohttp/PYSEC-2023-247.yaml
  • lists.debian.org/debian-lts-announce/2025/02/msg00002.html
  • nvd.nist.gov/vuln/detail/CVE-2023-47641

Code Behaviors & Features

Detect and mitigate CVE-2023-47641 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions before 3.8.0

Fixed versions

  • 3.8.0

Solution

Upgrade to version 3.8.0 or above.

Impact 3.4 LOW

CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:N/A:N

Learn more about CVSS

Weakness

  • CWE-444: Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')

Source file

pypi/aiohttp/CVE-2023-47641.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Thu, 06 Nov 2025 12:19:18 +0000.