CVE-2026-49762

Uncontrolled Resource Consumption vulnerability in the Elixir standard library's Version module allows an attacker who controls a version string to cause a denial of service through CPU and memory exhaustion. The version parser converts numeric version components (major, minor, patch and numeric pre-release/build identifiers) to integers without bounding their length. A single large all-digit component therefore forces a super-linear, non-yielding base-10 to arbitrary-precision integer conversion (String.to_integer/1, i.e. :erlang.binary_to_integer/1) that pins a BEAM scheduler, and a larger component raises an uncaught SystemLimitError that crashes the calling process. A single moderately sized string (around one megabyte) is enough; no authentication is required. This is reachable from the public entry points Version.parse/1, Version.parse!/1, Version.match?/3, Version.compare/2, and Version.parse_requirement/1, which applications routinely call on untrusted input such as HTTP parameters, dependency-manifest fields, and package metadata. This vulnerability is associated with program files lib/version.ex and program routines 'Elixir.Version.Parser':parse_digits/2. This issue affects Elixir: from 1.5.0 before 1.20.1.
CVSS

No CVSS.

Configurations

No configuration.

History

23 Jul 2026, 08:10

Type Values Removed Values Added
Summary
  • (es) Una vulnerabilidad de Consumo de Recursos No Controlado en el módulo Version de la biblioteca estándar de Elixir permite a un atacante que controla una cadena de versión causar una denegación de servicio a través del agotamiento de CPU y memoria. El analizador de versiones convierte componentes numéricos de versión (mayor, menor, parche e identificadores numéricos de pre-lanzamiento/construcción) a enteros sin limitar su longitud. Un único componente grande de solo dígitos, por lo tanto, fuerza una conversión superlineal, no productiva, de base-10 a entero de precisión arbitraria (String.to_integer/1, es decir, :erlang.binary_to_integer/1) que fija un planificador BEAM, y un componente más grande genera un SystemLimitError no capturado que bloquea el proceso de llamada. Una única cadena de tamaño moderado (alrededor de un megabyte) es suficiente; no se requiere autenticación. Esto es accesible desde los puntos de entrada públicos Version.parse/1, Version.parse!/1, Version.match?/3, Version.compare/2, y Version.parse_requirement/1, que las aplicaciones llaman rutinariamente en entradas no confiables como parámetros HTTP, campos de manifiesto de dependencia y metadatos de paquete. Esta vulnerabilidad está asociada con los archivos de programa lib/version.ex y las rutinas de programa 'Elixir.Version.Parser':parse_digits/2. Este problema afecta a Elixir: desde 1.5.0 antes de 1.20.1.

09 Jun 2026, 14:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-06-09 14:16

Updated : 2026-07-23 08:10


NVD link : CVE-2026-49762

Mitre link : CVE-2026-49762

CVE.ORG link : CVE-2026-49762


JSON object : View

Products Affected

No product.

CWE
CWE-400

Uncontrolled Resource Consumption