Fecha de publicación: Lun, 08/12/2025 - 12:15

Aviso de seguridad

Nivel de peligrosidad: Alto

Descripción

  • La vulnerabilidad está en django.core.serializers.xml_serializer.getInnerText(). Cuando Django procesa input XML — por ejemplo a través de su deserializador XML — y el XML es especialmente malicioso (muy profundo, con muchas repeticiones o nodos manipulados), la función entra en un bucle costoso en CPU/memoria.
  • Esto puede permitir a un atacante remoto, con sólo enviar un input XML, saturar los recursos del servidor y causar que la aplicación deje de responder, ocasionando Denial of Service (DoS).
  • No se requiere autenticación, privilegios especiales ni interacción del usuario (ataque desde red).
  • Vulneran las versiones de Django: todas las versiones >= 4.2 hasta < 4.2.27, >= 5.1 hasta < 5.1.15, y >= 5.2 hasta < 5.2.9.

Recursos afectados

  • Framework Django en las versiones mencionadas (4.2.x, 5.1.x, 5.2.x dentro del rango vulnerable).
  • Aplicaciones web / servicios construidos con Django que utilicen la funcionalidad XML deserialization — es decir, que reciban o procesen datos XML desde fuentes externas sin validación segura.
  • Cualquier servidor expuesto a red (internet o intranet) que acepte XML como input para procesos Django.

Solución

  • Actualizar Django a versiones 4.2.27 (o superior), 5.1.15 (o superior), o 5.2.9 (o superior). Estas versiones incluyen corrección para esta vulnerabilidad.
  • Si tu aplicación procesa XML, revisar dependencias y librerías, y actualizar lo antes posible.

Recomendaciones

  • Auditar todas las aplicaciones Django en uso: identificar cuáles aceptan o procesan XML — tanto importaciones, APIs, servicios internos, feeds externos, etc.
  • Para entornos críticos: añadir controles de validación o saneamiento de inputs XML, limitar tamaño máximo, profundidad máxima, deshabilitar la función de deserialización XML si no es estrictamente necesaria.
  • Implementar monitoreo de uso de recursos (CPU, memoria) en servidores — establecer alertas para picos inesperados, especialmente en endpoints que reciben XML.
  • En entornos productivos, aplicar el parche tan pronto como sea posible, e idealmente durante la próxima ventana de mantenimiento.
  • Informar al equipo de desarrollo sobre la vulnerabilidad, y actualizar los manuales internos de hardening / buenas prácticas de codificación para evitar el uso de deserialización XML insegura o sin controles.

Referencias

NVD

CYBERSECURITYNEWS