Saltar al contenido
DUPIN
ALERTAS · EN VIVO
Contacto

EXPLOIT PÚBLICO

CVE-2026-77680 Denegación de servicio por complejidad algorítmica en libsoup (procesamiento de Range)

Existe una falla de complejidad algorítmica en el procesamiento del encabezado HTTP Range de libsoup que persiste tras la corrección de CVE-2025-32907: el bucle de coalescencia elimina rangos fusionados con g_array_remove_index(), lo que implica un memmove O(N) por eliminación y un trabajo O(N²) al enviar muchos rangos idénticos y satisfacibles. La ruta vulnerable es alcanzable del lado del servidor desde handle_partial_get() en libsoup/server/http1/soup-server-message-io-http1.c cuando un manejador de SoupServer…

Alerta de Nureq Monitor

Detectada 21 OCT · 10:59

CVSS 3.1

5.3MEDIA

PROBABILIDAD DE EXPLOTACIÓN (EPSS)

0,3 % PERCENTIL 27

EXPLOTACIÓN ACTIVA

No confirmada

EXPLOIT PÚBLICO

Sí 1 REPOSITORIO

Qué es CVE-2026-77680

Existe una falla de complejidad algorítmica en el procesamiento del encabezado HTTP Range de libsoup que persiste tras la corrección de CVE-2025-32907: el bucle de coalescencia elimina rangos fusionados con g_array_remove_index(), lo que implica un memmove O(N) por eliminación y un trabajo O(N²) al enviar muchos rangos idénticos y satisfacibles. La ruta vulnerable es alcanzable del lado del servidor desde handle_partial_get() en libsoup/server/http1/soup-server-message-io-http1.c cuando un manejador de SoupServer…

Productos y versiones afectadas

  • Red Hat Red Hat Enterprise Linux 10

    Versiones no especificadas.

Qué hacer

  1. Verificá si usás Red Hat Enterprise Linux 10.
  2. Actualizá a la versión corregida que indique el fabricante en su aviso (ver referencias) o aplicá la mitigación que publique.
  3. Priorizá la corrección: hay código de explotación público, así que el riesgo de ataque es alto.
  4. Revisá registros y accesos de los sistemas expuestos para descartar que se haya aprovechado antes de corregir.

Exploits y pruebas de concepto públicas

Código publicado por terceros. Puede ser malicioso: revisalo solo en un entorno aislado.

Calculadora CVSS

CVSS 3.1 · 5.3 MEDIA

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L

VECTOR DE ATAQUE (AV)
Red
COMPLEJIDAD DEL ATAQUE (AC)
Baja
PRIVILEGIOS REQUERIDOS (PR)
Ninguno
INTERACCIÓN DEL USUARIO (UI)
Ninguna
ALCANCE (S)
Sin cambio
CONFIDENCIALIDAD (C)
Ninguna
INTEGRIDAD (I)
Ninguna
DISPONIBILIDAD (A)
Baja

Abrir la calculadora completa

Descripción original

An algorithmic complexity flaw exists in libsoup's HTTP Range header processing that persists after the CVE-2025-32907 fix. CVE-2025-32907 addressed memory amplification when a client repeated the same range many times in a single Range header. Commit 9bb92f7a corrected merge correctness in soup_message_headers_get_ranges_internal() in libsoup/soup-message-headers.c, but the coalescing loop still removes merged ranges using g_array_remove_index() for each coalesced element. Because GArray is contiguous, each mid-array removal performs an O(N) memmove. When many identical satisfiable ranges are supplied (for example bytes=0-0 repeated thousands of times), the loop performs O(N²) work coalescing them into a single range. The vulnerable path is reachable server-side from handle_partial_get() in libsoup/server/http1/soup-server-message-io-http1.c when a SoupServer handler returns HTTP 200 with a non-empty body. No authentication is required. The number of ranges is bounded only by the maximum request header size (~100 KiB), allowing roughly 25,000 ranges per request. Reporter measurements on libsoup HEAD containing the CVE-2025-32907 fix show ~90 ms single-core CPU per such request at the wire maximum, blocking the server's event loop for that duration. This is a CPU exhaustion / availability issue only. No memory corruption or information disclosure occurs. Affected: libsoup versions containing the CVE-2025-32907 fix but not merge request !550. Fixed upstream: MR !550 merged 2026-08-20, replacing per-element removal with O(N) in-place compaction and rejecting Range headers requesting more than 200 ranges. Upstream report: https://gitlab.gnome.org/GNOME/libsoup/-/issues/538 Related: CVE-2025-32907

Referencias

Historial de la alerta

  1. EXPLOIT PÚBLICO Se publicó el repositorio OJ01-creates/CVE-2026-77680-Security-Analysis.

CÓMO SE HIZOResumen traducido automáticamente al español a partir de la descripción original. Ante dudas, la descripción original y las referencias del fabricante son la fuente de verdad. Cómo funciona.