Erlang OTP ssh_sftpd Path Traversal (prefix) before 28.4.2
CVE-2026-23942 Published on March 13, 2026
SFTP root escape via component-agnostic prefix check in ssh_sftpd
Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') vulnerability in Erlang OTP (ssh_sftpd module) allows Path Traversal.
This vulnerability is associated with program files lib/ssh/src/ssh_sftpd.erl and program routines ssh_sftpd:is_within_root/2.
The SFTP server uses string prefix matching via lists:prefix/2 rather than proper path component validation when checking if a path is within the configured root directory. This allows authenticated users to access sibling directories that share a common name prefix with the configured root directory. For example, if root is set to /home/user1, paths like /home/user10 or /home/user1_backup would incorrectly be considered within the root.
This issue affects OTP from OTP 17.0 until OTP 28.4.1, OTP 27.3.4.9 and OTP 26.2.5.18, corresponding to ssh from 3.0.1 until 5.5.1, 5.2.11.6 and 5.1.4.14.
Weakness Type
What is a Directory traversal Vulnerability?
The software uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the software does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.
CVE-2026-23942 has been classified to as a Directory traversal vulnerability or weakness.
Products Associated with CVE-2026-23942
Want to know whenever a new CVE is published for Erlangotp? stack.watch will email you.
Affected Versions
Erlang OTP:- Version 3.0.1 and below * is affected.
- Version pkg:otp/ssh@3.0.1 and below pkg:otp/ssh@* is affected.
- Version 17.0 and below * is affected.
- Before * is affected.