Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend URI with million-digit port field
-
Deliveryuri_string:parse/1 processes attacker input
-
Exploitget_port/1 passes unbounded string to binary_to_integer/1
-
Executionbignum arithmetic stalls calling process
-
Impactsustained requests degrade service availability
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V2 - Validation and Business Logic Input size validation
|
| Exploitation Conditions | The application must call uri_string:parse/1 (or any OTP function that internally delegates to it) on a URI supplied or influenced by an attacker, with no prior validation of the port component's length. All four authority-parsing paths - host, registered-name, IPv4, and IPv6 - are affected, so no specific URI form or protocol is required. No authentication is required (CVSS PR:N) and no non-default configuration is needed; the vulnerable code path is reached by the standard documented API in its default state. Applications that do not parse attacker-supplied URIs through this API are not affected. The primary factor limiting impact is that each malicious request causes a per-process delay rather than a crash or data exposure; an attacker must sustain request volume to cause meaningful service degradation, and network-layer rate limiting significantly reduces exploitability. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VA:L) characterizes a low-complexity, unauthenticated network attack with limited availability impact - per-process CPU stalling rather than a crash or data breach. No EPSS score was included in the source intelligence data, and the vulnerability has not been added to CISA KEV; exploitation probability is inferred from the attack description and vector rather than confirmed telemetry. The practical attack surface is significant: uri_string:parse/1 is the standard OTP URI-parsing interface, so any networked Erlang service that accepts user-supplied URIs - HTTP servers, LDAP clients, webhook processors, API gateways - is exposed by default without requiring any non-default configuration. Even a mid-sized IT operation in gdynia running RabbitMQ, a Phoenix web application, or a custom Erlang HTTP service should treat this as a priority patch given the zero-friction, unauthenticated attack path and the breadth of the exposed API surface. Sustained service-level availability impact requires repeated requests since each individual request causes only a per-process delay, meaning rate limiting at the network edge meaningfully raises the practical bar; the absence of a crash or data exposure keeps this below critical severity despite the wide exposure. |
| Exploit ScenarioDerived | An attacker sends an HTTP request or other network message to an Erlang application that calls uri_string:parse/1 on attacker-supplied input, embedding a URI such as http://example.com:11111...1/path with approximately one million digit characters as the port value. Each such request causes the receiving Erlang process to stall for hundreds of milliseconds of bignum arithmetic; by sending a sustained stream of such requests, the attacker degrades throughput or causes request timeouts without crashing the node or accessing any data. No public exploit code has been identified, but the attack requires no specialized tooling and is trivially constructable from the CVE description alone. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 01, 2026
Availability degradation in Erlang/OTP stdlib's URI parser allows any remote, unauthenticated attacker to stall an Erlang process for hundreds of milliseconds by supplying a URI whose port field contains an arbitrarily long run of digits. The function uri_string:parse/1 - the documented, standard interface for URI parsing in OTP - routes all authority forms through get_port/1, which calls binary_to_integer/1 with no length bound; a syntactically valid port of approximately 1.26 million digits converts successfully, burning CPU on arbitrary-precision arithmetic without raising an error. Affected OTP versions span releases 21.0 through the 27.x, 28.x, and 29.x trains; vendor-released patches are available, and no public exploit or active exploitation has been confirmed at time of analysis.
RemediationAI
Upgrade Erlang/OTP to one of the patched releases: OTP 27.3.4.17 or later (stdlib 6.2.2.5+), OTP 28.5.0.6 or later (stdlib 7.3.0.2+), or OTP 29.0.6 or later (stdlib 8.0.4+) as confirmed by the vendor advisory at https://github.com/erlang/otp/security/advisories/GHSA-8qw4-2chm-mvj2. Source-level patch commits are at https://github.com/erlang/otp/commit/aba0fe8c2d700bf4ac94607cf7f00e53bbe4042d and https://github.com/erlang/otp/commit/e3be1cfe9f6cedd0cd20d9905e05601dfb31c8aa. Where immediate upgrade is not feasible, applications should validate that the port component of any attacker-supplied URI does not exceed 5 characters before passing it to uri_string:parse/1; this eliminates the bignum computation path with no functional side effects for legitimate URIs. At the network layer, rate limiting and request-size caps at a reverse proxy or load balancer will reduce the volume of crafted requests reaching Erlang workers, though they do not eliminate the vulnerability. The updated httpc module adds max_header_size (default 10240 bytes) and max_body_size options for outbound HTTP clients; explicitly setting both limits is recommended for all httpc-based consumers.
Affected VersionsENISA
Affected Packages
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
The vulnerability resides in the uri_string module of Erlang/OTP's standard library (stdlib), which provides the canonical URI parsing API for OTP applications. The root cause is CWE-1284 (Improper Validation of Specified Quantity in Input): Erlang's binary_to_integer/1 is a bignum routine that accepts integers of arbitrary size by language design, and get_port/1 passes the raw port substring to it while catching only error:badarg, which is not raised for very large integers that convert successfully. All four authority-parsing paths in uri_string:parse/1 - host, registered-name, IPv4, and IPv6 - converge on this code path, meaning the attack surface is the full documented API surface rather than an obscure option. Patch commits aba0fe8c2d and e3be1cfe9f address the issue: eldap.erl gains a guard clause restricting Sport to at most 5 characters (sufficient for the maximum valid port value 65535), and httpc gains configurable max_header_size (default 10240 bytes) and max_body_size limits. Affected CPE: cpe:2.3:a:erlang:otp across all three release trains (OTP 21-27, 28, and 29).
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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Network-accessible, zero-auth, zero-configuration path to CPU stall; no confidentiality or integrity impact, only per-process availability degradation with unchanged scope.
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Primary rating from Vendor (EEF).
CVSS VectorVendor: EEF
DescriptionCVE.org
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP stdlib allows a remote attacker to degrade availability by supplying a URI whose port component is a very long run of digits.
uri_string:get_port/1 passes the port substring to binary_to_integer/1 with no length bound, catching only error:badarg, so a syntactically valid port of up to roughly 1.26 million digits converts successfully and costs the calling process hundreds of milliseconds of arbitrary-precision arithmetic. The conversion is reached from every authority-parsing path in uri_string:parse/1, including the host, registered-name, and IPv4 and IPv6 forms. parse/1 is the documented interface for parsing URIs, so any application that parses an attacker-supplied URI is exposed without further configuration. The conversion function is documented to accept integers of any size, so bounding the input is the caller's responsibility.
This issue affects OTP from OTP 21.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 stdlib from 3.5 before 6.2.2.5, from 7.0 before 7.3.0.2, and from 8.0 before 8.0.4.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Erlang/OTP SSH server allows unauthenticated remote code execution by exploiting a flaw in SSH protocol message handling
The Erlang otp TLS server answers with different TLS alerts to different error types in the RSA PKCS #1 1.5 padding. Rat
The SSH transport protocol with certain OpenSSH extensions, found in OpenSSH before 9.6 and other products, allows remot
Rebar3 versions 3.0.0-beta.3 to 3.13.2 are vulnerable to OS command injection via URL parameter of dependency specificat
Multiple CRLF injection vulnerabilities in the FTP module in Erlang/OTP R15B03 allow context-dependent attackers to inje
A local privilege escalation vulnerability was discovered in Erlang/OTP prior to version 23.2.3. Rated high severity (CV
An issue was discovered in Erlang/OTP 18.x. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitab
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
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
RabbitMQ brokers that use the OAuth2 plugin can silently fall back to disabled TLS certificate verification when no CA b
TLS client-authentication bypass in the RabbitMQ trust-store plugin lets a remote unauthenticated attacker whose forged
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 |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP6 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP6 | Affected |
| SUSE Linux Enterprise Server 15 SP4 | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP5 | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP6 | Affected |
| SUSE Linux Enterprise Server 15 SP6 | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Affected |
| SUSE Enterprise Storage 7 | Affected |
| SUSE Enterprise Storage 7.1 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP2 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP3 | Affected |
| SUSE Linux Enterprise Real Time 15 SP2 | Affected |
| SUSE Linux Enterprise Real Time 15 SP3 | Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | Affected |
| SUSE Linux Enterprise Server 15 SP2 | Affected |
| SUSE Linux Enterprise Server 15 SP2-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP3 | Affected |
| SUSE Linux Enterprise Server 15 SP3-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP2 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | Affected |
| SUSE Manager Proxy 4.1 | Affected |
| SUSE Manager Proxy 4.2 | Affected |
| SUSE Manager Proxy 4.3 | Affected |
| SUSE Manager Proxy LTS 4.3 | Affected |
| SUSE Manager Retail Branch Server 4.1 | Affected |
| SUSE Manager Retail Branch Server 4.2 | Affected |
| SUSE Manager Retail Branch Server 4.3 | Affected |
| SUSE Manager Retail Branch Server LTS 4.3 | Affected |
| SUSE Manager Server 4.1 | Affected |
| SUSE Manager Server 4.2 | Affected |
| SUSE Manager Server 4.3 | Affected |
| SUSE Manager Server LTS 4.3 | Affected |
| openSUSE Leap 15.3 | Affected |
| openSUSE Leap 15.4 | Affected |
| openSUSE Leap 15.5 | Affected |
| openSUSE Leap 15.6 | Affected |
| openSUSE Leap 15.6 | Affected |
EUVD-2026-69229
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB