aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. 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.
History

Fri, 16 Aug 2024 13:15:00 +0000

Type Values Removed Values Added
References
Metrics threat_severity

None

threat_severity

Low


Fri, 09 Aug 2024 19:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 09 Aug 2024 17:30:00 +0000

Type Values Removed Values Added
Description aiohttp is an asynchronous HTTP client/server framework for asyncio and Python. 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.
Title In aiohttp, compressed files as symlinks are not protected from path traversal
Weaknesses CWE-61
References
Metrics cvssV3_1

{'score': 4.8, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published: 2024-08-09T17:25:22.562Z

Updated: 2024-08-09T18:18:23.758Z

Reserved: 2024-07-30T14:01:33.923Z

Link: CVE-2024-42367

cve-icon Vulnrichment

Updated: 2024-08-09T18:18:20.688Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2024-08-12T13:38:34.240

Modified: 2024-08-12T13:41:36.517

Link: CVE-2024-42367

cve-icon Redhat

Severity : Low

Publid Date: 2024-08-09T00:00:00Z

Links: CVE-2024-42367 - Bugzilla