{"affected":[{"product":"asyncssh","source":"CNA: GitHub_M","vendor":"ronf","versions":[{"status":"affected","version":"< 2.24.1"}]}],"cveId":"CVE-2026-77473","cwes":["CWE-22"],"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.","epss":null,"exploits":[],"kev":null,"metrics":[{"score":6.5,"severity":"medium","source":"CNA: GitHub_M","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N","version":"3.1"}],"modifiedAt":1794261111146,"publishedAt":1794261111146,"references":[{"source":"CNA: GitHub_M","tags":["x_refsource_CONFIRM"],"url":"https://github.com/ronf/asyncssh/security/advisories/GHSA-q8m6-9rfx-39rf"},{"source":"CNA: GitHub_M","tags":["x_refsource_MISC"],"url":"https://github.com/ronf/asyncssh/commit/eaf7fd3b058ccb36b51ed932158d36cf304aa7c3"},{"source":"CNA: GitHub_M","tags":["x_refsource_MISC"],"url":"https://github.com/ronf/asyncssh/releases/tag/v2.24.1"}],"remediation":[],"revision":"24e3105f17dea01467189e6da81f69a4d4bf8bae6111252eac28e138726b3d13","sources":[{"modifiedAt":1794261111146,"name":"CNA: GitHub_M","retrievedAt":1794262258527,"url":"https://www.cve.org/CVERecord?id=CVE-2026-77473"}],"ssvc":null,"status":"published","title":"AsyncSSH: SFTP Recursive Copy Path Traversal via Unsanitized Server-Supplied Filenames","updatedAt":1794262258527}