ZeroHour

CVE-2026-66835

niche

Path Equivalence auth bypass in Erlang/OTP inets httpd exposes protected files

CVSS 4.0
8.2 high
EPSS
<1%p48
Published
()
Modified
AI analysis

CVE-2026-66835 is a path equivalence flaw (CWE-50) in the httpd web server of Erlang/OTP's inets application that lets a remote, unauthenticated attacker read files inside directories protected by mod_auth without supplying credentials. Because URI normalization leaves empty path segments intact, a doubled slash in the request path survives; when the document root is prepended, that doubled slash breaks the regular expression mod_auth uses to recognize a protected directory, so no authentication challenge is issued, while the operating system collapses the doubled slash when the file is opened and the protected file is served anyway. The same path mismatch also evades the per-path accounting in mod_security. Anyone running httpd with mod_auth-protected directories on OTP 17.0 up to (excluding) 27.3.4.17, OTP 28.0 up to (excluding) 28.5.0.6, or OTP 29.0 up to (excluding) 29.0.6 (inets 5.10 up to 9.3.2.7, 9.4 up to 9.6.2.3, and 9.7 up to 9.7.2 respectively) is affected; whether OTP releases before 17.0 are affected is unknown. No public proof-of-concept, CISA KEV listing, or known in-the-wild exploitation exists, and EPSS assigns roughly a 0.6% probability of exploitation within 30 days.

What to do: Upgrade Erlang/OTP to 27.3.4.17, 28.5.0.6, or 29.0.6 as applicable, which correspond to fixed inets versions 9.3.2.7, 9.6.2.3, and 9.7.2. As an interim measure, front httpd with a reverse proxy that rejects or normalizes requests containing doubled slashes, or restrict access to mod_auth-protected directories elsewhere. Inventory httpd virtual hosts for mod_auth directory blocks and review access logs for requests with doubled slashes against protected paths.

Affected
Ericsson Erlang/OTP (inets httpd)17.0 up to (excluding) 27.3.4.17; 28.0 up to (excluding) 28.5.0.6; 29.0 up to (excluding) 29.0.6; whether versions before OTP 17.0 are affected is unknown
Ericsson inets application (httpd)5.10 up to (excluding) 9.3.2.7; 9.4 up to (excluding) 9.6.2.3; 9.7 up to (excluding) 9.7.2; whether versions before inets 5.10 are affected is unknown
Estimated exposure
nicheplausibly low thousands of exposed instances or fewer (niche, mostly internal/embedded inets httpd deployments) — No public internet-scan counts or install metrics exist for inets httpd; by deployment pattern it is used mainly inside Erlang/Elixir applications and embedded systems rather than as a public web server, and only hosts serving…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

Path Equivalence vulnerability in Erlang/OTP inets httpd allows a remote unauthenticated attacker to read files inside a mod_auth protected directory by prefixing the request path with an extra slash. httpd_request:validate_uri/1 normalises the request URI with uri_string:normalize/1, which performs RFC 3986 dot-segment removal but does not collapse empty path segments, so a doubled slash survives. mod_alias:real_name/3 concatenates the document root with that URI, and mod_auth:secret_path/3 then decides whether the result lies inside a protected directory block by running the configured directory path as an unanchored regular expression against it. The doubled slash breaks the contiguous substring the regex needs, so the request is treated as unprotected and no authentication challenge is issued, while mod_get opens the same path and the operating system collapses the doubled slash and returns the protected file. The same path mismatch also evades the per-path accounting in mod_security. This issue affects OTP from OTP 17.0 before OTP 27.3.4.17, from OTP 28.0 before OTP 28.5.0.6, and from OTP 29.0 before OTP 29.0.6, corresponding to inets from 5.10 before 9.3.2.7, from 9.4 before 9.6.2.3, and from 9.7 before 9.7.2. Whether OTP before OTP 17.0, corresponding to inets before 5.10, is affected is unknown.

Weakness
CWE-50
Vector
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.