Every CVE Search/ Get API key

CVE-2024-23334

aiohttp.web.static(follow_symlinks=True) is vulnerable to directory traversal

5.9 MediumPublic exploitFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
High
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
None
Availability
None

Exploit likelihood

76.9%Up 76.8 points since Jan 31, 2024
90%50%10%1%

What each source reports

CVE List Score used 5.9

aiohttp.web.static(follow_symlinks=True) is vulnerable to directory traversal

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.

Record
CVE-2024-23334
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-22
Updated
2026-11-02
EUVDEUVD-2024-0001 5.9

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.

Record
EUVD-2024-0001
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-5h86-8mv2-jq9f 8.2

aiohttp is vulnerable to directory traversal

Summary

Improperly configuring static resource resolution in aiohttp when used as a web server can result in the unauthorized reading of arbitrary files on the system.

Details

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 a given file path 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.

i.e. An application is only vulnerable with setup code like:

app.router.add_routes([
    web.static("/static", "static/", follow_symlinks=True),  # Remove follow_symlinks to avoid the vulnerability
])

Impact

This is a directory traversal vulnerability with CWE ID 22. When using aiohttp as a web server and enabling static resource resolution with follow_symlinks set to True, it can lead to this vulnerability. This vulnerability has been present since the introduction of the follow_symlinks parameter.

Workaround

Even if upgrading to a patched version of aiohttp, we recommend following these steps regardless.

If using follow_symlinks=True outside of a restricted local development environment, disable the option immediately. This option is NOT needed to follow symlinks which point to a location within the static root directory, it is only intended to allow a symlink to break out of the static directory. Even with this CVE fixed, there is still a substantial risk of misconfiguration when using this option on a server that accepts requests from remote users.

Additionally, aiohttp has always recommended using a reverse proxy server (such as nginx) to handle static resources and not to use these static resources in aiohttp for production environments. Doing so also protects against this vulnerability, and is why we expect the number of affected users to be very low.


Patch: https://github.com/aio-libs/aiohttp/pull/8079/files

Record
GHSA-5h86-8mv2-jq9f
CVSS 4.0
8.2 HighCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-22
Updated
2026-11-02
NVD 5.9

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.

Record
CVE-2024-23334
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-22
Updated
2026-11-02
OSVALPINE-CVE-2024-23334 7.5

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.

Record
ALPINE-CVE-2024-23334
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-03
OSVAZL-43552 7.5

CVE-2024-23334 affecting package python-aiohttp 3.6.2-3

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.

Record
AZL-43552
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-02
Show 23 moreShow less
OSVAZL-44319 7.5

CVE-2024-23334 affecting package python-aiohttp 3.6.2-3

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.

Record
AZL-44319
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-05
OSV 5.9

aiohttp.web.static(follow_symlinks=True) is vulnerable to directory traversal

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.

Record
CVE-2024-23334
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-22
Updated
2026-11-02
OSVDEBIAN-CVE-2024-23334 7.5

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.

Record
DEBIAN-CVE-2024-23334
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-02
OSVGHSA-5h86-8mv2-jq9f 8.2

aiohttp is vulnerable to directory traversal

Summary

Improperly configuring static resource resolution in aiohttp when used as a web server can result in the unauthorized reading of arbitrary files on the system.

Details

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 a given file path 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.

i.e. An application is only vulnerable with setup code like:

app.router.add_routes([
    web.static("/static", "static/", follow_symlinks=True),  # Remove follow_symlinks to avoid the vulnerability
])

Impact

This is a directory traversal vulnerability with CWE ID 22. When using aiohttp as a web server and enabling static resource resolution with follow_symlinks set to True, it can lead to this vulnerability. This vulnerability has been present since the introduction of the follow_symlinks parameter.

Workaround

Even if upgrading to a patched version of aiohttp, we recommend following these steps regardless.

If using follow_symlinks=True outside of a restricted local development environment, disable the option immediately. This option is NOT needed to follow symlinks which point to a location within the static root directory, it is only intended to allow a symlink to break out of the static directory. Even with this CVE fixed, there is still a substantial risk of misconfiguration when using this option on a server that accepts requests from remote users.

Additionally, aiohttp has always recommended using a reverse proxy server (such as nginx) to handle static resources and not to use these static resources in aiohttp for production environments. Doing so also protects against this vulnerability, and is why we expect the number of affected users to be very low.


Patch: https://github.com/aio-libs/aiohttp/pull/8079/files

Record
GHSA-5h86-8mv2-jq9f
CVSS 4.0
8.2 HighCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-22
Updated
2026-11-02
OSVOESA-2025-1250 7.5

python-aiohttp security update

Async http client/server framework (asyncio).

Security Fix(es):

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)

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)

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)

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)

aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. A XSS vulnerability exists on index pages for static file handling. This vulnerability is fixed in 3.9.4. 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.(CVE-2024-27306)

aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. In affected versions 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. An attacker can stop the application from serving requests after sending a single request. This issue has been addressed in version 3.9.4. Users are advised to upgrade. Users unable to upgrade may manually apply a patch to their systems. Please see the linked GHSA for instructions.(CVE-2024-30251)

Record
OESA-2025-1250
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
OSVOESA-2025-1271 7.5

python-aiohttp security update

Async http client/server framework (asyncio).

Security Fix(es):

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)

aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. A XSS vulnerability exists on index pages for static file handling. This vulnerability is fixed in 3.9.4. 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.(CVE-2024-27306)

aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. In affected versions 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. An attacker can stop the application from serving requests after sending a single request. This issue has been addressed in version 3.9.4. Users are advised to upgrade. Users unable to upgrade may manually apply a patch to their systems. Please see the linked GHSA for instructions.(CVE-2024-30251)

Record
OESA-2025-1271
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-02
OSVOESA-2025-1272 7.5

python-aiohttp security update

Async http client/server framework (asyncio).

Security Fix(es):

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)

aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. A XSS vulnerability exists on index pages for static file handling. This vulnerability is fixed in 3.9.4. 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.(CVE-2024-27306)

aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. In affected versions 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. An attacker can stop the application from serving requests after sending a single request. This issue has been addressed in version 3.9.4. Users are advised to upgrade. Users unable to upgrade may manually apply a patch to their systems. Please see the linked GHSA for instructions.(CVE-2024-30251)

Record
OESA-2025-1272
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-02
OSVPYSEC-2024-24 7.5

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.

Record
PYSEC-2024-24
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-02
OSVRHSA-2024:1536 7.5

Red Hat Security Advisory: Satellite 6.14.3 Async Security Update

Record
RHSA-2024:1536
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
OSVRHSA-2024:1640 7.5

Red Hat Security Advisory: Red Hat Ansible Automation Platform 2.4 Product Security and Bug Fix Update

Record
RHSA-2024:1640
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVRHSA-2024:1878 7.5

Red Hat Security Advisory: RHUI 4.8 Release - Security Updates, Bug Fixes, and Enhancements

Record
RHSA-2024:1878
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVRHSA-2024:2010 7.6

Red Hat Security Advisory: Satellite 6.15.0 release

Record
RHSA-2024:2010
CVSS 3.1
7.6 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:L
Updated
2026-11-02
OSVUBUNTU-CVE-2024-23334 5.9

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.

Record
UBUNTU-CVE-2024-23334
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Updated
2026-11-02
OSVCLSA-2026-1767571990 No score

TuxCare security update for aiohttp (2 CVEs)

TuxCare rebuilt aiohttp to address 2 CVEs. Fixed in 3.8.5.post3+tuxcare.

Record
CLSA-2026-1767571990
Updated
2026-11-02
OSVCLSA-2026-1773620206 No score

TuxCare security update for aiohttp (3 CVEs)

TuxCare rebuilt aiohttp to address 3 CVEs. Fixed in 3.8.1.post7+tuxcare.

Record
CLSA-2026-1773620206
Updated
2026-11-02
OSVCLSA-2026-1788349677 No score

TuxCare security update for aiohttp (1 CVE)

TuxCare rebuilt aiohttp to address 1 CVE. Fixed in 3.8.6.post12+tuxcare.

Record
CLSA-2026-1788349677
Updated
2026-11-02
OSVCLSA-2026-1788792738 No score

TuxCare security update for aiohttp (9 CVEs)

TuxCare rebuilt aiohttp to address 9 CVEs. Fixed in 3.8.4.post8+tuxcare.

Record
CLSA-2026-1788792738
Updated
2026-11-02
OSVMGASA-2024-0388 No score

Updated python-aiohttp packages fix security vulnerabilities

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. CVE-2024-23334 The Python parser parses newlines in chunk extensions incorrectly which can lead to request smuggling vulnerabilities under certain conditions. 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. CVE-2024-52304

Record
MGASA-2024-0388
Updated
2026-11-02
OSVopenSUSE-SU-2024:13642-1 No score

python310-aiohttp-3.9.3-1.1 on GA media

These are all security issues fixed in the python310-aiohttp-3.9.3-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:13642-1
Updated
2026-11-02
OSVopenSUSE-SU-2026:11467-1 No score

python313-aiohttp-3.14.3-1.1 on GA media

These are all security issues fixed in the python313-aiohttp-3.14.3-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2026:11467-1
Updated
2026-11-02
OSVROOT-APP-PYPI-CVE-2024-23334 No score

CVE-2024-23334 in aiohttp - Patched by Root

Root has patched CVE-2024-23334 in the aiohttp package for Root:PyPI. Multiple fixed versions available.

Record
ROOT-APP-PYPI-CVE-2024-23334
Updated
2026-11-02
OSVSUSE-SU-2024:0577-1 No score

Security update for python-aiohttp, python-time-machine

This update for python-aiohttp, python-time-machine fixes the following issues:

python-aiohttp was updated to version 3.9.3:

  • Fixed backwards compatibility breakage (in 3.9.2) of ssl parameter when set outside of ClientSession (e.g. directly in TCPConnector)
  • Improved test suite handling of paths and temp files to consistently use pathlib and pytest fixtures.

From version 3.9.2 (bsc#1219341, CVE-2024-23334, bsc#1219342, CVE-2024-23829):

  • Fixed server-side websocket connection leak.
  • Fixed web.FileResponse doing blocking I/O in the event loop.
  • Fixed double compress when compression enabled and compressed file exists in server file responses.
  • Added runtime type check for ClientSession timeout parameter.
  • Fixed an unhandled exception in the Python HTTP parser on header lines starting with a colon.
  • Improved validation of paths for static resources requests to the server.
  • Added support for passing :py:data:True to ssl parameter in ClientSession while deprecating :py:data:None.
  • Fixed an unhandled exception in the Python HTTP parser on header lines starting with a colon.
  • Fixed examples of fallback_charset_resolver function in the :doc:client_advanced document.
  • The Sphinx setup was updated to avoid showing the empty changelog draft section in the tagged release documentation builds on Read The Docs.
  • The changelog categorization was made clearer. The contributors can now mark their fragment files more accurately.
  • Updated :ref:contributing/Tests coverage <aiohttp-contributing> section to show how we use codecov.
  • Replaced all tmpdir fixtures with tmp_path in test suite.
  • Disable broken tests with openssl 3.2 and python < 3.11 bsc#1217782

update to 3.9.1:

  • Fixed importing aiohttp under PyPy on Windows.
  • Fixed async concurrency safety in websocket compressor.
  • Fixed ClientResponse.close() releasing the connection instead of closing.
  • Fixed a regression where connection may get closed during upgrade. -- by :user:Dreamsorcerer
  • Fixed messages being reported as upgraded without an Upgrade header in Python parser. -- by :user:Dreamsorcerer

update to 3.9.0: (bsc#1217684, CVE-2023-49081, bsc#1217682, CVE-2023-49082)

  • Introduced AppKey for static typing support of Application storage.
  • Added a graceful shutdown period which allows pending tasks to complete before the application's cleanup is called.
  • Added handler_cancellation_ parameter to cancel web handler on client disconnection.
  • This (optionally) reintroduces a feature removed in a previous release.
  • Recommended for those looking for an extra level of protection against denial-of-service attacks.
  • Added support for setting response header parameters max_line_size and max_field_size.
  • Added auto_decompress parameter to ClientSession.request to override ClientSession._auto_decompress.
  • Changed raise_for_status to allow a coroutine.
  • Added client brotli compression support (optional with runtime check).
  • Added client_max_size to BaseRequest.clone() to allow overriding the request body size. -- :user:anesabml.
  • Added a middleware type alias aiohttp.typedefs.Middleware.
  • Exported HTTPMove which can be used to catch any redirection request that has a location -- :user:dreamsorcerer.
  • Changed the path parameter in web.run_app() to accept a pathlib.Path object.
  • Performance: Skipped filtering CookieJar when the jar is empty or all cookies have expired.
  • Performance: Only check origin if insecure scheme and there are origins to treat as secure, in CookieJar.filter_cookies().
  • Performance: Used timestamp instead of datetime to achieve faster cookie expiration in CookieJar.
  • Added support for passing a custom server name parameter to HTTPS connection.
  • Added support for using Basic Auth credentials from :file:.netrc file when making…
Record
SUSE-SU-2024:0577-1
Updated
2026-11-02
OSVUSN-6991-1 No score

python-aiohttp vulnerability

It was discovered that AIOHTTP did not properly restrict file access when the 'follow_symlinks' option was set to True. A remote attacker could possibly use this issue to access unauthorized files on the system.

Record
USN-6991-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
aiohttp
PyPI
1.0.5 up to 3.9.2
3.9.2
py3-aiohttp
Alpine:v3.20
before 3.9.3-r0
3.9.3-r0
py3-aiohttp
Alpine:v3.21
before 3.9.3-r0
3.9.3-r0
py3-aiohttp
Alpine:v3.22
before 3.9.3-r0
3.9.3-r0
py3-aiohttp
Alpine:v3.23
before 3.9.3-r0
3.9.3-r0
py3-aiohttp
Alpine:v3.24
before 3.9.3-r0
3.9.3-r0
python-aiohttp
Azure Linux:2
through 3.6.2-3 None known
python-aiohttp
Azure Linux:3
through 3.6.2-3 None known
aiohttp
TuxCare:PyPI
From an advisory covering 2 CVEs
3.8.5 up to 3.8.5.post3+tuxcare, plus listed versions
3.8.5.post1+tuxcare3.8.5.post2+tuxcare
3.8.5.post3+tuxcare
aiohttp
TuxCare:PyPI
From an advisory covering 2 CVEs
3.8.1 up to 3.8.1.post7+tuxcare, plus listed versions
3.8.1.post1+tuxcare3.8.1.post2+tuxcare3.8.1.post3+tuxcare3.8.1.post4+tuxcare3.8.1.post5+tuxcare3.8.1.post6+tuxcare
3.8.1.post7+tuxcare
Show 148 moreShow less
Affected packages
PackageAffectedFixed
aiohttp
TuxCare:PyPI
3.8.6 up to 3.8.6.post12+tuxcare, plus listed versions
3.8.6.post1+tuxcare3.8.6.post10+tuxcare3.8.6.post11+tuxcare3.8.6.post2+tuxcare3.8.6.post3+tuxcare
Show 6 moreShow less
3.8.6.post4+tuxcare3.8.6.post5+tuxcare3.8.6.post6+tuxcare3.8.6.post7+tuxcare3.8.6.post8+tuxcare3.8.6.post9+tuxcare
3.8.6.post12+tuxcare
aiohttp
TuxCare:PyPI
From an advisory covering 9 CVEs
3.8.4 up to 3.8.4.post8+tuxcare, plus listed versions
3.8.4.post1+tuxcare3.8.4.post2+tuxcare3.8.4.post3+tuxcare3.8.4.post4+tuxcare3.8.4.post5+tuxcare3.8.4.post6+tuxcare3.8.4.post7+tuxcare
3.8.4.post8+tuxcare
python-aiohttp
Debian:12
before 3.8.4-1+deb12u1, plus listed versions
3.8.4-1
3.8.4-1+deb12u1
python-aiohttp
Debian:13
before 3.9.5-1
3.9.5-1
python-aiohttp
Debian:14
before 3.9.5-1
3.9.5-1
python-aiohttp
Debian:11
From an advisory covering 9 CVEs
before 3.7.4-1+deb11u1, plus listed versions
3.7.4-1
3.7.4-1+deb11u1
python-aiohttp
Debian:12
From an advisory covering 6 CVEs
before 3.8.4-1+deb12u1, plus listed versions
3.8.4-1
3.8.4-1+deb12u1
aiohttp
PyPI
1.0.5 up to 3.9.2, plus listed versions
1.1.01.1.11.1.21.1.31.1.4
Show 45 moreShow less
1.1.51.1.61.2.01.3.01.3.11.3.21.3.31.3.41.3.52.0.02.0.0rc12.0.12.0.22.0.32.0.42.0.52.0.62.0.72.1.02.2.02.2.12.2.22.2.32.2.42.2.52.3.02.3.0a12.3.0a22.3.0a32.3.0a42.3.12.3.102.3.1a12.3.22.3.2b22.3.2b32.3.32.3.42.3.52.3.62.3.72.3.82.3.93.0.03.0.0b0
3.9.2
python-aiohttp
Mageia:9
From an advisory covering 2 CVEs
before 3.8.3-3.2.mga9
3.8.3-3.2.mga9
python-aiohttp
openEuler:20.03-LTS-SP4
From an advisory covering 6 CVEs
before 3.7.4-5.oe2003sp4
3.7.4-5.oe2003sp4
python-aiohttp
openEuler:22.03-LTS-SP4
From an advisory covering 3 CVEs
before 3.7.4-6.oe2203sp4
3.7.4-6.oe2203sp4
python-aiohttp
openEuler:22.03-LTS-SP3
From an advisory covering 3 CVEs
before 3.7.4-6.oe2203sp3
3.7.4-6.oe2203sp3
python-galaxy-importer
Red Hat:satellite_capsule:6.14::el8
From an advisory covering 7 CVEs
before 0:0.4.18-2.el8pc
0:0.4.18-2.el8pc
python39-galaxy-importer
Red Hat:satellite_capsule:6.14::el8
From an advisory covering 7 CVEs
before 0:0.4.18-2.el8pc
0:0.4.18-2.el8pc
python-galaxy-importer
Red Hat:satellite:6.14::el8
From an advisory covering 7 CVEs
before 0:0.4.18-2.el8pc
0:0.4.18-2.el8pc
python39-galaxy-importer
Red Hat:satellite:6.14::el8
From an advisory covering 7 CVEs
before 0:0.4.18-2.el8pc
0:0.4.18-2.el8pc
python-django
Red Hat:satellite_capsule:6.14::el8
From an advisory covering 7 CVEs
before 0:3.2.22-1.el8pc
0:3.2.22-1.el8pc
python39-django
Red Hat:satellite_capsule:6.14::el8
From an advisory covering 7 CVEs
before 0:3.2.22-1.el8pc
0:3.2.22-1.el8pc
python-django
Red Hat:satellite:6.14::el8
From an advisory covering 7 CVEs
before 0:3.2.22-1.el8pc
0:3.2.22-1.el8pc
python39-django
Red Hat:satellite:6.14::el8
From an advisory covering 7 CVEs
before 0:3.2.22-1.el8pc
0:3.2.22-1.el8pc
python-aiohttp
Red Hat:satellite_capsule:6.14::el8
From an advisory covering 7 CVEs
before 0:3.9.2-0.1.el8pc
0:3.9.2-0.1.el8pc
python-aiohttp-debugsource
Red Hat:satellite_capsule:6.14::el8
From an advisory covering 7 CVEs
before 0:3.9.2-0.1.el8pc
0:3.9.2-0.1.el8pc
python39-aiohttp
Red Hat:satellite_capsule:6.14::el8
From an advisory covering 7 CVEs
before 0:3.9.2-0.1.el8pc
0:3.9.2-0.1.el8pc
python39-aiohttp-debuginfo
Red Hat:satellite_capsule:6.14::el8
From an advisory covering 7 CVEs
before 0:3.9.2-0.1.el8pc
0:3.9.2-0.1.el8pc
python-aiohttp
Red Hat:satellite:6.14::el8
From an advisory covering 7 CVEs
before 0:3.9.2-0.1.el8pc
0:3.9.2-0.1.el8pc
python-aiohttp-debugsource
Red Hat:satellite:6.14::el8
From an advisory covering 7 CVEs
before 0:3.9.2-0.1.el8pc
0:3.9.2-0.1.el8pc
python39-aiohttp
Red Hat:satellite:6.14::el8
From an advisory covering 7 CVEs
before 0:3.9.2-0.1.el8pc
0:3.9.2-0.1.el8pc
python39-aiohttp-debuginfo
Red Hat:satellite:6.14::el8
From an advisory covering 7 CVEs
before 0:3.9.2-0.1.el8pc
0:3.9.2-0.1.el8pc
python-jinja2
Red Hat:satellite_capsule:6.14::el8
From an advisory covering 7 CVEs
before 0:3.1.3-0.1.el8pc
0:3.1.3-0.1.el8pc
python39-jinja2
Red Hat:satellite_capsule:6.14::el8
From an advisory covering 7 CVEs
before 0:3.1.3-0.1.el8pc
0:3.1.3-0.1.el8pc
python-jinja2
Red Hat:satellite:6.14::el8
From an advisory covering 7 CVEs
before 0:3.1.3-0.1.el8pc
0:3.1.3-0.1.el8pc
python39-jinja2
Red Hat:satellite:6.14::el8
From an advisory covering 7 CVEs
before 0:3.1.3-0.1.el8pc
0:3.1.3-0.1.el8pc
receptor
Red Hat:ansible_automation_platform_developer:2.4::el8
From an advisory covering 12 CVEs
before 0:1.4.5-1.el8ap
0:1.4.5-1.el8ap
receptorctl
Red Hat:ansible_automation_platform_developer:2.4::el8
From an advisory covering 12 CVEs
before 0:1.4.5-1.el8ap
0:1.4.5-1.el8ap
receptor
Red Hat:ansible_automation_platform_inside:2.4::el8
From an advisory covering 12 CVEs
before 0:1.4.5-1.el8ap
0:1.4.5-1.el8ap
receptorctl
Red Hat:ansible_automation_platform_inside:2.4::el8
From an advisory covering 12 CVEs
before 0:1.4.5-1.el8ap
0:1.4.5-1.el8ap
receptor
Red Hat:ansible_automation_platform:2.4::el8
From an advisory covering 12 CVEs
before 0:1.4.5-1.el8ap
0:1.4.5-1.el8ap
receptorctl
Red Hat:ansible_automation_platform:2.4::el8
From an advisory covering 12 CVEs
before 0:1.4.5-1.el8ap
0:1.4.5-1.el8ap
receptor
Red Hat:ansible_automation_platform_developer:2.4::el9
From an advisory covering 12 CVEs
before 0:1.4.5-1.el9ap
0:1.4.5-1.el9ap
receptorctl
Red Hat:ansible_automation_platform_developer:2.4::el9
From an advisory covering 12 CVEs
before 0:1.4.5-1.el9ap
0:1.4.5-1.el9ap
receptor
Red Hat:ansible_automation_platform_inside:2.4::el9
From an advisory covering 12 CVEs
before 0:1.4.5-1.el9ap
0:1.4.5-1.el9ap
receptorctl
Red Hat:ansible_automation_platform_inside:2.4::el9
From an advisory covering 12 CVEs
before 0:1.4.5-1.el9ap
0:1.4.5-1.el9ap
receptor
Red Hat:ansible_automation_platform:2.4::el9
From an advisory covering 12 CVEs
before 0:1.4.5-1.el9ap
0:1.4.5-1.el9ap
receptorctl
Red Hat:ansible_automation_platform:2.4::el9
From an advisory covering 12 CVEs
before 0:1.4.5-1.el9ap
0:1.4.5-1.el9ap
automation-controller-venv-tower
Red Hat:ansible_automation_platform:2.4::el8
From an advisory covering 12 CVEs
before 0:4.5.5-2.el8ap
0:4.5.5-2.el8ap
automation-controller-venv-tower
Red Hat:ansible_automation_platform:2.4::el9
From an advisory covering 12 CVEs
before 0:4.5.5-2.el9ap
0:4.5.5-2.el9ap
python39-aiohttp
Red Hat:ansible_automation_platform:2.4::el8
From an advisory covering 12 CVEs
before 0:3.9.3-1.el8ap
0:3.9.3-1.el8ap
python39-aiohttp-debuginfo
Red Hat:ansible_automation_platform:2.4::el8
From an advisory covering 12 CVEs
before 0:3.9.3-1.el8ap
0:3.9.3-1.el8ap
python3x-aiohttp
Red Hat:ansible_automation_platform:2.4::el8
From an advisory covering 12 CVEs
before 0:3.9.3-1.el8ap
0:3.9.3-1.el8ap
python3x-aiohttp-debugsource
Red Hat:ansible_automation_platform:2.4::el8
From an advisory covering 12 CVEs
before 0:3.9.3-1.el8ap
0:3.9.3-1.el8ap
python-aiohttp
Red Hat:ansible_automation_platform:2.4::el9
From an advisory covering 12 CVEs
before 0:3.9.3-1.el9ap
0:3.9.3-1.el9ap
python-aiohttp-debugsource
Red Hat:ansible_automation_platform:2.4::el9
From an advisory covering 12 CVEs
before 0:3.9.3-1.el9ap
0:3.9.3-1.el9ap
python3-aiohttp
Red Hat:ansible_automation_platform:2.4::el9
From an advisory covering 12 CVEs
before 0:3.9.3-1.el9ap
0:3.9.3-1.el9ap
python3-aiohttp-debuginfo
Red Hat:ansible_automation_platform:2.4::el9
From an advisory covering 12 CVEs
before 0:3.9.3-1.el9ap
0:3.9.3-1.el9ap
python39-django
Red Hat:ansible_automation_platform:2.4::el8
From an advisory covering 12 CVEs
before 0:4.2.11-1.el8ap
0:4.2.11-1.el8ap
python3x-django
Red Hat:ansible_automation_platform:2.4::el8
From an advisory covering 12 CVEs
before 0:4.2.11-1.el8ap
0:4.2.11-1.el8ap
python-django
Red Hat:ansible_automation_platform:2.4::el9
From an advisory covering 12 CVEs
before 0:4.2.11-1.el9ap
0:4.2.11-1.el9ap
python3-django
Red Hat:ansible_automation_platform:2.4::el9
From an advisory covering 12 CVEs
before 0:4.2.11-1.el9ap
0:4.2.11-1.el9ap
python-django
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:4.2.11-1.el8ui
0:4.2.11-1.el8ui
python3.11-django
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:4.2.11-1.el8ui
0:4.2.11-1.el8ui
python-aiohttp
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:3.9.2-1.el8ui
0:3.9.2-1.el8ui
python-aiohttp-debugsource
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:3.9.2-1.el8ui
0:3.9.2-1.el8ui
python3.11-aiohttp-debuginfo
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:3.9.2-1.el8ui
0:3.9.2-1.el8ui
python3.11-aiohttp
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:3.9.2-1.el8ui
0:3.9.2-1.el8ui
python-cryptography
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:41.0.6-1.el8ui
0:41.0.6-1.el8ui
python-cryptography-debugsource
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:41.0.6-1.el8ui
0:41.0.6-1.el8ui
python3.11-cryptography
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:41.0.6-1.el8ui
0:41.0.6-1.el8ui
python3.11-cryptography-debuginfo
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:41.0.6-1.el8ui
0:41.0.6-1.el8ui
python-jinja2
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:3.1.3-1.el8ui
0:3.1.3-1.el8ui
python3.11-jinja2
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:3.1.3-1.el8ui
0:3.1.3-1.el8ui
python-ecdsa
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:0.18.0-4.el8ui
0:0.18.0-4.el8ui
python3.11-ecdsa
Red Hat:rhui:4::el8
From an advisory covering 14 CVEs
before 0:0.18.0-4.el8ui
0:0.18.0-4.el8ui
python-pygments
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:2.17.0-1.el8pc
0:2.17.0-1.el8pc
python3.11-pygments
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:2.17.0-1.el8pc
0:2.17.0-1.el8pc
python-pygments
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:2.17.0-1.el8pc
0:2.17.0-1.el8pc
python3.11-pygments
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:2.17.0-1.el8pc
0:2.17.0-1.el8pc
foreman
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-debug
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman
Red Hat:satellite_utils:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-cli
Red Hat:satellite_utils:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-cli
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-debug
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-dynflow-sidekiq
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-ec2
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-journald
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-libvirt
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-openstack
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-ovirt
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-pcp
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-postgresql
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-redis
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-service
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-telemetry
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
foreman-vmware
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.1.6-1.el8sat
0:3.9.1.6-1.el8sat
python-galaxy-importer
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:0.4.19-2.el8pc
0:0.4.19-2.el8pc
python3.11-galaxy-importer
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:0.4.19-2.el8pc
0:0.4.19-2.el8pc
python-galaxy-importer
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:0.4.19-2.el8pc
0:0.4.19-2.el8pc
python3.11-galaxy-importer
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:0.4.19-2.el8pc
0:0.4.19-2.el8pc
puppetserver
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:7.14.0-1.el8sat
0:7.14.0-1.el8sat
puppetserver
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:7.14.0-1.el8sat
0:7.14.0-1.el8sat
python-aiohttp
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.2-1.el8pc
0:3.9.2-1.el8pc
python-aiohttp-debugsource
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.2-1.el8pc
0:3.9.2-1.el8pc
python3.11-aiohttp
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.2-1.el8pc
0:3.9.2-1.el8pc
python3.11-aiohttp-debuginfo
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.2-1.el8pc
0:3.9.2-1.el8pc
python-aiohttp
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.2-1.el8pc
0:3.9.2-1.el8pc
python-aiohttp-debugsource
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.2-1.el8pc
0:3.9.2-1.el8pc
python3.11-aiohttp
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.2-1.el8pc
0:3.9.2-1.el8pc
python3.11-aiohttp-debuginfo
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.9.2-1.el8pc
0:3.9.2-1.el8pc
rubygem-activesupport
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:6.1.7.6-1.el8sat
0:6.1.7.6-1.el8sat
rubygem-activesupport
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:6.1.7.6-1.el8sat
0:6.1.7.6-1.el8sat
python-django
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:4.2.9-1.el8pc
0:4.2.9-1.el8pc
python3.11-django
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:4.2.9-1.el8pc
0:4.2.9-1.el8pc
python-django
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:4.2.9-1.el8pc
0:4.2.9-1.el8pc
python3.11-django
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:4.2.9-1.el8pc
0:4.2.9-1.el8pc
python-pycryptodomex
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.20.0-1.el8pc
0:3.20.0-1.el8pc
python-pycryptodomex-debugsource
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.20.0-1.el8pc
0:3.20.0-1.el8pc
python3.11-pycryptodomex
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.20.0-1.el8pc
0:3.20.0-1.el8pc
python3.11-pycryptodomex-debuginfo
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.20.0-1.el8pc
0:3.20.0-1.el8pc
python-pycryptodomex
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.20.0-1.el8pc
0:3.20.0-1.el8pc
python-pycryptodomex-debugsource
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.20.0-1.el8pc
0:3.20.0-1.el8pc
python3.11-pycryptodomex
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.20.0-1.el8pc
0:3.20.0-1.el8pc
python3.11-pycryptodomex-debuginfo
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.20.0-1.el8pc
0:3.20.0-1.el8pc
rubygem-puma
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:6.4.2-1.el8sat
0:6.4.2-1.el8sat
rubygem-puma-debuginfo
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:6.4.2-1.el8sat
0:6.4.2-1.el8sat
rubygem-puma-debugsource
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:6.4.2-1.el8sat
0:6.4.2-1.el8sat
rubygem-audited
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:5.4.2-1.el8sat
0:5.4.2-1.el8sat
python-jinja2
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.1.3-1.el8pc
0:3.1.3-1.el8pc
python3.11-jinja2
Red Hat:satellite_capsule:6.15::el8
From an advisory covering 18 CVEs
before 0:3.1.3-1.el8pc
0:3.1.3-1.el8pc
python-jinja2
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.1.3-1.el8pc
0:3.1.3-1.el8pc
python3.11-jinja2
Red Hat:satellite:6.15::el8
From an advisory covering 18 CVEs
before 0:3.1.3-1.el8pc
0:3.1.3-1.el8pc
aiohttp
Root:PyPI
before 3.9.1+aikido.7
3.9.1+aikido.73.8.6+aikido.13.8.6+aikido.23.8.6+aikido.33.8.6+aikido.43.8.6+aikido.53.8.6+aikido.63.8.6+aikido.73.8.6+aikido.83.8.6+aikido.93.8.6+aikido.103.8.6+aikido.113.8.6+aikido.123.8.6+aikido.133.9.1+aikido.83.8.6+aikido.143.9.1+aikido.93.8.6+aikido.15
python-aiohttp
SUSE:Linux Enterprise Module for Python 3 15 SP5
From an advisory covering 4 CVEs
before 3.9.3-150400.10.14.1
3.9.3-150400.10.14.1
python-aiohttp
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS
From an advisory covering 4 CVEs
before 3.9.3-150400.10.14.1
3.9.3-150400.10.14.1
python-aiohttp
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS
From an advisory covering 4 CVEs
before 3.9.3-150400.10.14.1
3.9.3-150400.10.14.1
python-aiohttp
SUSE:Linux Enterprise Server 15 SP4-LTSS
From an advisory covering 4 CVEs
before 3.9.3-150400.10.14.1
3.9.3-150400.10.14.1
python-aiohttp
SUSE:Linux Enterprise Server for SAP Applications 15 SP4
From an advisory covering 4 CVEs
before 3.9.3-150400.10.14.1
3.9.3-150400.10.14.1
python-aiohttp
openSUSE:Leap 15.5
From an advisory covering 4 CVEs
before 3.9.3-150400.10.14.1
3.9.3-150400.10.14.1
python-aiohttp
Ubuntu:Pro:16.04:LTS
All versions, plus listed versions
0.17.2-10.17.4-10.17.4-1build10.20.2-10.20.2-1ubuntu0.1~esm1
None known
python-aiohttp
Ubuntu:Pro:18.04:LTS
before 3.0.1-1ubuntu0.1~esm4, plus listed versions
2.2.3-1build12.2.3-22.3.6-13.0.1-13.0.1-1ubuntu0.1~esm1
3.0.1-1ubuntu0.1~esm4
python-aiohttp
Ubuntu:Pro:20.04:LTS
before 3.6.2-1ubuntu1+esm3, plus listed versions
3.5.4-13.5.4-1build13.6.1-13.6.2-13.6.2-1build13.6.2-1ubuntu0.1~esm13.6.2-1ubuntu13.6.2-1ubuntu1+esm1
3.6.2-1ubuntu1+esm3
python-aiohttp
Ubuntu:22.04:LTS
before 3.8.1-4ubuntu0.2, plus listed versions
3.7.4-13.7.4-1build23.8.1-33.8.1-43.8.1-4build1
3.8.1-4ubuntu0.2
python-aiohttp
Ubuntu:24.04:LTS
before 3.9.1-1ubuntu0.1, plus listed versions
3.8.4-13.9.1-13.9.1-1build1
3.9.1-1ubuntu0.1
python-aiohttp
Ubuntu:25.10
All versions, plus listed versions
3.10.11-1build13.11.16-13.11.16-1ubuntu0.1
None known
python-aiohttp
Ubuntu:26.10
All versions, plus listed versions
3.13.3-3ubuntu13.14.1-43.14.1-53.14.3-1
None known
python-aiohttp
Ubuntu:Pro:26.04:LTS
All versions, plus listed versions
3.11.16-13.13.1-13.13.3-33.13.3-3ubuntu13.13.3-3ubuntu1+esm1
None known
python-aiohttp
openSUSE:Tumbleweed
before 3.9.3-1.1
3.9.3-1.1
python-aiohttp
openSUSE:Tumbleweed
From an advisory covering 10 CVEs
before 3.14.3-1.1
3.14.3-1.1

Public exploits

Links only. Every CVE stores no exploit code.

Public exploits
SourceLinkDate
PoC in GitHubox1111/CVE-2024-233342024-02-28
PoC in GitHubsxyrxyy/aiohttp-exploit-CVE-2024-23334-certstream2024-03-17
PoC in GitHubz3rObyte/CVE-2024-23334-PoC2024-03-18
PoC in GitHubjhonnybonny/CVE-2024-233342024-03-19
PoC in GitHubbrian-edgar-re/poc-cve-2024-233342024-04-27
PoC in GitHubbinaryninja/CVE-2024-233342024-06-17
PoC in GitHubs4botai/CVE-2024-23334-PoC2024-09-08
PoC in GitHubwizarddos/CVE-2024-233342024-10-20
PoC in GitHubfrogb1t/CVE-2024-233342024-11-07
PoC in GitHubArc4he/CVE-2024-23334-PoC2024-11-09
Show 7 moreShow less
Public exploits
SourceLinkDate
PoC in GitHubTheRedP4nther/LFI-aiohttp-CVE-2024-23334-PoC2024-11-14
PoC in GitHubBetan423/CVE-2024-23334-PoC2024-12-09
PoC in GitHubBestDevOfc/CVE-2024-23334-PoC2024-12-25
PoC in GitHubSn0wBaall/CVE-2024-23334-PoC2026-01-27
Exploit-DBaiohttp 3.9.1 - directory traversal PoC2026-02-04
PoC in GitHubJohnnyWang108/hdu-is-lab1-secure-api2026-10-19
Nucleiaiohttp - Directory Traversal

History

History
RecordedChangedSources
affected
factsOSV
affected, aliases, exploits, referencesOSV
first indexedCVE List, EUVD, Exploit-DB, GitHub Advisories, Nuclei, NVD, OSV, PoC in GitHub

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2024-23334 is a medium vulnerability (CVSS 5.9) in Aio-libs Aiohttp, published January 29, 2024. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 76.9%, the 99th percentile. Fixed in aiohttp 3.9.2.

References

Show 194 moreShow less
This page doesn't list everything

Left out here: 86 versions, 250 references and the rest of 1 source description. The JSON record has them.

MoveEnter Open