Saltar al contenido
DUPIN
ALERTAS · EN VIVO
Contacto

VULNERABILIDADDetectada 30 OCT · 08:47

CVE-2026-109821 Denegación de servicio por agotamiento de CPU en el módulo URI de Elixir

URI.parse/1 convierte el componente de puerto con String.to_integer/1 sin limitar su longitud, por lo que un puerto de hasta 1.262.592 dígitos genera un bignum y uno mayor lanza SystemLimitError. Al renderizar la URI (URI.to_string/1, inspect/1, logging), la conversión es cuadrática en Erlang/OTP 27, 28 y 29.0, permitiendo a un atacante que suministra una URL causar denegación de servicio por agotamiento de CPU. Corregido en 1.18.6, 1.19.7 y 1.20.5.

6.3MEDIA

CVSS 4.0

  • Probabilidad de explotación · EPSS del 09/110,5 % · percentil 42
  • Explotada activamenteNo confirmada
  • Exploit públicoNo conocido

Afectados

  • elixir-lang elixir

    desde 0.5.0 hasta antes de 1.18.6desde 1.19.0-rc.0 hasta antes de 1.19.7desde 1.20.0-rc.0 hasta antes de 1.20.5

  • elixir-lang elixir

    39801821eef2d06524e5ebf5a0e4b3c380ad23ae

Qué hacer

  1. Verificá si usás elixir y en qué versión.
  2. Actualizá a la versión corregida que indique el fabricante en su aviso o aplicá su mitigación.
  3. Revisá registros y accesos de los sistemas expuestos para descartar un uso previo.

Calculadora CVSS

CVSS 4.0 · 6.3 MEDIA

CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N

  • Vector de ataqueRed
  • Complejidad del ataqueBaja
  • Requisitos del ataquePresentes
  • Privilegios requeridosNinguno
  • Interacción del usuarioNinguna
  • Confidencialidad (sistema vulnerable)Ninguna
  • Integridad (sistema vulnerable)Ninguna
  • Disponibilidad (sistema vulnerable)Baja
  • Confidencialidad (sistemas posteriores)Ninguna
  • Integridad (sistemas posteriores)Ninguna
  • Disponibilidad (sistemas posteriores)Ninguna

Descripción original

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.

Referencias (9)

Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.

DUPIN · CONTACTO

Contanos tu caso

El mensaje ya va armado: podés cambiarlo.

También podés escribir a [email protected]. Usamos tus datos solo para responderte.