{"id":"GHSA-vq3h-3q7v-9prw","summary":"Django Allows Open Redirects","details":"The `django.util.http.is_safe_url` function in Django 1.4 before 1.4.13, 1.5 before 1.5.8, 1.6 before 1.6.5, and 1.7 before 1.7b4 does not properly validate URLs, which allows remote attackers to conduct open redirect attacks via a malformed URL, as demonstrated by \"http:\\\\\\djangoproject.com.\"","aliases":["CVE-2014-3730","PYSEC-2014-20"],"modified":"2025-02-19T05:28:46.333993Z","published":"2022-05-14T02:09:43Z","database_specific":{"cwe_ids":["CWE-20"],"severity":"HIGH","github_reviewed":true,"github_reviewed_at":"2023-08-15T22:09:31Z","nvd_published_at":"2014-05-16T15:55:00Z"},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2014-3730"},{"type":"WEB","url":"https://github.com/django/django/commit/601107524523bca02376a0ddc1a06c6fdb8f22f3"},{"type":"WEB","url":"https://github.com/django/django/commit/7feb54bbae3f637ab3c4dd4831d4385964f574df"},{"type":"WEB","url":"https://github.com/django/django/commit/ad32c218850ad40972dcef57beb460f8c979dd6d"},{"type":"PACKAGE","url":"https://github.com/django/django"},{"type":"WEB","url":"https://github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2014-20.yaml"},{"type":"WEB","url":"https://web.archive.org/web/20200228171223/http://www.securityfocus.com/bid/67410"},{"type":"WEB","url":"https://www.djangoproject.com/weblog/2014/may/14/security-releases-issued"},{"type":"WEB","url":"http://lists.opensuse.org/opensuse-updates/2014-09/msg00023.html"},{"type":"WEB","url":"http://secunia.com/advisories/61281"},{"type":"WEB","url":"http://ubuntu.com/usn/usn-2212-1"},{"type":"WEB","url":"http://www.debian.org/security/2014/dsa-2934"},{"type":"WEB","url":"http://www.openwall.com/lists/oss-security/2014/05/14/10"},{"type":"WEB","url":"http://www.openwall.com/lists/oss-security/2014/05/15/3"}],"affected":[{"package":{"name":"django","ecosystem":"PyPI","purl":"pkg:pypi/django"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.4"},{"fixed":"1.4.13"}]}],"versions":["1.4","1.4.1","1.4.10","1.4.11","1.4.12","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-vq3h-3q7v-9prw/GHSA-vq3h-3q7v-9prw.json"}},{"package":{"name":"django","ecosystem":"PyPI","purl":"pkg:pypi/django"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.5"},{"fixed":"1.5.8"}]}],"versions":["1.5","1.5.1","1.5.2","1.5.3","1.5.4","1.5.5","1.5.6","1.5.7"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/05/GHSA-vq3h-3q7v-9prw/GHSA-vq3h-3q7v-9prw.json"}},{"package":{"name":"django","ecosystem":"PyPI","purl":"pkg:pypi/django"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.6"},{"fixed":"1.6.5"}]}],"versions":["1.6","1.6.1","1.6.2","1.6.3","1.6.4"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/05/GHSA-vq3h-3q7v-9prw/GHSA-vq3h-3q7v-9prw.json"}},{"package":{"name":"django","ecosystem":"PyPI","purl":"pkg:pypi/django"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.7a1"},{"fixed":"1.7b4"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/05/GHSA-vq3h-3q7v-9prw/GHSA-vq3h-3q7v-9prw.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"},{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:P"}]}