CVE-2026-53422 SFTP REALPATH path-existence oracle allowing filesystem enumeration outside configured root

Low 2.3 Published Updated

Authenticated SFTP users can enumerate filesystem paths outside the configured root via a path traversal flaw in Erlang OTP's SSH module.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-53422?

CVE-2026-53422 is a low-severity path traversal vulnerability in Erlang OTP, published on 2 Jul 2026. Any signed-in user can exploit it over the network, with no action from the victim.

Official description

Observable Response Discrepancy vulnerability in Erlang OTP ssh (ssh_sftpd module) allows an authenticated SFTP user to enumerate the existence of files and directories outside the configured root directory.

The SSH_FXP_REALPATH handler in ssh_sftpd calls relate_file_name/3 with Canonicalize=false, unlike every other SFTP operation handler. This allows .. components in the requested path to bypass the is_within_root/2 check without being resolved. The un-canonicalized path then enters resolve_symlinks/2, which walks up the directory tree above the configured root and issues read_link() syscalls on arbitrary filesystem paths.

An authenticated SFTP client can exploit this by sending a REALPATH request with a crafted traversal path. The server response differs depending on whether the target path exists on the host filesystem (SSH_FXP_NAME when the path resolves successfully, SSH_FX_NO_SUCH_FILE when it does not). This creates a path-existence oracle that an attacker can use to enumerate the filesystem structure outside the configured root, including the existence of sensitive files, directories, and mount points.

The vulnerability leaks only the existence of paths. No file contents, credentials, or write access are obtainable through this issue alone. The information gained may assist further attacks when combined with other vulnerabilities.

This vulnerability is associated with program files lib/ssh/src/ssh_sftpd.erl and program routine ssh_sftpd:handle_op/4.

This issue affects OTP from OTP 17.0 before OTP 29.0.3, OTP 28.5.0.3 and OTP 27.3.4.14, corresponding to ssh from 3.0.1 before 6.0.2, 5.5.2.2 and 5.2.11.9.

Weakness: CWE-204

Which versions are affected by CVE-2026-53422?

It affects 2 products.

Linux distribution packages (39)
erlang27 Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-asn1 Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-common_test Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-compiler Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-crypto Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-debugger Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-dialyzer Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-diameter Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-edoc Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-eldap Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-erl_interface Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-erts Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-et Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-eunit Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-examples Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-ftp Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-gdb-tools Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-inets Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-jinterface Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-kernel Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-megaco Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-mnesia Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-observer Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-odbc Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-os_mon Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-parsetools Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-public_key Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-reltool Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-runtime_tools Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-sasl Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-snmp Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-ssh Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-ssl Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-stdlib Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-syntax_tools Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-tftp Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-tools Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-wx Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1
erlang27-xmerl Red Hat:hummingbird:1All versions0:27.3.4.14-1.hum1

Products include Erlang Erlang\/Otp, Erlang Erlang\/Ssh.

How do I fix CVE-2026-53422?

Upgrade to a fixed version.

Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.

Is CVE-2026-53422 being exploited?

There is no known exploitation of CVE-2026-53422 in the wild and no public exploit code.

Sources

Also known as AZL-95657, DEBIAN-CVE-2026-53422, EEF-CVE-2026-53422, GHSA-h9pw-h5w4-h976, RHSA-2026:35998, UBUNTU-CVE-2026-53422.

Is CVE-2026-53422 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free