Skip to content
OpenAdvisories
Medium · 6.5 CVE-2026-77473 EUVD-2026-120480

AsyncSSH: SFTP Recursive Copy Path Traversal via Unsanitized Server-Supplied Filenames

Published Nov 9, 2026 · Updated Nov 10, 2026 · Assigned by GitHub_M

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.

Affected products

VendorProductAffectedFixed
ronf asyncssh < 2.24.1 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 python-asyncssh No fix yet —
Debian 13 python-asyncssh No fix yet —
Debian 12 python-asyncssh No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 python-asyncssh No fix yet —
Ubuntu 26.04 LTS python-asyncssh No fix yet —
Ubuntu 20.04 LTS python-asyncssh No fix yet —
Ubuntu 16.04 LTS python-asyncssh No fix yet —
Show 3 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro 24.04 LTS python-asyncssh No fix yet —
Ubuntu Pro 22.04 LTS python-asyncssh No fix yet —
Ubuntu Pro 18.04 LTS python-asyncssh No fix yet —

References