Safety vulnerability ID: 64642
The information on this page was manually curated by our Cybersecurity Intelligence Team.
The vulnerability lies in the improper configuration of static resource resolution when aiohttp is used as a web server. It occurs when the follow_symlinks option is enabled without proper validation, leading to directory traversal vulnerabilities. Unauthorized access to arbitrary files on the system could potentially occur. The affected versions are >1.0.5, and the issue was patched in version 3.9.2. As a workaround, it is advised to disable the follow_symlinks option outside of a restricted local development environment, especially in a server accepting requests from remote users. Using a reverse proxy server to handle static resources is also recommended.
https://github.com/aio-libs/aiohttp/commit/1c335944d6a8b1298baf179b7c0b3069f10c514b
Latest version: 3.11.11
Async http client/server framework (asyncio)
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. See CVE-2024-23334.
MISC:https://github.com/aio-libs/aiohttp/commit/1c335944d6a8b1298baf179b7c0b3069f10c514b: https://github.com/aio-libs/aiohttp/commit/1c335944d6a8b1298baf179b7c0b3069f10c514b
MISC:https://github.com/aio-libs/aiohttp/pull/8079: https://github.com/aio-libs/aiohttp/pull/8079
MISC:https://github.com/aio-libs/aiohttp/security/advisories/GHSA-5h86-8mv2-jq9f: https://github.com/aio-libs/aiohttp/security/advisories/GHSA-5h86-8mv2-jq9f
Scan your Python project for dependency vulnerabilities in two minutes
Scan your application