{"id":"GHSA-gv98-g628-m9x5","summary":"Django Cross-site Scripting Vulnerability","details":"The `django.util.http.is_safe_url` function in Django before 1.4.18, 1.6.x before 1.6.10, and 1.7.x before 1.7.3 does not properly handle leading whitespaces, which allows remote attackers to conduct cross-site scripting (XSS) attacks via a crafted URL, related to redirect URLs, as demonstrated by a `\\njavascript:` URL.","aliases":["CVE-2015-0220","PYSEC-2015-5"],"modified":"2025-02-19T05:37:56.510945Z","published":"2022-05-17T03:20:49Z","database_specific":{"github_reviewed_at":"2023-08-03T21:14:30Z","nvd_published_at":"2015-01-16T16:59:00Z","cwe_ids":["CWE-79"],"severity":"MODERATE","github_reviewed":true},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2015-0220"},{"type":"WEB","url":"https://github.com/django/django/commit/4c241f1b710da6419d9dca160e80b23b82db7758"},{"type":"WEB","url":"https://github.com/django/django/commit/72e0b033662faa11bb7f516f18a132728aa0ae28"},{"type":"WEB","url":"https://github.com/django/django/commit/de67dedc771ad2edec15c1d00c083a1a084e1e89"},{"type":"PACKAGE","url":"https://github.com/django/django"},{"type":"WEB","url":"https://github.com/django/django/blob/4555a823fd57e261e1b19c778429473256c8ea08/docs/releases/1.4.18.txt#L34-L46"},{"type":"WEB","url":"https://github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2015-5.yaml"},{"type":"WEB","url":"https://web.archive.org/web/20150128111656/http://secunia.com/advisories/62285"},{"type":"WEB","url":"https://web.archive.org/web/20150523054951/http://www.mandriva.com/en/support/security/advisories/advisory/MDVSA-2015:109/?name=MDVSA-2015:109"},{"type":"WEB","url":"https://web.archive.org/web/20150523054953/http://www.mandriva.com/en/support/security/advisories/advisory/MDVSA-2015:036/?name=MDVSA-2015:036"},{"type":"WEB","url":"https://web.archive.org/web/20151104201446/http://secunia.com/advisories/62718"},{"type":"WEB","url":"https://www.djangoproject.com/weblog/2015/jan/13/security"},{"type":"WEB","url":"http://lists.fedoraproject.org/pipermail/package-announce/2015-January/148485.html"},{"type":"WEB","url":"http://lists.fedoraproject.org/pipermail/package-announce/2015-January/148608.html"},{"type":"WEB","url":"http://lists.opensuse.org/opensuse-updates/2015-04/msg00001.html"},{"type":"WEB","url":"http://lists.opensuse.org/opensuse-updates/2015-09/msg00035.html"},{"type":"WEB","url":"http://ubuntu.com/usn/usn-2469-1"}],"affected":[{"package":{"name":"django","ecosystem":"PyPI","purl":"pkg:pypi/django"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.18"}]}],"versions":["1.0.1","1.0.2","1.0.3","1.0.4","1.1","1.1.1","1.1.2","1.1.3","1.1.4","1.2","1.2.1","1.2.2","1.2.3","1.2.4","1.2.5","1.2.6","1.2.7","1.3","1.3.1","1.3.2","1.3.3","1.3.4","1.3.5","1.3.6","1.3.7","1.4","1.4.1","1.4.10","1.4.11","1.4.12","1.4.13","1.4.14","1.4.15","1.4.16","1.4.17","1.4.2","1.4.3","1.4.4","1.4.5","1.4.6","1.4.7","1.4.8","1.4.9"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/05/GHSA-gv98-g628-m9x5/GHSA-gv98-g628-m9x5.json"}},{"package":{"name":"django","ecosystem":"PyPI","purl":"pkg:pypi/django"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.6"},{"fixed":"1.6.10"}]}],"versions":["1.6","1.6.1","1.6.2","1.6.3","1.6.4","1.6.5","1.6.6","1.6.7","1.6.8","1.6.9"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/05/GHSA-gv98-g628-m9x5/GHSA-gv98-g628-m9x5.json"}},{"package":{"name":"django","ecosystem":"PyPI","purl":"pkg:pypi/django"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.7"},{"fixed":"1.7.3"}]}],"versions":["1.7","1.7.1","1.7.2"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/05/GHSA-gv98-g628-m9x5/GHSA-gv98-g628-m9x5.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"},{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N"}]}