CVE-2026-55613 Contrabando de peticiones HTTP en uhttpd por desincronización en el cuerpo POST de ubus
En uhttpd, la función uh_ubus_data_send() en ubus.c puede desincronizar los límites de las peticiones HTTP cuando un cuerpo JSON de POST /ubus llega en varios segmentos TCP. Una petición HTTP embebida en el sufijo no leído del cuerpo se procesa como nueva petición en la misma conexión keep-alive. Afecta despliegues con ubus habilitado, incluida la configuración predeterminada de OpenWrt.
CVSS 4.0
- Probabilidad de explotación · EPSS del 09/110,4 % · percentil 33
- Explotada activamenteNo confirmada
- Exploit públicoNo conocido
Afectados
openwrt uhttpd
< 7b1bec45826bd78c8afc993435bdc0f1df2fe3
Qué hacer
- Verificá si usás uhttpd y en qué versión.
- Actualizá a la versión corregida que indique el fabricante en su aviso o aplicá su mitigación.
- Revisá registros y accesos de los sistemas expuestos para descartar un uso previo.
Calculadora CVSS
CVSS 4.0 · 6.9 MEDIA
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
- Vector de ataqueRed
- Complejidad del ataqueBaja
- Requisitos del ataqueNinguno
- Privilegios requeridosNinguno
- Interacción del usuarioNinguna
- Confidencialidad (sistema vulnerable)Ninguna
- Integridad (sistema vulnerable)Baja
- Disponibilidad (sistema vulnerable)Ninguna
- Confidencialidad (sistemas posteriores)Ninguna
- Integridad (sistemas posteriores)Ninguna
- Disponibilidad (sistemas posteriores)Ninguna
Descripción original
uhttpd is a small HTTP server. In unpatched repository snapshots, `uh_ubus_data_send()` in `ubus.c` can desynchronize HTTP request boundaries when a `POST /ubus` JSON body arrives in multiple TCP segments. An initial segment completing a JSON object sets `du->jsobj`; a later segment takes the existing-object parse-error path and returns zero bytes consumed. The caller neither drains the remaining declared `Content-Length` nor sets `connection_close`. An HTTP request embedded in the unread body suffix is consequently processed as a new request on the same keep-alive connection. The reported reproducer returned a JSON-RPC parse error followed by a second HTTP response. This application-layer body-handler flaw is distinct from Transfer-Encoding header case handling and chunk-length state reset, and affects deployments enabling ubus, including the default OpenWrt configuration and potential proxy/CDN deployments. Repository patches 7b1bec45826bd78c8afc993435bdc0f1df2fe399 and b2285de129b9adc8b12f84f9a27c16c21f2b57a5 address this issue.
Referencias (3)
Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.