Vulnerabilities in pkg:pypi/aiohttp

PACKAGE
Advisory Identifier: GHSA-cq5v-8q36-5273
Advisory Summary

CVE-2026-69244 is a HIGH out-of-bounds heap read vulnerability (CWE-125: Out-of-bounds Read) affecting AIOHTTP libraries in the PyPI ecosystem. The issue involves out-of-bounds heap read in c http response parser error path (malformed chunked response). Remediation is available by upgrading affected packages to version 3.14.3.

48 Known Advisory Record(s)
Package Vulnerability Intelligence

pkg:pypi/aiohttp

48 Known Advisory Record(s)

Vulnerability advisories affecting package pkg:pypi/aiohttp. Select an advisory below to view technical details or fixes.

Advisory ID CVE / NVD Severity Summary
GHSA-cq5v-8q36-5273 CVE-2026-69244 HIGH AIOHTTP: Out-of-bounds heap read in C HTTP response parser error path (malformed chunked response)
GHSA-mfx4-hv73-q22v CVE-2026-69243 MODERATE AIOHTTP: HTTP request smuggling via WebSocket upgrade
GHSA-mq44-7p77-q5h7 CVE-2026-59881 MODERATE AIOHTTP: WebSocket client accepts compressed frames without negotiated permessage-deflate
GHSA-63hf-3vf5-4wqf CVE-2026-34520 LOW AIOHTTP's C parser (llhttp) accepts null bytes and control characters in response header values - header injection/security bypass
GHSA-xcgm-r5h9-7989 CVE-2026-54274 MODERATE aiohttp: Incomplete websocket frame payloads bypass memory limits
GHSA-4m7w-qmgq-4wj5 CVE-2026-54275 LOW aiohttp: TLS Server Hostname Override Is Ignored When Reusing HTTPS Connections
GHSA-9x8q-7h8h-wcw9 CVE-2026-54280 LOW aiohttp: Payload Response Resources Are Not Closed After Mid-Body Disconnect
GHSA-4fvr-rgm6-gqmc CVE-2026-54273 MODERATE aiohttp: HTTP/1 Pipelined Requests Queue Without Limit
GHSA-g3cq-j2xw-wf74 CVE-2026-54278 MODERATE aiohttp: Unread Compressed Request Bodies Bypass client_max_size During Cleanup
GHSA-63hw-fmq6-xxg2 CVE-2026-54277 MODERATE aiohttp: C HTTP Parser Bypasses max_line_size for Fragmented Lines
GHSA-hpj7-wq8m-9hgp CVE-2026-54276 MODERATE aiohttp: DigestAuthMiddleware Applies Credentials to Cross-Origin Redirect Challenges
GHSA-2fqr-mr3j-6wp8 CVE-2026-54279 LOW aiohttp: Host-Only Cookies Become Domain Cookies After CookieJar Persistence
GHSA-m6qw-4cw2-hm4m CVE-2026-50269 LOW aiohttp: CRLF injection in multipart headers
GHSA-rwqr-c348-m5wr CVE-2022-33124 MODERATE Withdrawn: Denial of Service in aiohttp
GHSA-hg6j-4rv6-33pg CVE-2026-47265 MODERATE AIOHTTP is vulnerable to cross-origin redirect with per-request cookies
GHSA-jg22-mg44-37j8 CVE-2026-34993 MODERATE AIOHTTP is Vulnerable to Deserialization of Untrusted Data
GHSA-966j-vmvw-g2g9 CVE-2026-34518 LOW AIOHTTP leaks Cookie and Proxy-Authorization headers on cross-origin redirect
GHSA-m5qp-6w8w-w647 CVE-2026-34516 MODERATE AIOHTTP has a Multipart Header Size Bypass
GHSA-p998-jp59-783m CVE-2026-34515 MODERATE AIOHTTP affected by UNC SSRF/NTLMv2 Credential Theft/Local File Read in static resource handler on Windows
GHSA-2vrm-gr82-f7m5 CVE-2026-34514 LOW AIOHTTP has CRLF injection through multipart part content type header construction
GHSA-hcc4-c3v8-rx92 CVE-2026-34513 LOW AIOHTTP Affected by Denial of Service (DoS) via Unbounded DNS Cache in TCPConnector
GHSA-w2fm-2cpv-w7v5 CVE-2026-22815 MODERATE aiohttp allows unlimited trailer headers, leading to possible uncapped memory usage
GHSA-c427-h43c-vf67 CVE-2026-34525 MODERATE AIOHTTP accepts duplicate Host headers
GHSA-mwh4-6h8g-pg8w CVE-2026-34519 LOW AIOHTTP has HTTP response splitting via \r in reason phrase
GHSA-3wq7-rqq7-wx6j CVE-2026-34517 LOW AIOHTTP has late size enforcement for non-file multipart fields causes memory DoS
GHSA-5h86-8mv2-jq9f CVE-2024-23334 HIGH aiohttp is vulnerable to directory traversal
GHSA-fh55-r93g-j68g CVE-2025-69230 LOW AIOHTTP Vulnerable to Cookie Parser Warning Storm
GHSA-g84x-mcqj-x9qq CVE-2025-69229 MODERATE AIOHTTP vulnerable to DoS through chunked messages
GHSA-6jhg-hg63-jvvf CVE-2025-69228 MODERATE AIOHTTP vulnerable to denial of service through large payloads
GHSA-jj3x-wxrx-4x23 CVE-2025-69227 MODERATE AIOHTTP vulnerable to DoS when bypassing asserts
GHSA-54jq-c3m8-4m76 CVE-2025-69226 LOW AIOHTTP vulnerable to brute-force leak of internal static file path components
GHSA-mqqc-3gqh-h2x8 CVE-2025-69225 LOW AIOHTTP has unicode match groups in regexes for ASCII protocol elements
GHSA-69f9-5gxw-wvc2 CVE-2025-69224 LOW AIOHTTP's unicode processing of header values could cause parsing discrepancies
GHSA-6mq8-rvhq-8wgg CVE-2025-69223 HIGH AIOHTTP's HTTP Parser auto_decompress feature is vulnerable to zip bomb
GHSA-8495-4g3g-x7pr CVE-2024-52304 MODERATE aiohttp allows request smuggling due to incorrect parsing of chunk extensions
GHSA-5m98-qgg9-wh84 CVE-2024-30251 HIGH aiohttp vulnerable to Denial of Service when trying to parse malformed POST requests
GHSA-7gpw-8wmc-pm8g CVE-2024-27306 MODERATE aiohttp Cross-site Scripting vulnerability on index pages for static file handling
GHSA-8qpw-xqxj-h4r2 CVE-2024-23829 MODERATE aiohttp's HTTP parser (the python one, not llhttp) still overly lenient about separators
GHSA-q3qx-c6g2-7pw2 CVE-2023-49081 MODERATE aiohttp's ClientSession is vulnerable to CRLF injection via version
GHSA-qvrw-v9rv-5rjx CVE-2023-49082 MODERATE aiohttp's ClientSession is vulnerable to CRLF injection via method
GHSA-xx9p-xxvh-7g8j CVE-2023-47641 LOW Aiohttp has inconsistent interpretation of `Content-Length` vs. `Transfer-Encoding` differing in C and Python fallbacks
GHSA-gfw2-4jvh-wgfg CVE-2023-47627 MODERATE AIOHTTP has problems in HTTP parser (the python one, not llhttp)
GHSA-9548-qrrj-x5pj CVE-2025-53643 LOW AIOHTTP is vulnerable to HTTP Request/Response Smuggling through incorrect parsing of chunked trailer sections
GHSA-jwhx-xcg6-8xhj CVE-2024-42367 MODERATE In aiohttp, compressed files as symlinks are not protected from path traversal
GHSA-27mf-ghqm-j3j8 CVE-2024-52303 MODERATE aiohttp has a memory leak when middleware is enabled when requesting a resource with a non-allowed method
GHSA-45c4-8wx5-qw6w CVE-2023-37276 MODERATE aiohttp.web.Application vulnerable to HTTP request smuggling via llhttp HTTP request parser
GHSA-v6wp-4m6f-gcjg CVE-2021-21330 LOW `aiohttp` Open Redirect vulnerability (`normalize_path_middleware` middleware)
GHSA-pjjw-qhg8-p2p9 - MODERATE aiohttp has vulnerable dependency that is vulnerable to request smuggling

CVE-2026-69244 at a Glance

CVE Identifier CVE-2026-69244
GHSA Identifier GHSA-cq5v-8q36-5273
Severity HIGH
CVSS v3.1 Base Score N/A
CWE Classification CWE-125: Out-of-bounds Read
Affected Product AIOHTTP
Package Ecosystem PyPI
Published Date
Last Updated

How to Fix CVE-2026-69244

To remediate this vulnerability, upgrade all affected AIOHTTP dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

aiohttp fixed: 3.14.3
pip install aiohttp>=3.14.3
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

pip show aiohttp

How to Check if You Are Affected

To determine whether your Python environment is affected by CVE-2026-69244, inspect your installed packages using pip:

pip show aiohttp

Analyze the terminal output to locate any version of AIOHTTP in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 3.14.3), your application is affected.

Note: The pip show aiohttp command checks currently installed packages in your active Python environment.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-125: Out-of-bounds Read, where the product reads data past the end, or before the beginning, of the intended buffer. In AIOHTTP, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

### Summary An out-of-bounds heap read could occur in the C response parser while building an error message for a malformed response. ### Impact An attacker controlled server, or possibly an accidental response could trigger a DoS in the client. ### Workaround If unable to upgrade, the Python parser is unaffected and can be used with `AIOHTTP_NO_EXTENSIONS=1`. --- Patch: https://github.com/aio-libs/aiohttp/commit/49f65d54150397892f7bcc4aae887767d51c322d

CVE-2026-69244 Affected AIOHTTP Versions

1 component(s)
Fixed Versions:
3.14.3
Product / Package Ecosystem Affected Versions Fixed Version
aiohttp
PyPI
< 3.14.3
3.14.3

References

Frequently Asked Questions

What is CVE-2026-69244?
CVE-2026-69244 is a security vulnerability in AIOHTTP involving Out-of-bounds heap read in C HTTP response parser error path (malformed chunked response) under CWE-125: Out-of-bounds Read.
Which AIOHTTP versions are affected?
Affected versions include releases prior to 3.14.3 across affected packages: aiohttp.
What version fixes CVE-2026-69244?
Upgrading to 3.14.3 (or the latest patched release for your respective branch) resolves the vulnerability.
Is aiohttp affected?
Yes, aiohttp is affected in releases prior to 3.14.3. Upgrade your dependency to 3.14.3 or later.
What CWE is associated with CVE-2026-69244?
CVE-2026-69244 is classified under CWE-125: Out-of-bounds Read (The product reads data past the end, or before the beginning, of the intended buffer.).
How can I check PyPI dependencies for CVE-2026-69244?
Run the dependency tree command: 'pip show aiohttp'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-cq5v-8q36-5273",
  "modified" : "2026-08-03T20:51:13Z",
  "published" : "2026-08-03T20:51:13Z",
  "aliases" : [ "CVE-2026-69244" ],
  "summary" : "AIOHTTP: Out-of-bounds heap read in C HTTP response parser error path (malformed chunked response)",
  "details" : "### Summary\n\nAn out-of-bounds heap read could occur in the C response parser while building an error message for a malformed response.\n\n### Impact\n\nAn attacker controlled server, or possibly an accidental response could trigger a DoS in the client.\n\n### Workaround\n\nIf unable to upgrade, the Python parser is unaffected and can be used with `AIOHTTP_NO_EXTENSIONS=1`.\n\n---\n\nPatch: https://github.com/aio-libs/aiohttp/commit/49f65d54150397892f7bcc4aae887767d51c322d",
  "severity" : [ {
    "type" : "CVSS_V4",
    "score" : "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "PyPI",
      "name" : "aiohttp"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "3.14.3"
      } ]
    } ],
    "database_specific" : {
      "last_known_affected_version_range" : "<= 3.14.2"
    }
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/aio-libs/aiohttp/security/advisories/GHSA-cq5v-8q36-5273"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/aio-libs/aiohttp/pull/13223"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/aio-libs/aiohttp/commit/49f65d54150397892f7bcc4aae887767d51c322d"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/aio-libs/aiohttp"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/aio-libs/aiohttp/releases/tag/v3.14.3"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-125", "CWE-400", "CWE-416" ],
    "severity" : "HIGH",
    "github_reviewed" : true,
    "github_reviewed_at" : "2026-08-03T20:51:13Z",
    "nvd_published_at" : null
  }
}