Python/django/1.11.5
A high-level Python web framework that encourages rapid development and clean, pragmatic design.
https://pypi.org/project/django
BSD
14 Security Vulnerabilities
Django Denial-of-service possibility in truncatechars_html and truncatewords_html template filters
- https://nvd.nist.gov/vuln/detail/CVE-2018-7537
- https://github.com/advisories/GHSA-2f9x-5v75-3qv4
- https://access.redhat.com/errata/RHSA-2018:2927
- https://access.redhat.com/errata/RHSA-2019:0265
- https://lists.debian.org/debian-lts-announce/2018/03/msg00006.html
- https://usn.ubuntu.com/3591-1/
- https://www.debian.org/security/2018/dsa-4161
- https://www.djangoproject.com/weblog/2018/mar/06/security-releases/
- http://www.securityfocus.com/bid/103357
- https://github.com/django/django/commit/94c5da1d17a6b0d378866c66b605102c19f7988c
- https://github.com/django/django/commit/a91436360b79a6ff995c3e5018bcc666dfaf1539
- https://github.com/django/django/commit/d17974a287a6ea2e361daff88fcc004cbd6835fa
- https://usn.ubuntu.com/3591-1
- https://www.djangoproject.com/weblog/2018/mar/06/security-releases
- https://github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2018-6.yaml
An issue was discovered in Django 2.0 before 2.0.3, 1.11 before 1.11.11, and 1.8 before 1.8.19. If django.utils.text.Truncator's chars() and words() methods were passed the html=True argument, they were extremely slow to evaluate certain inputs due to a catastrophic backtracking vulnerability in a regular expression. The chars() and words() methods are used to implement the truncatecharshtml and truncatewordshtml template filters, which were thus vulnerable.
Improper Input Validation in Django
- https://nvd.nist.gov/vuln/detail/CVE-2019-3498
- https://github.com/advisories/GHSA-337x-4q8g-prc5
- https://docs.djangoproject.com/en/dev/releases/security/
- https://groups.google.com/forum/#!topic/django-announce/VYU7xQQTEPQ
- https://lists.debian.org/debian-lts-announce/2019/01/msg00005.html
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/HVXDOVCXLD74SHR2BENGCE2OOYYYWJHZ/
- https://usn.ubuntu.com/3851-1/
- https://www.debian.org/security/2019/dsa-4363
- https://www.djangoproject.com/weblog/2019/jan/04/security-releases/
- http://www.securityfocus.com/bid/106453
- https://web.archive.org/web/20200227094237/http://www.securityfocus.com/bid/106453
In Django 1.11.x before 1.11.18, 2.0.x before 2.0.10, and 2.1.x before 2.1.5, an Improper Neutralization of Special Elements in Output Used by a Downstream Component issue exists in django.views.defaults.page_not_found()
, leading to content spoofing (in a 404 error page) if a user fails to recognize that a crafted URL has malicious content.
SQL injection in Django
- https://nvd.nist.gov/vuln/detail/CVE-2020-9402
- https://github.com/advisories/GHSA-3gh2-xw74-jmcw
- https://docs.djangoproject.com/en/3.0/releases/security/
- https://groups.google.com/forum/#!topic/django-announce/fLUh_pOaKrY
- https://usn.ubuntu.com/4296-1/
- https://www.djangoproject.com/weblog/2020/mar/04/security-releases/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/4A2AP4T7RKPBCLTI2NNQG3T6MINDUUMZ/
- https://security.gentoo.org/glsa/202004-17
- https://security.netapp.com/advisory/ntap-20200327-0004/
- https://www.debian.org/security/2020/dsa-4705
- https://lists.debian.org/debian-lts-announce/2022/05/msg00035.html
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UZMN2NKAGTFE3YKMNM2JVJG7R2W7LLHY/
- https://github.com/django/django/commit/6695d29b1c1ce979725816295a26ecc64ae0e927
- https://docs.djangoproject.com/en/3.0/releases/security
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/4A2AP4T7RKPBCLTI2NNQG3T6MINDUUMZ
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UZMN2NKAGTFE3YKMNM2JVJG7R2W7LLHY
- https://security.netapp.com/advisory/ntap-20200327-0004
- https://usn.ubuntu.com/4296-1
- https://www.djangoproject.com/weblog/2020/mar/04/security-releases
Django 1.11 before 1.11.29, 2.2 before 2.2.11, and 3.0 before 3.0.4 allows SQL Injection if untrusted data is used as a tolerance parameter in GIS functions and aggregates on Oracle. By passing a suitably crafted tolerance to GIS functions and aggregates on Oracle, it was possible to break escaping and inject malicious SQL.
Path Traversal in Django
- https://nvd.nist.gov/vuln/detail/CVE-2021-33203
- https://github.com/advisories/GHSA-68w8-qjq3-2gfm
- https://docs.djangoproject.com/en/3.2/releases/security/
- https://groups.google.com/forum/#!forum/django-announce
- https://www.djangoproject.com/weblog/2021/jun/02/security-releases/
- https://security.netapp.com/advisory/ntap-20210727-0004/
- https://github.com/django/django/commit/053cc9534d174dc89daba36724ed2dcb36755b90
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/B4SQG2EAF4WCI2SLRL6XRDJ3RPK3ZRDV/
- https://github.com/django/django/commit/20c67a0693c4ede2b09af02574823485e82e4c8f
- https://github.com/django/django/commit/dfaba12cda060b8b292ae1d271b44bf810b1c5b9
- https://docs.djangoproject.com/en/3.2/releases/security
- https://github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2021-98.yaml
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/B4SQG2EAF4WCI2SLRL6XRDJ3RPK3ZRDV
- https://security.netapp.com/advisory/ntap-20210727-0004
- https://www.djangoproject.com/weblog/2021/jun/02/security-releases
Django before 2.2.24, 3.x before 3.1.12, and 3.2.x before 3.2.4 has a potential directory traversal via django.contrib.admindocs. Staff members could use the TemplateDetailView view to check the existence of arbitrary files. Additionally, if (and only if) the default admindocs templates have been customized by application developers to also show file contents, then not only the existence but also the file contents would have been exposed. In other words, there is directory traversal outside of the template root directories.
Django Incorrect HTTP detection with reverse-proxy connecting via HTTPS
- https://nvd.nist.gov/vuln/detail/CVE-2019-12781
- https://github.com/advisories/GHSA-6c7v-2f49-8h26
- http://www.openwall.com/lists/oss-security/2019/07/01/3
- https://docs.djangoproject.com/en/dev/releases/security/
- https://groups.google.com/forum/#!topic/django-announce/Is4kLY9ZcZQ
- https://usn.ubuntu.com/4043-1/
- https://www.djangoproject.com/weblog/2019/jul/01/security-releases/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5VXXWIOQGXOB7JCGJ3CVUW673LDHKEYL/
- https://seclists.org/bugtraq/2019/Jul/10
- https://security.netapp.com/advisory/ntap-20190705-0002/
- https://www.debian.org/security/2019/dsa-4476
- http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00006.html
- http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00025.html
- http://www.securityfocus.com/bid/109018
An issue was discovered in Django 1.11 before 1.11.22, 2.1 before 2.1.10, and 2.2 before 2.2.3. An HTTP request is not redirected to HTTPS when the SECUREPROXYSSLHEADER and SECURESSL_REDIRECT settings are used, and the proxy connects to Django via HTTPS. In other words, django.http.HttpRequest.scheme has incorrect behavior when a client uses HTTP.
SQL Injection in Django
- https://nvd.nist.gov/vuln/detail/CVE-2019-14234
- https://github.com/advisories/GHSA-6r97-cj55-9hrq
- https://docs.djangoproject.com/en/dev/releases/security/
- https://groups.google.com/forum/#!topic/django-announce/jIoju2-KLDs
- https://www.djangoproject.com/weblog/2019/aug/01/security-releases/
- https://github.com/django/django/commit/4f5b58f5cd3c57fee9972ab074f8dc6895d8f387
- https://github.com/django/django/commit/ed682a24fca774818542757651bfba576c3fc3ef
- https://github.com/django/django/commit/f74b3ae3628c26e1b4f8db3d13a91d52a833a975
An issue was discovered in Django 1.11.x before 1.11.23, 2.1.x before 2.1.11, and 2.2.x before 2.2.4. Due to an error in shallow key transformation, key and index lookups for django.contrib.postgres.fields.JSONField, and key lookups for django.contrib.postgres.fields.HStoreField, were subject to SQL injection. This could, for example, be exploited via crafted use of OR 1=1
in a key or index name to return all records, using a suitably crafted dictionary, with dictionary expansion, as the **kwargs passed to the QuerySet.filter() function.
Django Cross-site Scripting in AdminURLFieldWidget
- https://nvd.nist.gov/vuln/detail/CVE-2019-12308
- https://github.com/advisories/GHSA-7rp2-fm2h-wchj
- http://www.openwall.com/lists/oss-security/2019/06/03/2
- https://docs.djangoproject.com/en/dev/releases/1.11.21/
- https://docs.djangoproject.com/en/dev/releases/2.1.9/
- https://docs.djangoproject.com/en/dev/releases/2.2.2/
- https://docs.djangoproject.com/en/dev/releases/security/
- https://groups.google.com/forum/#!topic/django-announce/GEbHU7YoVz8
- https://www.djangoproject.com/weblog/2019/jun/03/security-releases/
- https://github.com/django/django/commit/09186a13d975de6d049f8b3e05484f66b01ece62
- https://github.com/django/django/commit/afddabf8428ddc89a332f7a78d0d21eaf2b5a673
- https://github.com/django/django/commit/c238701859a52d584f349cce15d56c8e8137c52b
- https://docs.djangoproject.com/en/dev/releases/1.11.21
- https://docs.djangoproject.com/en/dev/releases/2.1.9
- https://docs.djangoproject.com/en/dev/releases/2.2.2
- https://docs.djangoproject.com/en/dev/releases/security
- https://www.djangoproject.com/weblog/2019/jun/03/security-releases
An issue was discovered in Django 1.11 before 1.11.21, 2.1 before 2.1.9, and 2.2 before 2.2.2. The clickable Current URL value displayed by the AdminURLFieldWidget displays the provided value without validating it as a safe URL. Thus, an unvalidated value stored in the database, or a value provided as a URL query parameter payload, could result in an clickable JavaScript link.
Django Denial-of-service in django.utils.text.Truncator
- https://nvd.nist.gov/vuln/detail/CVE-2019-14232
- https://github.com/advisories/GHSA-c4qh-4vgv-qc6g
- https://docs.djangoproject.com/en/dev/releases/security/
- https://groups.google.com/forum/#!topic/django-announce/jIoju2-KLDs
- https://www.djangoproject.com/weblog/2019/aug/01/security-releases/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/STVX7X7IDWAH5SKE6MBMY3TEI6ZODBTK/
- https://seclists.org/bugtraq/2019/Aug/15
- https://security.gentoo.org/glsa/202004-17
- https://security.netapp.com/advisory/ntap-20190828-0002/
- https://www.debian.org/security/2019/dsa-4498
- http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00006.html
- http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00025.html
- https://github.com/pypa/advisory-db/tree/main/vulns/django/PYSEC-2019-11.yaml
- https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/message/3LGJSPCN3VEG2UJPYCUB6TU75JTIV2TQ/
- https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/message/5XTP44JEOSNXRVW4JDZXA5XGMBDZLWSW/
- https://www.openwall.com/lists/oss-security/2023/10/04/6
- http://www.openwall.com/lists/oss-security/2023/10/04/6
- https://docs.djangoproject.com/en/dev/releases/security
- https://groups.google.com/forum/#%21topic/django-announce/jIoju2-KLDs
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/STVX7X7IDWAH5SKE6MBMY3TEI6ZODBTK
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/STVX7X7IDWAH5SKE6MBMY3TEI6ZODBTK
- https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/message/3LGJSPCN3VEG2UJPYCUB6TU75JTIV2TQ
- https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/message/5XTP44JEOSNXRVW4JDZXA5XGMBDZLWSW
- https://security.netapp.com/advisory/ntap-20190828-0002
- https://www.djangoproject.com/weblog/2019/aug/01/security-releases
- http://www.openwall.com/lists/oss-security/2024/03/04/1
An issue was discovered in Django 1.11.x before 1.11.23, 2.1.x before 2.1.11, and 2.2.x before 2.2.4. If django.utils.text.Truncator
's chars()
and words()
methods were passed the html=True
argument, they were extremely slow to evaluate certain inputs due to a catastrophic backtracking vulnerability in a regular expression. The chars()
and words()
methods are used to implement the truncatechars_htm
l and truncatewords_html
template filters, which were thus vulnerable.
Django Denial-of-service in strip_tags()
- https://nvd.nist.gov/vuln/detail/CVE-2019-14233
- https://github.com/advisories/GHSA-h5jv-4p7w-64jg
- https://docs.djangoproject.com/en/dev/releases/security/
- https://groups.google.com/forum/#!topic/django-announce/jIoju2-KLDs
- https://www.djangoproject.com/weblog/2019/aug/01/security-releases/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/STVX7X7IDWAH5SKE6MBMY3TEI6ZODBTK/
- https://seclists.org/bugtraq/2019/Aug/15
- https://security.gentoo.org/glsa/202004-17
- https://security.netapp.com/advisory/ntap-20190828-0002/
- https://www.debian.org/security/2019/dsa-4498
- http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00006.html
- http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00025.html
An issue was discovered in Django 1.11.x before 1.11.23, 2.1.x before 2.1.11, and 2.2.x before 2.2.4. Due to the behaviour of the underlying HTMLParser, django.utils.html.strip_tags would be extremely slow to evaluate certain inputs containing large sequences of nested incomplete HTML entities.
SQL injection in Django
- https://nvd.nist.gov/vuln/detail/CVE-2020-7471
- https://github.com/advisories/GHSA-hmr4-m2h5-33qx
- https://github.com/django/django/commit/eb31d845323618d688ad429479c6dda973056136
- https://docs.djangoproject.com/en/3.0/releases/security/
- https://groups.google.com/forum/#!topic/django-announce/X45S86X5bZI
- https://www.djangoproject.com/weblog/2020/feb/03/security-releases/
- https://www.openwall.com/lists/oss-security/2020/02/03/1
- http://www.openwall.com/lists/oss-security/2020/02/03/1
- https://usn.ubuntu.com/4264-1/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/4A2AP4T7RKPBCLTI2NNQG3T6MINDUUMZ/
- https://seclists.org/bugtraq/2020/Feb/30
- https://security.gentoo.org/glsa/202004-17
- https://security.netapp.com/advisory/ntap-20200221-0006/
- https://www.debian.org/security/2020/dsa-4629
- https://github.com/django/django/commit/001b0634cd309e372edb6d7d95d083d02b8e37bd
- https://github.com/django/django/commit/505826b469b16ab36693360da9e11fd13213421b
- https://github.com/django/django/commit/c67a368c16e4680b324b4f385398d638db4d8147
- https://www.djangoproject.com/weblog/2020/feb/03/security-releases
- https://usn.ubuntu.com/4264-1
- https://security.netapp.com/advisory/ntap-20200221-0006
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/4A2AP4T7RKPBCLTI2NNQG3T6MINDUUMZ
- https://github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2020-35.yaml
- https://docs.djangoproject.com/en/3.0/releases/security
Django 1.11 before 1.11.28, 2.2 before 2.2.10, and 3.0 before 3.0.3 allows SQL Injection if untrusted data is used as a StringAgg delimiter (e.g., in Django applications that offer downloads of data as a series of rows with a user-specified column delimiter). By passing a suitably crafted delimiter to a contrib.postgres.aggregates.StringAgg instance, it was possible to break escaping and inject malicious SQL.
Django Denial-of-service possibility in urlize and urlizetrunc template filters
- https://nvd.nist.gov/vuln/detail/CVE-2018-7536
- https://github.com/advisories/GHSA-r28v-mw67-m5p9
- https://access.redhat.com/errata/RHSA-2018:2927
- https://access.redhat.com/errata/RHSA-2019:0051
- https://access.redhat.com/errata/RHSA-2019:0082
- https://access.redhat.com/errata/RHSA-2019:0265
- https://lists.debian.org/debian-lts-announce/2018/03/msg00006.html
- https://usn.ubuntu.com/3591-1/
- https://www.debian.org/security/2018/dsa-4161
- https://www.djangoproject.com/weblog/2018/mar/06/security-releases/
- http://www.securityfocus.com/bid/103361
- https://github.com/django/django/commit/1ca63a66ef3163149ad822701273e8a1844192c2
- https://github.com/django/django/commit/abf89d729f210c692a50e0ad3f75fb6bec6fae16
- https://github.com/django/django/commit/e157315da3ae7005fa0683ffc9751dbeca7306c8
An issue was discovered in Django 2.0 before 2.0.3, 1.11 before 1.11.11, and 1.8 before 1.8.19. The django.utils.html.urlize()
function was extremely slow to evaluate certain inputs due to catastrophic backtracking vulnerabilities in two regular expressions (only one regular expression for Django 1.8.x). The urlize()
function is used to implement the urlize and urlizetrunc template filters, which were thus vulnerable.
Uncontrolled Recursion in Django
- https://nvd.nist.gov/vuln/detail/CVE-2019-14235
- https://github.com/advisories/GHSA-v9qg-3j8p-r63v
- https://docs.djangoproject.com/en/dev/releases/security/
- https://groups.google.com/forum/#!topic/django-announce/jIoju2-KLDs
- https://www.djangoproject.com/weblog/2019/aug/01/security-releases/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/STVX7X7IDWAH5SKE6MBMY3TEI6ZODBTK/
- https://seclists.org/bugtraq/2019/Aug/15
- https://security.gentoo.org/glsa/202004-17
- https://security.netapp.com/advisory/ntap-20190828-0002/
- https://www.debian.org/security/2019/dsa-4498
- http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00006.html
- http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00025.html
An issue was discovered in Django 1.11.x before 1.11.23, 2.1.x before 2.1.11, and 2.2.x before 2.2.4. If passed certain inputs, django.utils.encoding.uritoiri could lead to significant memory usage due to a recursion when repercent-encoding invalid UTF-8 octet sequences.
Django Potential account hijack via password reset form
- https://nvd.nist.gov/vuln/detail/CVE-2019-19844
- https://github.com/advisories/GHSA-vfq6-hq5r-27r6
- https://github.com/django/django/commit/5b1fbcef7a8bec991ebe7b2a18b5d5a95d72cb70
- https://github.com/django/django/commit/f4cff43bf921fcea6a29b726eb66767f67753fa2
- https://docs.djangoproject.com/en/dev/releases/security/
- https://groups.google.com/forum/#!topic/django-announce/3oaB2rVH3a0
- https://seclists.org/bugtraq/2020/Jan/9
- https://security.netapp.com/advisory/ntap-20200110-0003/
- https://usn.ubuntu.com/4224-1/
- https://www.debian.org/security/2020/dsa-4598
- https://www.djangoproject.com/weblog/2019/dec/18/security-releases/
- http://packetstormsecurity.com/files/155872/Django-Account-Hijack.html
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/HCM2DPUI7TOZWN4A6JFQFUVQ2XGE7GUD/
- https://security.gentoo.org/glsa/202004-17
- https://github.com/django/django/commit/302a4ff1e8b1c798aab97673909c7a3dfda42c26
- https://github.com/django/django/commit/4d334bea06cac63dc1272abcec545b85136cca0e
- https://docs.djangoproject.com/en/dev/releases/security
- https://github.com/pypa/advisory-database/tree/main/vulns/django/PYSEC-2019-16.yaml
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/HCM2DPUI7TOZWN4A6JFQFUVQ2XGE7GUD
- https://security.netapp.com/advisory/ntap-20200110-0003
- https://usn.ubuntu.com/4224-1
- https://www.djangoproject.com/weblog/2019/dec/18/security-releases
Django before 1.11.27, 2.x before 2.2.9, and 3.x before 3.0.1 allows account takeover. A suitably crafted email address (that is equal to an existing user's email address after case transformation of Unicode characters) would allow an attacker to be sent a password reset token for the matched user account. (One mitigation in the new releases is to send password reset tokens only to the registered user email address.)
Uncontrolled Memory Consumption in Django
- https://nvd.nist.gov/vuln/detail/CVE-2019-6975
- https://github.com/advisories/GHSA-wh4h-v3f2-r2pp
- https://docs.djangoproject.com/en/dev/releases/security/
- https://groups.google.com/forum/#!topic/django-announce/WTwEAprR0IQ
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/66WMXHGBXD7GSM3PEXVCMCAGLMQYHZCU/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/HVXDOVCXLD74SHR2BENGCE2OOYYYWJHZ/
- https://seclists.org/bugtraq/2019/Jul/10
- https://usn.ubuntu.com/3890-1/
- https://www.debian.org/security/2019/dsa-4476
- https://www.djangoproject.com/weblog/2019/feb/11/security-releases/
- https://www.openwall.com/lists/oss-security/2019/02/11/1
- http://www.securityfocus.com/bid/106964
- https://github.com/django/django/commit/0bbb560183fabf0533289700845dafa94951f227
- https://github.com/django/django/commit/1f42f82566c9d2d73aff1c42790d6b1b243f7676
- https://github.com/django/django/commit/40cd19055773705301c3428ed5e08a036d2091f3
- https://web.archive.org/web/20200227084713/http://www.securityfocus.com/bid/106964
Django 1.11.x before 1.11.19, 2.0.x before 2.0.11, and 2.1.x before 2.1.6 allows Uncontrolled Memory Consumption via a malicious attacker-supplied value to the django.utils.numberformat.format()
function.