An issue was discovered in Django 1.11.x before 1.11.23, 2.1.x before 2.1.11, and 2.2.x before 2.2.4. If django.utils.text.Truncator's chars() and words() methods were passed the html=True argument, they were extremely slow to evaluate certain inputs due to a catastrophic backtracking vulnerability in a regular expression. The chars() and words() methods are used to implement the truncatecharshtml and truncatewordshtml template filters, which were thus vulnerable.
{
"unresolved_ranges": [
{
"source": "CPE_FIELD",
"extracted_events": [
{
"last_affected": "15.1"
}
],
"cpe": "cpe:2.3:o:opensuse:leap:15.1:*:*:*:*:*:*:*"
}
]
}{
"source": "CPE_FIELD",
"extracted_events": [
{
"introduced": "1.11"
},
{
"fixed": "1.11.23"
},
{
"introduced": "2.1"
},
{
"fixed": "2.1.11"
},
{
"introduced": "2.2"
},
{
"fixed": "2.2.4"
}
],
"cpe": "cpe:2.3:a:djangoproject:django:*:*:*:*:*:*:*:*"
}