{"id":"CVE-2026-77473","published":"2026-11-09T22:18:54.713","lastModified":"2026-11-10T19:21:22.477","description":"AsyncSSH is a Python package which provides an asynchronous client and server implementation of the SSHv2 protocol on top of the Python asyncio framework. Prior to 2.24.1, recursive remote-to-local SFTP copies in SFTPClient._copy() in asyncssh/sftp.py, reached through get(), mget(), and copy(), trust filenames returned by a remote server's directory enumeration. A malicious or compromised SFTP server can return an absolute filename or a filename containing path separators and parent-directory traversal, causing destination path construction to escape the requested local directory and write attacker-selected content to locations writable by the client process. This issue is fixed in version 2.24.1.","cvssScore":6.5,"cvssSeverity":"MEDIUM","cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N","cwes":["CWE-22"],"vendors":[],"products":[],"references":[{"url":"https://github.com/ronf/asyncssh/commit/eaf7fd3b058ccb36b51ed932158d36cf304aa7c3","tags":[]},{"url":"https://github.com/ronf/asyncssh/releases/tag/v2.24.1","tags":[]},{"url":"https://github.com/ronf/asyncssh/security/advisories/GHSA-q8m6-9rfx-39rf","tags":[]}],"exploitRefs":[{"url":"https://github.com/ronf/asyncssh/commit/eaf7fd3b058ccb36b51ed932158d36cf304aa7c3","tags":[]},{"url":"https://github.com/ronf/asyncssh/releases/tag/v2.24.1","tags":[]},{"url":"https://github.com/ronf/asyncssh/security/advisories/GHSA-q8m6-9rfx-39rf","tags":[]}],"hasPoc":true,"ai":null}