CVE-2024-42367

EUVD-2024-2609
aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. In versions on the 3.10 branch prior to version 3.10.2, static routes which contain files with compressed variants (`.gz` or `.br` extension) are vulnerable to path traversal outside the root directory if those variants are symbolic links. The server protects static routes from path traversal outside the root directory when `follow_symlinks=False` (default).  It does this by resolving the requested URL to an absolute path and then checking that path relative to the root. However, these checks are not performed when looking for compressed variants in the `FileResponse` class, and symbolic links are then automatically followed when performing the `Path.stat()` and `Path.open()` to send the file. Version 3.10.2 contains a patch for the issue.
Symlink
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTPrimary
4.8 MEDIUM
NETWORK
HIGH
NONE
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
Base Score
CVSS 3.x
EPSS Score
Percentile: 47%
Affected Products (NVD)
VendorProductVersion
aiohttpaiohttp
3.10.0 ≤
𝑥
< 3.10.2
𝑥
= Vulnerable software versions
Debian logo
Debian Releases
Debian Product
Codename
python-aiohttp
bookworm
no-dsa
bookworm (security)
vulnerable
bullseye
3.7.4-1
not-affected
bullseye (security)
3.7.4-1+deb11u1
fixed
forky
3.13.1-1
fixed
sid
3.13.1-1
fixed
trixie
3.11.16-1
fixed
openSUSE logo
openSUSE / SLES Releases
openSUSE Product
Release
python311-aiohttp
suse enterprise sap 15 SP4
3.9.3-150400.10.24.1
fixed
suse enterprise server 15 SP4
3.9.3-150400.10.24.1
fixed