julio 4, 2025
Django 4.2.22 corrige una cuestión de seguridad con severidad «baja» en 4.2.21.
El registro de respuestas HTTP internas utiliza directamente request.path, lo que permite caracteres de control (por ejemplo, saltos de línea o secuencias de escape ANSI) ser escritos sin escapar en los registros. Esto podría permitir la inyección de log o falsificación, permitiendo a los atacantes manipular la apariencia o estructura de los registros, especialmente en los registros procesados por sistemas externos o visualizados en terminales.
Aunque esto no afecta directamente al modelo de seguridad de Django, plantea riesgos cuando los registros son consumidos o interpretados por otras herramientas. Para solucionar este problema, la función interna django.utils.log.log_response() ahora escapa todos los argumentos de formato posicional utilizando un codificado seguro.
may 31, 2026