CVE-2026-109821

Unbounded port parsing in URI.parse/1 enables CPU exhaustion denial of service in Elixir

MEDIUM
6.3
CVSS Score
Published: October 30, 2026 at 08:54 AM UTC
Updated: October 30, 2026 at 07:39 PM UTC
1 product affected across 1 vendorElixir

Using elixir by elixir-lang?

Get instant alerts when new vulnerabilities affect elixir - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM6.3
Exploit prediction
EPSS 0.5%
SSVC
PoC

Description

Improper Validation of Specified Quantity in Input vulnerability in the Elixir standard library's URI module allows an attacker who supplies a URL to cause a denial of service through CPU exhaustion. URI.parse/1 converts the port component with String.to_integer/1 in split_authority/1 (lib/elixir/lib/uri.ex) without bounding its length, so a port of up to 1,262,592 decimal digits produces a bignum of that size and a longer one raises SystemLimitError. Rendering the parsed URI back to text (URI.to_string/1, inspect/1, logging, error formatting) converts the bignum with :erlang.integer_to_binary/1, which is quadratic on Erlang/OTP 27, 28 and 29.0: a 400,000-digit port renders in about 2.6 seconds and a 1 MB port in about 18 seconds. Ports above 65535 are also accepted. This issue affects elixir: from 0.5.0 before 1.18.6, from 1.19.0-rc.0 before 1.19.7, and from 1.20.0-rc.0 before 1.20.5.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

0.5.01.19.0-rc.01.20.0-rc.039801821eef2d06524e5ebf5a0e4b3c380ad23ae

SSVC — Action Prioritization

SSVCPoCNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

6.3MEDIUMEEF
Vector?

Quick Info

StatusDEFERRED
CWE
CWE-1284CWE-400

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card