CVE-2024-23334 | aiohttp.web.static(follow_symlinks=True) is vulnerable to directory traversal

Exp

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.

Published: 2024-01-29 Last update: 2026-02-04 Assigner: [email protected] Source: [email protected]

Conclusion & alert: CVE-2024-23334 is rated High Exploit Risk (73.5/100): CVSS Medium severity, with high exploitation likelihood (EPSS 93.53%, 100th percentile). Core evidence: 2 public exploit reference(s) are indexed (Exploit-DB). Mandatory action: Public exploits are available—assess exposure, apply mitigations, and prioritize patching.

Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.

Public exploit references (Exploit-DB) for CVE-2024-23334

EDB-ID Source Kind Published Link
52474 exploit_db edb 2026-02-04 Exploit-DB ↗
nvd_ref exploit_tag Exploit-DB ↗

Exploit prediction scoring system (EPSS) score for CVE-2024-23334

EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).

# Date Old EPSS score New EPSS score Delta (New - Old)
1 2026-05-29 93.58% 93.53% -0.05%
2 2026-05-22 93.65% 93.58% -0.07%
3 2026-05-13 93.65%

Full EPSS history (50 records total)

Common vulnerability scoring system (CVSS) metrics for CVE-2024-23334

CVSS metrics for this CVE.

Base score Version Severity Vector Exploitability Impact Score source
5.9 3.1 MEDIUM
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N Click to expand
Attack vector (AV:N)
Could be attacked over the internet or any normal routed network—not just someone sitting at the machine.
Attack complexity (AC:H)
Even with access, the exploit needs extra luck, timing, or a fussy environment to actually work.
Privileges required (PR:N)
No account or special rights needed—anonymous or random user is enough.
User interaction (UI:N)
Nobody has to click “OK” or open a trap file; it can work without a victim helping.
Scope (S:U)
Damage stays in the same “trust bubble” as the broken component—no big spill into unrelated systems.
Confidentiality (C:H)
Serious risk that confidential data gets exposed in a big way.
Integrity (I:N)
Data isn’t meaningfully altered or forged.
Availability (A:N)
Service keeps running; no real outage angle.
2.2 3.6 [email protected]
7.5 3.1 HIGH
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N Click to expand
Attack vector (AV:N)
Could be attacked over the internet or any normal routed network—not just someone sitting at the machine.
Attack complexity (AC:L)
Once they can reach the bug, pulling it off is straightforward—no weird race conditions or rare setup.
Privileges required (PR:N)
No account or special rights needed—anonymous or random user is enough.
User interaction (UI:N)
Nobody has to click “OK” or open a trap file; it can work without a victim helping.
Scope (S:U)
Damage stays in the same “trust bubble” as the broken component—no big spill into unrelated systems.
Confidentiality (C:H)
Serious risk that confidential data gets exposed in a big way.
Integrity (I:N)
Data isn’t meaningfully altered or forged.
Availability (A:N)
Service keeps running; no real outage angle.
3.9 3.6 [email protected]

Weakness enumeration for CVE-2024-23334

GitHub Security Advisory for CVE-2024-23334

GHSA-5h86-8mv2-jq9f · Severity: high · Ecosystem: pip — aiohttp is vulnerable to directory traversal

OS Trackers for CVE-2024-23334

vendor priority summary link
alpine CVE-2024-23334: 1 source package rows (py3-aiohttp); 4 state rows across 4 repos (3.20-community, 3.21-community, 3.22-community, edge-community); fixed 4, open 0. https://security.alpinelinux.org/vuln/CVE-2024-23334
debian not yet assigned CVE-2024-23334 not yet assigned priority: Debian including 1 source packages (python-aiohttp), 5 status rows across 5 suites (bookworm, bullseye, forky, sid, trixie): resolved 5. https://security-tracker.debian.org/tracker/CVE-2024-23334
redhat medium https://access.redhat.com/security/cve/CVE-2024-23334
suse medium CVE-2024-23334 severity moderate: SUSE including 10 source package names (python-aiohttp, python-aiohttp-doc, …), 85 product×package rows across 69 product lines (Image SLES15-SP4-BYOS-Azure, Image SLES15-SP4-HPC-BYOS-Azure, … (69 product lines)): Fixed 63, Will Not Fix 22. https://www.suse.com/security/cve/CVE-2024-23334/
ubuntu medium CVE-2024-23334 medium priority: Ubuntu including 1 source packages (python-aiohttp), 11 status rows across 11 suites (bionic, focal, jammy, mantic, noble, oracular, plucky, questing, trusty, upstream, xenial): released 4, ignored 3, needs-triage 3, DNE 1. https://ubuntu.com/security/CVE-2024-23334

Affected software / configurations for CVE-2024-23334

Vendor Product Version Raw CPE
aiohttp aiohttp >= 1.0.5, < 3.9.2 cpe:2.3:a:aiohttp:aiohttp:*:*:*:*:*:*:*:*
fedoraproject fedora 39 cpe:2.3:o:fedoraproject:fedora:39:*:*:*:*:*:*:*

References for CVE-2024-23334

cvelogic Threat Intelligence