CVE-2026-114136 Denegación de servicio en JSONParser de Django REST framework
Desde 3.6.4 hasta 3.18.2, JSONParser.parse en rest_framework/parsers.py usa el charset del Content-Type enviado por el cliente con codecs.getreader, que acepta codecs de transformación de bytes como bz2_codec. Un cliente remoto no autenticado puede hacer que un cuerpo JSON comprimido se expanda después de que Django aplicó DATA_UPLOAD_MAX_MEMORY_SIZE solo a los bytes en tránsito, consumiendo memoria por worker con una petición muy pequeña. Afecta a cualquier endpoint alcanzable que acepte un cuerpo JSON. Corrige…
CVSS 3.1
- Probabilidad de explotación0,3 %
- Explotada activamenteNo confirmada
- Exploit públicoNo conocido
Afectados
encode django-rest-framework
>= 3.6.4, < 3.18.2
Qué hacer
- Verificá si usás django-rest-framework 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 3.1 · 7.5 ALTA
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- Vector de ataqueRed
- Complejidad del ataqueBaja
- Privilegios requeridosNinguno
- Interacción del usuarioNinguna
- AlcanceSin cambio
- ConfidencialidadNinguna
- IntegridadNinguna
- DisponibilidadAlta
Descripción original
Django REST framework is a toolkit for building Web APIs. From 3.6.4 until 3.18.2, JSONParser.parse in rest_framework/parsers.py uses the client-supplied Content-Type charset value with codecs.getreader, which accepts byte-transform codecs such as bz2_codec rather than only text encodings. A remote unauthenticated client can therefore cause a compressed JSON request body to be expanded after Django has enforced DATA_UPLOAD_MAX_MEMORY_SIZE against only the wire bytes, allowing a very small request to consume substantial per-worker memory. The default parser set is sufficient, and any reachable endpoint that accepts a JSON body is affected. This issue is fixed in version 3.18.2.
Referencias (3)
Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.