aiohttp.web.static(follow_symlinks=True) is vulnerable to directory traversal
Summary
aiohttp.web.static(follow_symlinks=True) is vulnerable to directory traversal
Original description
The description as published by the source.
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.
Source: OSV.dev (Open Source Vulnerabilities) NVD GitHub Advisory OSV
Fix status by distribution
Fixed packages published by each distribution for this CVE
- Debian DEBIAN-CVE-2024-23334 python-aiohttp Fixed in: 3.7.4-1+deb11u1
- Ubuntu UBUNTU-CVE-2024-23334 python-aiohttp
References
- advisory github.com
- advisory github.com
- advisory nvd.nist.gov
- patch github.com
- patch github.com
- web lists.debian.org
- web lists.fedoraproject.org
- web lists.fedoraproject.org
- web exploit-db.com