Skip to main content

Erlang/OTP inets EUVDEUVD-2026-69243

| CVE-2026-73270 HIGH
Improper Handling of Case Sensitivity (CWE-178)
2026-09-01 EEF
8.2
CVSS 4.0 · Vendor: EEF
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify inets httpd endpoint with mod_auth
  2. Delivery
    Send HTTP request with case-variant path
  3. Exploit
    Regex match bypassed without caseless flag
  4. Execution
    Authentication challenge skipped entirely
  5. Persist
    Case-insensitive filesystem resolves path
  6. Impact
    mod_get serves protected file unauthenticated

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Case sensitivity handling
Exploitation Conditions

Three conditions must hold simultaneously. First, the target must run Erlang/OTP inets httpd with mod_auth configured to protect one or more directories - deployments using other Erlang web frameworks such as Cowboy or Phoenix/Plug are entirely unaffected. Second, the server must be hosted on a case-insensitive filesystem: Windows NTFS and macOS default HFS+/APFS qualify; Linux ext4, xfs, and btrfs (case-sensitive by default) do not, and such deployments are fully immune regardless of OTP version. Third, the attacker must request a specific file using a path whose directory component casing differs from the configured protected directory name - directory enumeration or prior knowledge of filenames is therefore a practical prerequisite. No privileges or user interaction are required on affected deployments. Exploitation is bounded to confidentiality; no write path, privilege escalation, or code execution vector exists through this flaw.

Impact

The CVSS 4.0 score of 8.2 reflects network-accessible, unauthenticated read of high-confidentiality data, but the AT:P (Attack Requirements: Present) metric is the decisive differentiator - exploitation is strictly limited to deployments on case-insensitive filesystems such as Windows NTFS and macOS default HFS+/APFS. The large majority of production Erlang deployments run on Linux with case-sensitive ext4 or similar filesystems, rendering them immune because the OS itself rejects mismatched casing before mod_get can serve anything. EPSS data was not provided in the available intelligence, and the vulnerability is absent from CISA KEV with no proof-of-concept identified in the provided data - consistent with no widespread exploit tooling having emerged yet. Where conditions are met, the attack requires zero privileges and zero user interaction, and the high confidentiality impact means protected credentials, configuration secrets, or application data are directly readable over the network. Real-world risk is high for the specific Windows and macOS deployment population using inets httpd with mod_auth, and low to negligible for the broader Erlang ecosystem on standard Linux infrastructure.

Exploit ScenarioDerived

An unauthenticated attacker targeting a Windows Server host running Erlang/OTP inets httpd sends GET /Secret/admin.cfg HTTP/1.1 when the mod_auth-protected directory is configured as /secret/. The regex in secret_path/3 does not match /Secret/ against /secret/ without the caseless option, so no WWW-Authenticate challenge is issued; NTFS resolves both paths to the same file and mod_get returns the file contents directly. No public exploit code has been identified at time of analysis, and the technique requires only a standard HTTP client with knowledge of a valid filename within a protected directory.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.7% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 01, 2026

Unauthenticated file disclosure in Erlang/OTP's inets httpd allows remote attackers on case-insensitive filesystem deployments to read files inside mod_auth-protected directories by requesting them with differently-cased path segments. The flaw spans OTP 17.0 through 29.x (inets 5.10 through 9.7.x) and stems from mod_auth's path-matching regex omitting the caseless flag, causing authentication checks to be silently bypassed when request path casing differs from the configured directory name while the filesystem resolves both to the same file. No public exploit code or active exploitation has been identified at time of analysis, and deployments on case-sensitive filesystems - the default on Linux - are fully unaffected by this vulnerability.

RemediationAI

Upgrade to OTP 27.3.4.17 or later (27.x branch), OTP 28.5.0.6 or later (28.x branch), or OTP 29.0.6 or later (29.x branch), corresponding to patched inets versions 9.3.2.7, 9.6.2.3, and 9.7.2 respectively. Patch commits are published at https://github.com/erlang/otp/commit/bac19eb3dbd96cc49b6d8cabc1c04248bf8c79f6, https://github.com/erlang/otp/commit/d8878dec0ececc2eab18e47bb18b472f224ca633, and https://github.com/erlang/otp/commit/9641944a2efbf55bea760f8ff7ba777fe3a0961c. If immediate upgrade is not feasible on case-insensitive filesystem deployments, place a reverse proxy (such as nginx) in front of inets httpd configured to lowercase-normalize URL paths before forwarding - this reduces the attack surface but adds an additional component to maintain and operate. A simpler compensating control is to migrate the httpd document root to a case-sensitive filesystem volume (e.g., a case-sensitive APFS container on macOS), which removes the vulnerability's precondition entirely without requiring a code change. Full advisory and version table: https://github.com/erlang/otp/security/advisories/GHSA-mh78-93cr-jx8f.

Affected VersionsENISA

otp 17.0 <27.3.4.17
otp 28.0 <28.5.0.6
otp 5.10 <9.3.2.7
otp 84adefa331c4159d432d22840663c38f155cd4c1 <*
otp 29.0 <29.0.6
otp 9.7 <9.7.2
otp 9.4 <9.6.2.3

Affected Packages

euvd otp fix: 9.3.2.7, 9.6.2.3, 9.7.2, 27.3.4.17, 28.5.0.6, 29.0.6

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Erlang/OTP's inets application ships an embedded HTTP server (httpd) with a modular pipeline including mod_auth for Basic HTTP authentication and directory-level access control, and mod_get for static file serving. The root cause is CWE-178 (Improper Handling of Case Sensitivity): the secret_path/3 function in mod_auth.erl uses re:run/3 to test whether a resolved filesystem path falls within a configured protected directory, but the call omits the caseless option. When a request for /Secret/file is compared against a configured directory of /secret/, the regex does not match, so no authentication challenge is issued - yet the case-insensitive filesystem resolves both paths to the identical inode, which mod_get then serves without restriction. The upstream patch (commit bac19eb) adds the caseless flag to the re:run/3 call in mod_auth.erl and also introduces collapse_slashes/1 to canonicalize consecutive-slash sequences, closing a related double-slash bypass variant simultaneously. Affected CPE: cpe:2.3:a:erlang:otp:*:*:*:*:*:*:*:*.

Know when Erlang gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (EEF) PRIMARY 8.2 HIGH
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
vuln.today AI 5.9 MEDIUM

Case-insensitive filesystem is a specific non-default environmental prerequisite warranting AC:H; exploitation is read-only with no integrity or availability impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
SUSE 5.9 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Red Hat 7.5 HIGH

Primary rating from Vendor (EEF).

CVSS VectorVendor: EEF

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Improper Handling of Case Sensitivity vulnerability in Erlang/OTP inets httpd allows a remote unauthenticated attacker to read files inside a mod_auth protected directory by requesting them with different casing, on deployments whose filesystem is case-insensitive.

mod_auth:secret_path/3 decides whether a resolved filesystem path lies inside a protected directory block by running the configured directory path through re:run/3 without the caseless option. A request for /secret/file against a directory configured as /Secret therefore does not match, so the request is treated as unprotected and no authentication challenge is issued, while the filesystem resolves the differently cased path to the same file and mod_get serves it. Deployments on case-sensitive filesystems are unaffected, because there the filesystem itself rejects the mismatched casing.

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.

Technical POC Analysis

CWE-178 (Improper Handling of Case Sensitivity).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Erlang/OTP web server deployments on Windows and macOS are vulnerable to unauthenticated retrieval of files protected by authentication modules. The vulnerability affects inets httpd versions 5.10 through 9.7.x (OTP 17.0-29.x) and exploits case-sensitivity differences to bypass file access controls; organizations relying on Erlang-based web services on non-Linux platforms face exposure of confidential files to remote attackers without valid credentials.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.7%
Top 51% exploitable
Prevalence
Low
inets httpd rarely deployed as production web server in Erlang projects
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment MSRC Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.7%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

42
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +41
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Erlang

View all
CVE-2025-32433 CRITICAL POC
10.0 Apr 16

Erlang/OTP SSH server allows unauthenticated remote code execution by exploiting a flaw in SSH protocol message handling

CVE-2017-1000385 MEDIUM POC
5.9 Dec 12

The Erlang otp TLS server answers with different TLS alerts to different error types in the RSA PKCS #1 1.5 padding. Rat

CVE-2023-48795 MEDIUM POC
5.9 Dec 18

The SSH transport protocol with certain OpenSSH extensions, found in OpenSSH before 9.6 and other products, allows remot

CVE-2020-13802 CRITICAL POC
9.8 Sep 02

Rebar3 versions 3.0.0-beta.3 to 3.13.2 are vulnerable to OS command injection via URL parameter of dependency specificat

CVE-2014-1693 HIGH POC
7.5 Dec 08

Multiple CRLF injection vulnerabilities in the FTP module in Erlang/OTP R15B03 allow context-dependent attackers to inje

CVE-2021-29221 HIGH POC
7.0 Apr 09

A local privilege escalation vulnerability was discovered in Erlang/OTP prior to version 23.2.3. Rated high severity (CV

CVE-2016-10253 CRITICAL
9.8 Mar 18

An issue was discovered in Erlang/OTP 18.x. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitab

CVE-2022-37026 CRITICAL
9.8 Sep 21

In Erlang/OTP before 23.3.4.15, 24.x before 24.3.4.2, and 25.x before 25.0.2, there is a Client Authentication Bypass in

CVE-2026-89422 CRITICAL
9.3 Sep 22

Erlang/OTP's ssl application in affected releases (OTP 22.2 through the fixed 27.3.4.18, 28.5.0.7 and 29.1.1) will compl

CVE-2026-67404 CRITICAL
9.2 Sep 23

RabbitMQ brokers that use the OAuth2 plugin can silently fall back to disabled TLS certificate verification when no CA b

CVE-2026-67231 CRITICAL
9.1 Sep 23

TLS client-authentication bypass in the RabbitMQ trust-store plugin lets a remote unauthenticated attacker whose forged

CVE-2026-55953 CRITICAL
9.1 Jul 27

An on-path attacker can force an Erlang/OTP TLS 1.2 or DTLS client to accept an anonymous cipher suite not offered by th

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Module for Server Applications 15 SP7 Affected
SUSE Linux Enterprise Module for Server Applications 15 SP7 Affected
SUSE Linux Enterprise Server 15 SP7 Affected
SUSE Linux Enterprise Server 15 SP7 Affected
SUSE Linux Enterprise Server 16.0 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy