CVE-2026-125112 Cross-site scripting (XSS) en djust por herencia indebida de permisos de contexto
Antes de 1.0.10 y 1.1.2, djust indexa los permisos de salida segura del contexto por nombre de variable y no revoca el permiso cuando un binding de plantilla reemplaza el valor asociado a ese nombre. Una plantilla con {% with %}, {% for %}, {% include ... with %}, desempaquetado de tuplas o etiquetas assign puede reasignar un nombre que antes contenía contenido mark_safe y emitir el nuevo valor controlado por el atacante sin escapar, incluidas búsquedas descendientes a través del nombre reasignado. Esto puede…
CVSS 4.0
- Probabilidad de explotaciónSin dato
- Explotada activamenteNo confirmada
- Exploit públicoNo conocido
Afectados
djust-org djust
< 1.0.10>= 1.1.0, < 1.1.2
Qué hacer
- Verificá si usás djust 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 · 2.3 BAJA
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
- Vector de ataqueRed
- Complejidad del ataqueBaja
- Requisitos del ataquePresentes
- Privilegios requeridosNinguno
- Interacción del usuarioPasiva
- Confidencialidad (sistema vulnerable)Baja
- Integridad (sistema vulnerable)Baja
- Disponibilidad (sistema vulnerable)Ninguna
- Confidencialidad (sistemas posteriores)Ninguna
- Integridad (sistemas posteriores)Ninguna
- Disponibilidad (sistemas posteriores)Ninguna
Descripción original
djust provides Phoenix LiveView-style reactive server-side rendering for Django with Rust-powered performance. Prior to versions 1.0.10 and 1.1.2, djust keys context output-safety grants by variable name and fails to revoke a grant when a template bind replaces the value associated with that name. A template using {% with %}, {% for %}, {% include ... with %}, tuple unpacking, or assign tags can therefore rebind a name that previously held mark_safe content and emit the new attacker-controlled value without escaping, including descendant lookups through the rebound name. This can cause stored or reflected cross-site scripting when a victim renders the affected template. This issue is fixed in versions 1.0.10 and 1.1.2.
Referencias (6)
- github.com/djust-org/djust/security/advisories/GHSA-xjw9-38cr-6372
- github.com/djust-org/djust/pull/2444
- github.com/djust-org/djust/commit/06d213dbdd82f5b1c2affe2f869ae88a71809e4a
- github.com/djust-org/djust/commit/5288e5dbc8d83d8aee8a22a0a7a3a478461c8965
- github.com/djust-org/djust/releases/tag/v1.0.10
- github.com/djust-org/djust/releases/tag/v1.1.2
Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.