Description
The utils.http.is_safe_url function in Django before 1.8.10 and 1.9.x before 1.9.3 allows remote attackers to redirect users to arbitrary web sites and conduct phishing attacks or possibly conduct cross-site scripting (XSS) attacks via a URL containing basic authentication, as demonstrated by http://mysite.example.com\@attacker.com.
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | python-django | 1.9.4-1 | — |
| Debian 13 | python-django | 1.9.4-1 | — |
| Debian 12 | python-django | 1.9.4-1 | — |
| Debian 8 | python-django | 1.7.7-1+deb8u4 | DSA-3544-1 |
| Debian 7 | python-django | 1.4.5-1+deb7u16 | DSA-3544-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 14.04 LTS | python-django | 1.6.1-2ubuntu0.12 | USN-2915-1 |
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Red Hat Openstack-optools 7 | python-django +1 | 1.6.11-5.el7ost | RHSA-2016:0503 |
| Red Hat OpenStack 7 | python-django +2 | 1.8.11-1.el7ost | RHSA-2016:0504 |
| Red Hat OpenStack 6 | python-django +2 | 1.6.11-5.el7ost | RHSA-2016:0505 |
Show 1 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Red Hat OpenStack 5 | python-django +2 | 1.6.11-5.el6ost | RHSA-2016:0506, RHSA-2016:0502 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SUSE OpenStack Cloud 6 | python-Django | 1.8.19-3.6.1 | SUSE-SU-2018:1102-1 |
| SUSE Enterprise Storage 5 | python-Django | 1.6.11-6.5.1 | SUSE-SU-2018:1830-1 |
| SUSE Enterprise Storage 4 | python-Django | 1.6.11-5.5.1 | SUSE-SU-2018:1828-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | python-Django | 1.10.4-1.1 | openSUSE-SU-2024:10361-1 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | django | < 1.8.10 | 1.8.10 | GHSA-pw27-w7w4-9qc7 |
| PyPI | django | >= 1.9a1, < 1.9.3 | 1.9.3 | GHSA-pw27-w7w4-9qc7 |
| PyPI | django | < 1.8.10 · >= 1.9, < 1.9.3 | 1.8.10, 1.9.3 | PYSEC-2016-15 |
Advisories 11
- RHSA-2016:0506 Red Hat Security Advisory: python-django security update Red Hat Security Advisories (RHSA) · Jun 29, 2026
- RHSA-2016:0504 Red Hat Security Advisory: python-django security update Red Hat Security Advisories (RHSA) · Jun 29, 2026
- RHSA-2016:0505 Red Hat Security Advisory: python-django security update Red Hat Security Advisories (RHSA) · Jun 29, 2026
- RHSA-2016:0503 Red Hat Security Advisory: python-django security update Red Hat Security Advisories (RHSA) · Jun 29, 2026
- RHSA-2016:0502 Red Hat Security Advisory: python-django security update Red Hat Security Advisories (RHSA) · Jun 29, 2026
- DSA-3544-1 python-django - security update Debian Security (DSA / DLA) · Mar 9, 2026
- USN-2915-1 python-django vulnerabilities Ubuntu Security Notices (USN) · Feb 10, 2026
- SUSE-SU-2018:1102-1 Security update for python-Django SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2018:1830-1 Security update for python-Django SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2024:10361-1 python3-Django-1.10.4-1.1 on GA media SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2018:1828-1 Security update for python-Django SUSE / openSUSE Security Updates · Feb 4, 2026
References
- RHSA-2016:0506 vendor-advisory
- 1035152 vdb-entry
- 83879 vdb-entry
- RHSA-2016:0504 vendor-advisory
- DSA-3544 vendor-advisory
- RHSA-2016:0502 vendor-advisory
- USN-2915-3 vendor-advisory
- http://www.oracle.com/technetwork/topics/security/bulletinapr2016-2952098.html
- USN-2915-2 vendor-advisory
- RHSA-2016:0505 vendor-advisory
- USN-2915-1 vendor-advisory
- https://www.djangoproject.com/weblog/2016/mar/01/security-releases/
- https://github.com/django/django/commit/c5544d289233f501917e25970c03ed444abbd4f0