{"id":"CVE-2013-6044","aliases":["DEBIAN-CVE-2013-6044","DSA-2740-1","EUVD-2013-0009","GHSA-9cwg-mhxf-hh59","PYSEC-2013-21","RHSA-2013:1521"],"status":"published","title":"Django cross-site scripting (XSS) vulnerability via is_safe_url function","description":"The is_safe_url function in utils/http.py in Django 1.4.x before 1.4.6, 1.5.x before 1.5.2, and 1.6 before beta 2 treats a URL's scheme as safe even if it is not HTTP or HTTPS, which might introduce cross-site scripting (XSS) or other vulnerabilities into Django applications that use this function, as demonstrated by \"the login view in django.contrib.auth.views\" and the javascript: scheme.","severity":{"version":"2.0","score":4.3,"vector":"AV:N/AC:M/Au:N/C:N/I:P/A:N","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.02307,"percentile":0.83473,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-79"],"published":"2013-08-23T00:00:00Z","modified":"2026-09-01T20:03:18Z","fixes":[{"ecosystem":"PyPI","package":"django","fixed_in":["1.4.6","1.5.2"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"python-django","fixed_in":["1.5.2-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"python-django","fixed_in":["1.5.2-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"python-django","fixed_in":["1.5.2-1"],"sources":["osv"]},{"ecosystem":"Debian:6.0","package":"python-django","fixed_in":["1.2.3-3+squeeze6"],"sources":["osv"]},{"ecosystem":"Debian:7","package":"python-django","fixed_in":["1.4.5-1+deb7u1"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.4"},{"fixed":"1.4.6"}]}]},{"source":"ghsa","ecosystem":"PyPI","package":"django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.5"},{"fixed":"1.5.2"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"python-django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.5.2-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"python-django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.5.2-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"python-django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.5.2-1"}]}]},{"source":"osv","ecosystem":"Debian:6.0","package":"python-django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.2.3-3+squeeze6"}]}],"versions":["1.2.3-3","1.2.3-3+squeeze1","1.2.3-3+squeeze2","1.2.3-3+squeeze3","1.2.3-3+squeeze5"]},{"source":"osv","ecosystem":"Debian:7","package":"python-django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.5-1+deb7u1"}]}],"versions":["1.4.5-1"]},{"source":"osv","ecosystem":"PyPI","package":"django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.4"},{"fixed":"1.4.6"}]}],"versions":["1.4","1.4.1","1.4.2","1.4.3","1.4.4","1.4.5"]},{"source":"osv","ecosystem":"PyPI","package":"django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.5"},{"fixed":"1.5.2"}]}],"versions":["1.5","1.5.1"]},{"source":"osv","ecosystem":"PyPI","package":"django","ranges":[{"type":"GIT","events":[{"introduced":"0"},{"fixed":"ec67af0bd609c412b76eaa4cc89968a2a8e5ad6a"},{"fixed":"ae3535169af804352517b7fea94a42a1c9c4b762"},{"fixed":"1a274ccd6bc1afbdac80344c9b6e5810c1162b5f"}]},{"type":"ECOSYSTEM","events":[{"introduced":"1.4"},{"fixed":"1.4.6"},{"introduced":"1.5"},{"fixed":"1.5.2"}]}],"versions":["1.4","1.4.1","1.4.2","1.4.3","1.4.4","1.4.5","1.5","1.5.1","1.5c2","1.5c1","1.5b2","1.5b1","1.5a1","1.3","1.2.1","1.2","1.1","1.0"]},{"source":"osv","ecosystem":"Red Hat:openstack:3::el6","package":"Django14","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el6ost"}]}],"bundled":2},{"source":"osv","ecosystem":"Red Hat:openstack:3::el6","package":"Django14-doc","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el6ost"}]}],"bundled":2}],"products":[{"vendor":"djangoproject","product":"django"}],"references":[{"url":"http://www.securityfocus.com/bid/61777","tags":["vdb-entry","x_refsource_BID","x_transferred","web"]},{"url":"http://www.securitytracker.com/id/1028915","tags":["vdb-entry","x_refsource_SECTRACK","x_transferred","web"]},{"url":"http://lists.opensuse.org/opensuse-updates/2013-10/msg00015.html","tags":["vendor-advisory","x_refsource_SUSE","x_transferred","web"]},{"url":"https://github.com/django/django/commit/ec67af0bd609c412b76eaa4cc89968a2a8e5ad6a","tags":["x_refsource_CONFIRM","x_transferred","fix","web"]},{"url":"http://secunia.com/advisories/54476","tags":["third-party-advisory","x_refsource_SECUNIA","x_transferred","Vendor Advisory","advisory"]},{"url":"http://rhn.redhat.com/errata/RHSA-2013-1521.html","tags":["vendor-advisory","x_refsource_REDHAT","x_transferred","advisory","web"]},{"url":"http://seclists.org/oss-sec/2013/q3/369","tags":["mailing-list","x_refsource_MLIST","x_transferred","web"]},{"url":"https://www.djangoproject.com/weblog/2013/aug/13/security-releases-issued","tags":["x_refsource_CONFIRM","x_transferred","Patch","Vendor Advisory","advisory","fix","web","article"]},{"url":"https://exchange.xforce.ibmcloud.com/vulnerabilities/86437","tags":["vdb-entry","x_refsource_XF","x_transferred","web"]},{"url":"https://github.com/django/django/commit/ae3535169af804352517b7fea94a42a1c9c4b762","tags":["x_refsource_CONFIRM","x_transferred","fix","web"]},{"url":"https://github.com/django/django/commit/1a274ccd6bc1afbdac80344c9b6e5810c1162b5f","tags":["x_refsource_CONFIRM","x_transferred","fix","web"]},{"url":"http://seclists.org/oss-sec/2013/q3/411","tags":["mailing-list","x_refsource_MLIST","x_transferred","web"]},{"url":"http://www.debian.org/security/2013/dsa-2740","tags":["vendor-advisory","x_refsource_DEBIAN","x_transferred","advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2013-6044","tags":["advisory"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2013-21.yaml","tags":["web"]},{"url":"https://github.com/advisories/GHSA-9cwg-mhxf-hh59","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2013-6044","tags":["advisory"]},{"url":"https://github.com/django/django","tags":["package"]},{"url":"https://access.redhat.com/errata/RHSA-2013:1521","tags":["advisory"]},{"url":"https://access.redhat.com/security/updates/classification/#moderate","tags":["article"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1004969","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=1016394","tags":["report"]},{"url":"https://security.access.redhat.com/data/csaf/v2/advisories/2013/rhsa-2013_1521.json","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2013-4315","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2013-4315","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2013-4315","tags":["advisory"]},{"url":"https://www.djangoproject.com/weblog/2013/sep/10/security-releases-issued/","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2013-6044","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2013-6044","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2013-6044","description":"The is_safe_url function in utils/http.py in Django 1.4.x before 1.4.6, 1.5.x before 1.5.2, and 1.6 before beta 2 treats a URL's scheme as safe even if it is not HTTP or HTTPS, which might introduce cross-site scripting (XSS) or other vulnerabilities into Django applications that use this function, as demonstrated by \"the login view in django.contrib.auth.views\" and the javascript: scheme.","status":"published","published":"2013-10-04T17:00:00Z","modified":"2024-08-06T17:29:43.07Z","updated_at":"2026-11-02T14:34:57.195423Z"}],"euvd":[{"id":"EUVD-2013-0009","description":"The is_safe_url function in utils/http.py in Django 1.4.x before 1.4.6, 1.5.x before 1.5.2, and 1.6 before beta 2 treats a URL's scheme as safe even if it is not HTTP or HTTPS, which might introduce cross-site scripting (XSS) or other vulnerabilities into Django applications that use this function, as demonstrated by \"the login view in django.contrib.auth.views\" and the javascript: scheme.","status":"published","published":"2013-10-04T17:00:00Z","modified":"2024-08-06T17:29:43Z","updated_at":"2026-11-03T01:56:27.166265Z"}],"ghsa":[{"id":"GHSA-9cwg-mhxf-hh59","title":"Django cross-site scripting (XSS) vulnerability via is_safe_url function ","description":"The is_safe_url function in utils/http.py in Django 1.4.x before 1.4.6, 1.5.x before 1.5.2, and 1.6 before beta 2 treats a URL's scheme as safe even if it is not HTTP or HTTPS, which might introduce cross-site scripting (XSS) or other vulnerabilities into Django applications that use this function, as demonstrated by \"the login view in django.contrib.auth.views\" and the javascript: scheme.","status":"published","published":"2022-05-17T00:23:23Z","modified":"2024-09-18T16:09:44Z","cvss":[{"version":"4.0","score":5.3,"vector":"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","level":"medium"},{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T14:38:03.800952Z"}],"nvd":[{"id":"CVE-2013-6044","description":"The is_safe_url function in utils/http.py in Django 1.4.x before 1.4.6, 1.5.x before 1.5.2, and 1.6 before beta 2 treats a URL's scheme as safe even if it is not HTTP or HTTPS, which might introduce cross-site scripting (XSS) or other vulnerabilities into Django applications that use this function, as demonstrated by \"the login view in django.contrib.auth.views\" and the javascript: scheme.","status":"published","published":"2013-10-04T17:55:10.04Z","modified":"2026-06-16T23:59:56.67Z","cvss":[{"version":"2.0","score":4.3,"vector":"AV:N/AC:M/Au:N/C:N/I:P/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T14:02:38.715467Z"}],"osv":[{"id":"GHSA-9cwg-mhxf-hh59","title":"Django cross-site scripting (XSS) vulnerability via is_safe_url function ","description":"The is_safe_url function in utils/http.py in Django 1.4.x before 1.4.6, 1.5.x before 1.5.2, and 1.6 before beta 2 treats a URL's scheme as safe even if it is not HTTP or HTTPS, which might introduce cross-site scripting (XSS) or other vulnerabilities into Django applications that use this function, as demonstrated by \"the login view in django.contrib.auth.views\" and the javascript: scheme.","status":"published","published":"2022-05-17T00:23:23Z","modified":"2025-02-19T05:40:05.352173Z","cvss":[{"version":"3.1","score":6.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"},{"version":"4.0","score":5.3,"vector":"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","level":"medium"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T15:46:43.524801Z"},{"id":"CVE-2013-6044","description":"The is_safe_url function in utils/http.py in Django 1.4.x before 1.4.6, 1.5.x before 1.5.2, and 1.6 before beta 2 treats a URL's scheme as safe even if it is not HTTP or HTTPS, which might introduce cross-site scripting (XSS) or other vulnerabilities into Django applications that use this function, as demonstrated by \"the login view in django.contrib.auth.views\" and the javascript: scheme.","status":"published","published":"2013-10-04T17:55:10Z","modified":"2026-04-10T03:43:06.287723Z","updated_at":"2026-11-02T15:43:59.361892Z"},{"id":"DEBIAN-CVE-2013-6044","description":"The is_safe_url function in utils/http.py in Django 1.4.x before 1.4.6, 1.5.x before 1.5.2, and 1.6 before beta 2 treats a URL's scheme as safe even if it is not HTTP or HTTPS, which might introduce cross-site scripting (XSS) or other vulnerabilities into Django applications that use this function, as demonstrated by \"the login view in django.contrib.auth.views\" and the javascript: scheme.","status":"published","published":"2013-10-04T17:55:10.04Z","modified":"2026-09-01T20:03:18.646066484Z","updated_at":"2026-11-02T15:45:25.819707Z"},{"id":"DSA-2740-1","title":"python-django - cross-site scripting vulnerability","status":"published","published":"2013-08-23T00:00:00Z","modified":"2026-03-09T01:23:37.617766Z","updated_at":"2026-11-02T15:46:15.489951Z"},{"id":"PYSEC-2013-21","description":"The is_safe_url function in utils/http.py in Django 1.4.x before 1.4.6, 1.5.x before 1.5.2, and 1.6 before beta 2 treats a URL's scheme as safe even if it is not HTTP or HTTPS, which might introduce cross-site scripting (XSS) or other vulnerabilities into Django applications that use this function, as demonstrated by \"the login view in django.contrib.auth.views\" and the javascript: scheme.","status":"published","published":"2013-10-04T17:55:00Z","modified":"2026-06-10T17:00:53.791897022Z","updated_at":"2026-11-02T15:52:51.645172Z"},{"id":"RHSA-2013:1521","title":"Red Hat Security Advisory: python-django security update","status":"published","published":"2024-09-15T21:11:27Z","modified":"2026-01-14T11:00:07.452506Z","updated_at":"2026-11-02T15:53:01.993625Z"}]}}
