In accordance with our security release policy, the Django team is issuing Django 1.11.18, Django 2.0.10, and Django 2.1.5. These release addresses the security issue detailed below. We encourage all users of Django to upgrade as soon as possible.
CVE-2019-3498: Content spoofing possibility in the default 404 page
An attacker could craft a malicious URL that could make spoofed content appear on the default page generated by the django.views.defaults.page_not_found() view.
The URL path is no longer displayed in the default 404 template and the request_path context variable is now quoted to fix the issue for custom templates that use the path.
Affected supported versions
- Django master branch
- Django 2.1
- Django 2.0
- Django 1.11
Per our supported versions policy, Django 1.10 and older are no longer supported.
Patches to resolve the issue have been applied to Django’s master branch and the 2.1, 2.0, and 1.11 release branches. The patches may be obtained from the following changesets:
The following releases have been issued:
- Django 1.11.18 (download Django 1.11.18 | 1.11.18 checksums)
- Django 2.0.10 (download Django 2.0.10 | 2.0.10 checksums)
- Django 2.1.5 (download Django 2.1.5 | 2.1.5 checksums)
The PGP key ID used for these releases is Tim Graham: 1E8ABDC773EDE252.
General notes regarding security reporting
As always, we ask that potential security issues be reported via private email to email@example.com, and not via Django’s Trac instance, Django’s GitHub repositories, or the django-developers list. Please see our security policies for further information.
This issue was publicly reported through a GitHub pull request, therefore we fixed the issue as soon as possible without the usual prenotification process.