OSPulse

Is aiohttp healthy, maintained, and safe?

55/ 100
aiohttpv3.14.3
Medium riskconfidence: Highview on pypi.org

Maintained, but watch it — aiohttp has real signals (drift, thin maintenance, or advisories) worth tracking.

vital-signs traceirregular · weakening

The verdict

OSPulse scores aiohttp at 55/100 (medium risk), computed deterministically from live PyPI release history, and the OSV vulnerability database. Maintained, but watch it — aiohttp has real signals (drift, thin maintenance, or advisories) worth tracking.

Its most recent release shipped on 23 July 2026 — 4 days ago — so development is clearly active. Across 305 releases the cadence has been steady, which is a good sign of an ongoing maintenance rhythm. PyPI doesn't expose a reliable maintainer count, so bus-factor isn't scored here — treat maintenance depth as unknown rather than assumed.

OSV lists 87 known advisories for aiohttp, including 3 high. Review whether your version is in the affected range and whether a fixed release is available before depending on it. Each advisory is listed with its OSV/GHSA identifier below.

aiohttp is usable but carries real signals — pin versions, watch for new advisories, and keep a fallback in mind. This is a one-time snapshot of a single package — real projects depend on dozens or hundreds of packages, and any one of them can drift or be compromised between releases. Run your own requirements.txt through the free health check, or have OSPulse monitor your whole dependency tree continuously.

Evidence trail — deterministic, auditable

Last release recency
4 days ago · active
Release cadence
steady · typical gap ~4d
Maintainer bus factor
not available from PyPI — not penalised
Known vulnerabilities (OSV)
87 advisories · 3 high
-45
Package age
12.8 years · 305 releases

Known vulnerabilities (87)

  • GHSA-27mf-ghqm-j3j8MODERATECVE-2024-52303PYSEC-2026-1096

    aiohttp has a memory leak when middleware is enabled when requesting a resource with a non-allowed method

  • GHSA-2fqr-mr3j-6wp8LOWCVE-2026-54279PYSEC-2026-2112

    aiohttp: Host-Only Cookies Become Domain Cookies After CookieJar Persistence

  • GHSA-2vrm-gr82-f7m5LOWCVE-2026-34514PYSEC-2026-2096

    AIOHTTP has CRLF injection through multipart part content type header construction

  • GHSA-3wq7-rqq7-wx6jLOWCVE-2026-34517PYSEC-2026-2099

    AIOHTTP has late size enforcement for non-file multipart fields causes memory DoS

  • GHSA-45c4-8wx5-qw6wMODERATECVE-2023-37276PYSEC-2023-120

    aiohttp.web.Application vulnerable to HTTP request smuggling via llhttp HTTP request parser

  • GHSA-4fvr-rgm6-gqmcMODERATECVE-2026-54273PYSEC-2026-2107

    aiohttp: HTTP/1 Pipelined Requests Queue Without Limit

  • GHSA-4m7w-qmgq-4wj5LOWCVE-2026-54275PYSEC-2026-237

    aiohttp: TLS Server Hostname Override Is Ignored When Reusing HTTPS Connections

  • GHSA-54jq-c3m8-4m76LOWCVE-2025-69226PYSEC-2026-1097

    AIOHTTP vulnerable to brute-force leak of internal static file path components

  • GHSA-5h86-8mv2-jq9fHIGHCVE-2024-23334PYSEC-2024-24

    aiohttp is vulnerable to directory traversal

  • GHSA-5m98-qgg9-wh84HIGHCVE-2024-30251PYSEC-2026-1098

    aiohttp vulnerable to Denial of Service when trying to parse malformed POST requests

  • GHSA-63hf-3vf5-4wqfLOWCVE-2026-34520PYSEC-2026-2102

    AIOHTTP's C parser (llhttp) accepts null bytes and control characters in response header values - header injection/security bypass

  • GHSA-63hw-fmq6-xxg2MODERATECVE-2026-54277PYSEC-2026-2110

    aiohttp: C HTTP Parser Bypasses max_line_size for Fragmented Lines

  • GHSA-69f9-5gxw-wvc2LOWCVE-2025-69224PYSEC-2026-1099

    AIOHTTP's unicode processing of header values could cause parsing discrepancies

  • GHSA-6jhg-hg63-jvvfMODERATECVE-2025-69228PYSEC-2026-1100

    AIOHTTP vulnerable to denial of service through large payloads

  • GHSA-6mq8-rvhq-8wggHIGHCVE-2025-69223PYSEC-2026-1101

    AIOHTTP's HTTP Parser auto_decompress feature is vulnerable to zip bomb

  • GHSA-7gpw-8wmc-pm8gMODERATECVE-2024-27306PYSEC-2026-1102

    aiohttp Cross-site Scripting vulnerability on index pages for static file handling

  • GHSA-8495-4g3g-x7prMODERATECVE-2024-52304PYSEC-2026-1103

    aiohttp allows request smuggling due to incorrect parsing of chunk extensions

  • GHSA-8qpw-xqxj-h4r2MODERATECVE-2024-23829PYSEC-2024-26

    aiohttp's HTTP parser (the python one, not llhttp) still overly lenient about separators

  • GHSA-9548-qrrj-x5pjLOWCVE-2025-53643PYSEC-2026-1104

    AIOHTTP is vulnerable to HTTP Request/Response Smuggling through incorrect parsing of chunked trailer sections

  • GHSA-966j-vmvw-g2g9LOWCVE-2026-34518PYSEC-2026-2100

    AIOHTTP leaks Cookie and Proxy-Authorization headers on cross-origin redirect

  • GHSA-9x8q-7h8h-wcw9LOWCVE-2026-54280PYSEC-2026-2113

    aiohttp: Payload Response Resources Are Not Closed After Mid-Body Disconnect

  • GHSA-c427-h43c-vf67MODERATECVE-2026-34525PYSEC-2026-2103

    AIOHTTP accepts duplicate Host headers

  • GHSA-fh55-r93g-j68gLOWCVE-2025-69230PYSEC-2026-1105

    AIOHTTP Vulnerable to Cookie Parser Warning Storm

  • GHSA-g3cq-j2xw-wf74MODERATECVE-2026-54278PYSEC-2026-2111

    aiohttp: Unread Compressed Request Bodies Bypass client_max_size During Cleanup

  • GHSA-g84x-mcqj-x9qqMODERATECVE-2025-69229PYSEC-2026-1106

    AIOHTTP vulnerable to DoS through chunked messages

  • GHSA-gfw2-4jvh-wgfgMODERATECVE-2023-47627PYSEC-2023-246

    AIOHTTP has problems in HTTP parser (the python one, not llhttp)

  • GHSA-hcc4-c3v8-rx92LOWCVE-2026-34513PYSEC-2026-2095

    AIOHTTP Affected by Denial of Service (DoS) via Unbounded DNS Cache in TCPConnector

  • GHSA-hg6j-4rv6-33pgMODERATECVE-2026-47265PYSEC-2026-2105

    AIOHTTP is vulnerable to cross-origin redirect with per-request cookies

  • GHSA-hpj7-wq8m-9hgpMODERATECVE-2026-54276PYSEC-2026-2109

    aiohttp: DigestAuthMiddleware Applies Credentials to Cross-Origin Redirect Challenges

  • GHSA-jg22-mg44-37j8MODERATECVE-2026-34993PYSEC-2026-2104

    AIOHTTP is Vulnerable to Deserialization of Untrusted Data

  • GHSA-jj3x-wxrx-4x23MODERATECVE-2025-69227PYSEC-2026-1107

    AIOHTTP vulnerable to DoS when bypassing asserts

  • GHSA-jwhx-xcg6-8xhjMODERATECVE-2024-42367PYSEC-2026-1108

    In aiohttp, compressed files as symlinks are not protected from path traversal

  • GHSA-m5qp-6w8w-w647MODERATECVE-2026-34516PYSEC-2026-2098

    AIOHTTP has a Multipart Header Size Bypass

  • GHSA-m6qw-4cw2-hm4mLOWCVE-2026-50269PYSEC-2026-2106

    aiohttp: CRLF injection in multipart headers

  • GHSA-mqqc-3gqh-h2x8LOWCVE-2025-69225PYSEC-2026-1109

    AIOHTTP has unicode match groups in regexes for ASCII protocol elements

  • GHSA-mwh4-6h8g-pg8wLOWCVE-2026-34519PYSEC-2026-2101

    AIOHTTP has HTTP response splitting via \r in reason phrase

  • GHSA-p998-jp59-783mMODERATECVE-2026-34515PYSEC-2026-2097

    AIOHTTP affected by UNC SSRF/NTLMv2 Credential Theft/Local File Read in static resource handler on Windows

  • aiohttp has vulnerable dependency that is vulnerable to request smuggling

  • GHSA-q3qx-c6g2-7pw2MODERATECVE-2023-49081PYSEC-2023-250

    aiohttp's ClientSession is vulnerable to CRLF injection via version

  • GHSA-qvrw-v9rv-5rjxMODERATECVE-2023-49082PYSEC-2023-251

    aiohttp's ClientSession is vulnerable to CRLF injection via method

  • GHSA-v6wp-4m6f-gcjgLOWCVE-2021-21330PYSEC-2021-76

    `aiohttp` Open Redirect vulnerability (`normalize_path_middleware` middleware)

  • GHSA-w2fm-2cpv-w7v5MODERATECVE-2026-22815PYSEC-2026-2094

    aiohttp allows unlimited trailer headers, leading to possible uncapped memory usage

  • GHSA-xcgm-r5h9-7989MODERATECVE-2026-54274PYSEC-2026-2108

    aiohttp: Incomplete websocket frame payloads bypass memory limits

  • GHSA-xx9p-xxvh-7g8jLOWCVE-2023-47641PYSEC-2023-247

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

  • PYSEC-2021-76UNKNOWNCVE-2021-21330GHSA-v6wp-4m6f-gcjg

    aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. In aiohttp before version 3.7.4 there is an open redirect vulnerability. A maliciously crafted link to an aiohttp-based

  • PYSEC-2023-120UNKNOWNCVE-2023-37276GHSA-45c4-8wx5-qw6w

    aiohttp.web.Application vulnerable to HTTP request smuggling via llhttp HTTP request parser

  • PYSEC-2023-246LOWCVE-2023-47627GHSA-gfw2-4jvh-wgfg

    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

  • PYSEC-2023-247LOWCVE-2023-47641GHSA-xx9p-xxvh-7g8j

    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 protoco

  • PYSEC-2023-250LOWCVE-2023-49081GHSA-q3qx-c6g2-7pw2

    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

  • PYSEC-2023-251LOWCVE-2023-49082GHSA-qvrw-v9rv-5rjx

    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 crea

  • PYSEC-2024-24LOWCVE-2024-23334GHSA-5h86-8mv2-jq9f

    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 fi

  • PYSEC-2024-26LOWCVE-2024-23829GHSA-8qpw-xqxj-h4r2

    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 tri

  • PYSEC-2026-1096LOWCVE-2024-52303GHSA-27mf-ghqm-j3j8

    aiohttp has a memory leak when middleware is enabled when requesting a resource with a non-allowed method

  • PYSEC-2026-1097MEDIUMCVE-2025-69226GHSA-54jq-c3m8-4m76

    AIOHTTP vulnerable to brute-force leak of internal static file path components

  • PYSEC-2026-1098LOWCVE-2024-30251GHSA-5m98-qgg9-wh84

    aiohttp vulnerable to Denial of Service when trying to parse malformed POST requests

  • PYSEC-2026-1099MEDIUMCVE-2025-69224GHSA-69f9-5gxw-wvc2

    AIOHTTP's unicode processing of header values could cause parsing discrepancies

  • PYSEC-2026-1100MEDIUMCVE-2025-69228GHSA-6jhg-hg63-jvvf

    AIOHTTP vulnerable to denial of service through large payloads

  • PYSEC-2026-1101LOWCVE-2025-69223GHSA-6mq8-rvhq-8wgg

    AIOHTTP's HTTP Parser auto_decompress feature is vulnerable to zip bomb

  • PYSEC-2026-1102LOWCVE-2024-27306GHSA-7gpw-8wmc-pm8g

    aiohttp Cross-site Scripting vulnerability on index pages for static file handling

  • PYSEC-2026-1103MEDIUMCVE-2024-52304GHSA-8495-4g3g-x7pr

    aiohttp allows request smuggling due to incorrect parsing of chunk extensions

  • PYSEC-2026-1104MEDIUMCVE-2025-53643GHSA-9548-qrrj-x5pj

    AIOHTTP is vulnerable to HTTP Request/Response Smuggling through incorrect parsing of chunked trailer sections

  • PYSEC-2026-1105MEDIUMCVE-2025-69230GHSA-fh55-r93g-j68g

    AIOHTTP Vulnerable to Cookie Parser Warning Storm

  • PYSEC-2026-1106MEDIUMCVE-2025-69229GHSA-g84x-mcqj-x9qq

    AIOHTTP vulnerable to DoS through chunked messages

  • PYSEC-2026-1107MEDIUMCVE-2025-69227GHSA-jj3x-wxrx-4x23

    AIOHTTP vulnerable to DoS when bypassing asserts

  • PYSEC-2026-1108LOWCVE-2024-42367GHSA-jwhx-xcg6-8xhj

    In aiohttp, compressed files as symlinks are not protected from path traversal

  • PYSEC-2026-1109MEDIUMCVE-2025-69225GHSA-mqqc-3gqh-h2x8

    AIOHTTP has unicode match groups in regexes for ASCII protocol elements

  • PYSEC-2026-2094MEDIUMCVE-2026-22815GHSA-w2fm-2cpv-w7v5

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.13.4, insufficient restrictions in header/trailer handling could cause uncapped memory usage. This is

  • PYSEC-2026-2095LOWCVE-2026-34513GHSA-hcc4-c3v8-rx92

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.13.4, an unbounded DNS cache could result in excessive memory usage possibly resulting in a DoS situa

  • PYSEC-2026-2096LOWCVE-2026-34514GHSA-2vrm-gr82-f7m5

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.13.4, an attacker who controls the content_type parameter in aiohttp could use this to inject extra h

  • PYSEC-2026-2097LOWCVE-2026-34515GHSA-p998-jp59-783m

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.13.4, on Windows the static resource handler may expose information about a NTLMv2 remote path. This

  • PYSEC-2026-2098MEDIUMCVE-2026-34516GHSA-m5qp-6w8w-w647

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.13.4, a response with an excessive number of multipart headers may be allowed to use more memory than

  • PYSEC-2026-2099LOWCVE-2026-34517GHSA-3wq7-rqq7-wx6j

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.13.4, for some multipart form fields, aiohttp read the entire field into memory before checking clien

  • PYSEC-2026-2100LOWCVE-2026-34518GHSA-966j-vmvw-g2g9

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.13.4, when following redirects to a different origin, aiohttp drops the Authorization header, but ret

  • PYSEC-2026-2101LOWCVE-2026-34519GHSA-mwh4-6h8g-pg8w

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.13.4, an attacker who controls the reason parameter when creating a Response may be able to inject ex

  • PYSEC-2026-2102MEDIUMCVE-2026-34520GHSA-63hf-3vf5-4wqf

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.13.4, the C parser (the default for most installs) accepted null bytes and control characters in resp

  • PYSEC-2026-2103LOWCVE-2026-34525GHSA-c427-h43c-vf67

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.13.4, multiple Host headers were allowed in aiohttp. This issue has been patched in version 3.13.4.

  • PYSEC-2026-2104LOWCVE-2026-34993GHSA-jg22-mg44-37j8

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.14.0, using ``CookieJar.load()`` with untrusted input may allow arbitrary code execution. Most applic

  • PYSEC-2026-2105LOWCVE-2026-47265GHSA-hg6j-4rv6-33pg

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to version 3.14.0, cookies set with the `cookies` parameter on requests are sent after following a cross-origin re

  • PYSEC-2026-2106LOWCVE-2026-50269GHSA-m6qw-4cw2-hm4m

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to 3.14.0, attacker-controlled input included into multipart/payload headers can be used to modify a request to in

  • PYSEC-2026-2107LOWCVE-2026-54273GHSA-4fvr-rgm6-gqmc

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to 3.14.1, no limit was present on the number of pipelined requests that could be queued. An attacker may be able

  • PYSEC-2026-2108LOWCVE-2026-54274GHSA-xcgm-r5h9-7989

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to 3.14.1, if an attacker sends large incomplete websocket frame payloads, it may be possible to bypass the usual

  • PYSEC-2026-2109LOWCVE-2026-54276GHSA-hpj7-wq8m-9hgp

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to 3.14.1, DigestAuthMiddleware can send an authentication response after following a cross-origin redirect. This

  • PYSEC-2026-2110LOWCVE-2026-54277GHSA-63hw-fmq6-xxg2

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to 3.14.1, it is possible to bypass the max_line_size check in parts of an HTTP request in the C parser. If using

  • PYSEC-2026-2111LOWCVE-2026-54278GHSA-g3cq-j2xw-wf74

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to 3.14.1, during cleanup it is possible for a compressed request body to be decompressed into memory in one chunk

  • PYSEC-2026-2112LOWCVE-2026-54279GHSA-2fqr-mr3j-6wp8

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to 3.14.1, host-only cookies that are saved with CookieJar.save() and then restored later with CookieJar.load() lo

  • PYSEC-2026-2113LOWCVE-2026-54280GHSA-9x8q-7h8h-wcw9

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to 3.14.1, payload resources are not closed correctly when a client disconnects in the middle of a write. If a pay

  • PYSEC-2026-237LOWCVE-2026-54275GHSA-4m7w-qmgq-4wj5

    AIOHTTP is an asynchronous HTTP client/server framework for asyncio and Python. Prior to 3.14.1, the server_hostname TLS SNI check can be bypassed when an existing connection is reused. If an applicat

Key facts

Latest version
v3.14.3
Last release
23 July 2026 (4 days ago)
Total releases
305
First release
25 October 2013
Package age
12.8 years
Maintainers
not exposed by PyPI
Known advisories
87
Confidence
High

Frequently asked

Is aiohttp still maintained?

Yes — aiohttp released as recently as 23 July 2026 (4 days ago), so it is actively maintained.

Does aiohttp have known security vulnerabilities?

Yes — OSV lists 87 advisories for aiohttp. See the advisory list on this page for the OSV/GHSA identifiers.

Is aiohttp safe to use?

Maintained, but watch it — aiohttp has real signals (drift, thin maintenance, or advisories) worth tracking. OSPulse rates it 55/100 (medium risk) based on release recency, cadence and known vulnerabilities.

Other PyPI packages we've checked

Browse all checked packages →

aiohttp is one package. What about the other hundreds in your tree?

Paste your own requirements.txt into the free health check for an instant snapshot — or let OSPulse monitor your whole dependency tree continuously, before your CVE scanner wakes up.

Data from the PyPI registry & OSV.dev · snapshot generated 2026-07-27 · scores are deterministic and recomputed on each refresh.