Vulnerability 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. Version 2.23.0 contains an incomplete fix for CVE-2026-45309 in SSHServerConfig._set_tokens that blocks /, , and .. before %u substitution in AuthorizedKeysFile but does not block a leading ~ or ${ENV}, allowing later expansion in _expand_val and Path(filename).expanduser() to escape the intended authorized-keys directory. This issue is fixed in version 2.23.1.
CVSS Score
MEDIUM
Related Weaknesses (CWE)
References
- https://github.com/ronf/asyncssh/commit/3d515ba9ba0cd9990d248bdf62bcf05d51261a88
- https://github.com/ronf/asyncssh/releases/tag/v2.23.1
- https://github.com/ronf/asyncssh/security/advisories/GHSA-qr67-gv47-xwwh
- https://github.com/ronf/asyncssh/security/advisories/GHSA-qr67-gv47-xwwh
FAQ
What is CVE-2026-54590?
CVE-2026-54590 is a vulnerability with a CVSS score of 5.9 (MEDIUM). AsyncSSH is a Python package which provides an asynchronous client and server implementation of the SSHv2 protocol on top of the Python asyncio framework. Version 2.23.0 contains an incomplete fix for...
How severe is CVE-2026-54590?
CVE-2026-54590 has been rated MEDIUM with a CVSS base score of 5.9/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2026-54590?
Check the references section above for vendor advisories and patch information. Review vendor security bulletins for remediation guidance.