Marzo 6, 2018
Django 1.8.19 resuelve dos problemas de seguridad en la versión 1.8.18.
urlize y urlizetrunc¶La función django.utils.html.urlize() era extremadamente lenta para evaluar ciertos inputs debido a una vulnerabilidad de backtracking catastrófico en una expresión regular. La función urlize() se utiliza para implementar los filtros de plantilla urlize y urlizetrunc, que estaban así vulnerables.
La expresión regular problemática se reemplaza con lógica de parsing que comporta de manera similar.
truncatechars_html y truncatewords_html.¶Si los métodos chars() y words() de django.utils.text.Truncator se pasaban el argumento html=True, eran extremadamente lentos para evaluar ciertos inputs debido a una vulnerabilidad de backtracking catastrófico en una expresión regular. Los métodos chars() y words() se utilizan para implementar los filtros de plantilla truncatechars_html y truncatewords_html, que estaban así vulnerables.
El problema de backtracking en la expresión regular se ha resuelto.
may 31, 2026