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.3MEDIAPROBABILIDAD 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
- Verificá si usás Red Hat Enterprise Linux 10.
- Actualizá a la versión corregida que indique el fabricante en su aviso (ver referencias) o aplicá la mitigación que publique.
- Priorizá la corrección: hay código de explotación público, así que el riesgo de ataque es alto.
- 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
- access.redhat.com/security/cve/CVE-2025-32907TECHNICAL-DESCRIPTION · X_REFSOURCE_REDHAT
- access.redhat.com/security/cve/CVE-2026-77680VDB-ENTRY · X_REFSOURCE_REDHAT
- bugzilla.redhat.com/show_bug.cgi?id=2520892ISSUE-TRACKING · X_REFSOURCE_REDHAT
- gitlab.gnome.org/GNOME/libsoup/-/issues/538
- gitlab.gnome.org/GNOME/libsoup/-/merge_requests/550
Historial de la alerta
- 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.