CVE Catalog

CVE-2026-109821

MediumCVSS 6.3
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.50%

43th percentile - higher than 43% of all known CVEs

Summary

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 without bounding its length.

Risk Assessment

A port of up to 1,262,592 decimal digits produces a bignum of that size, and 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.

Recommendation

Upgrade Elixir to version 1.18.6, 1.19.7, or 1.20.5 (or later) depending on the branch in use. Until deployed, consider validating and limiting port lengths in incoming URLs.

Other vulnerabilities in Elixir

See all
Original NVD description (English source)

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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS