ArchLinux: 201803-6: python2-django: denial of service
Summary
- CVE-2018-7536 (denial of service)
The django.utils.html.urlize() function was extremely slow to evaluate
certain inputs due to catastrophic backtracking vulnerabilities in two
regular expressions. The urlize() function is used to implement the
urlize and urlizetrunc template filters, which were thus vulnerable.
The problematic regular expressions are replaced with parsing logic
that behaves similarly.
- CVE-2018-7537 (denial of service)
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 truncatechars_html and truncatewords_html template
filters, which were thus vulnerable.
Resolution
Upgrade to 1.11.11-1.
# pacman -Syu "python2-django>=1.11.11-1"
The problems have been fixed upstream in version 1.11.11.
References
https://docs.djangoproject.com/en/dev/releases/1.11.11/ https://github.com/django/django/commit/8618271caa0b09daba39ff3b46567d33ae1e1d3a https://github.com/django/django/commit/97b7dd59bb8d6163239061e2022153c3415d146d https://security.archlinux.org/CVE-2018-7536 https://security.archlinux.org/CVE-2018-7537
Workaround
None.