Archive of security issuesP

Django's development team is strongly committed to responsible reporting and disclosure of security-related issues, as outlined in Django's security policies.

As part of that commitment, we maintain the following historical list of issues which have been fixed and disclosed. For each issue, the list below includes the date, a brief description, the CVE identifier if applicable, a list of affected versions, a link to the full disclosure and links to the appropriate patch(es).

Some important caveats apply to this information:

  • Lists of affected versions include only those versions of Django which had stable, security-supported releases at the time of disclosure. This means older versions (whose security support had expired) and versions which were in pre-release (alpha/beta/RC) states at the time of disclosure may have been affected, but are not listed.
  • The Django project has on occasion issued security advisories, pointing out potential security problems which can arise from improper configuration or from other issues outside of Django itself. Some of these advisories have received CVEs; when that is the case, they are listed here, but as they have no accompanying patches or releases, only the description, disclosure and CVE will be listed.

Issues prior to Django's security processP

Some security issues were handled before Django had a formalized security process in use. For these, new releases may not have been issued at the time and CVEs may not have been assigned.

August 16, 2006 - CVE-2007-0404P

Filename validation issue in translation framework. Full description

Versions affectedP

January 21, 2007 - CVE-2007-0405P

Apparent "caching" of authenticated user. Full description

Versions affectedP

Issues under Django's security processP

All other security issues have been handled under versions of Django's security process. These are listed below.

October 26, 2007 - CVE-2007-5712P

Denial-of-service via arbitrarily-large Accept-Language header. Full description

Versions affectedP

May 14, 2008 - CVE-2008-2302P

XSS via admin login redirect. Full description

Versions affectedP

September 2, 2008 - CVE-2008-3909P

CSRF via preservation of POST data during admin login. Full description

Versions affectedP

July 28, 2009 - CVE-2009-2659P

Directory-traversal in development server media handler. Full description

Versions affectedP

October 9, 2009 - CVE-2009-3965P

Denial-of-service via pathological regular expression performance. Full description

Versions affectedP

September 8, 2010 - CVE-2010-3082P

XSS via trusting unsafe cookie value. Full description

Versions affectedP

December 22, 2010 - CVE-2010-4534P

Information leakage in administrative interface. Full description

Versions affectedP

December 22, 2010 - CVE-2010-4535P

Denial-of-service in password-reset mechanism. Full description

Versions affectedP

February 8, 2011 - CVE-2011-0696P

CSRF via forged HTTP headers. Full description

Versions affectedP

February 8, 2011 - CVE-2011-0697P

XSS via unsanitized names of uploaded files. Full description

Versions affectedP

February 8, 2011 - CVE-2011-0698P

Directory-traversal on Windows via incorrect path-separator handling. Full description

Versions affectedP

September 9, 2011 - CVE-2011-4136P

Session manipulation when using memory-cache-backed session. Full description

Versions affectedP

September 9, 2011 - CVE-2011-4137P

Denial-of-service via URLField.verify_exists. Full description

Versions affectedP

September 9, 2011 - CVE-2011-4138P

Information leakage/arbitrary request issuance via URLField.verify_exists. Full description

Versions affectedP

September 9, 2011 - CVE-2011-4139P

Host header cache poisoning. Full description

Versions affectedP

September 9, 2011 - CVE-2011-4140P

Potential CSRF via Host header. Full description

Versions affectedP

This notification was an advisory only, so no patches were issued.

  • Django 1.2
  • Django 1.3

July 30, 2012 - CVE-2012-3442P

XSS via failure to validate redirect scheme. Full description

Versions affectedP

July 30, 2012 - CVE-2012-3443P

Denial-of-service via compressed image files. Full description

Versions affectedP

July 30, 2012 - CVE-2012-3444P

Denial-of-service via large image files. Full description

Versions affectedP

October 17, 2012 - CVE-2012-4520P

Host header poisoning. Full description

Versions affectedP

December 10, 2012 - No CVE 1P

Additional hardening of Host header handling. Full description

Versions affectedP

December 10, 2012 - No CVE 2P

Additional hardening of redirect validation. Full description

Versions affectedP

February 19, 2013 - No CVEP

Additional hardening of Host header handling. Full description

Versions affectedP

February 19, 2013 - CVE-2013-1664 / CVE-2013-1665P

Entity-based attacks against Python XML libraries. Full description

Versions affectedP

February 19, 2013 - CVE-2013-0305P

Information leakage via admin history log. Full description

Versions affectedP

February 19, 2013 - CVE-2013-0306P

Denial-of-service via formset max_num bypass. Full description

Versions affectedP

August 13, 2013 - CVE-2013-4249P

XSS via admin trusting URLField values. Full description

Versions affectedP

August 13, 2013 - CVE-2013-6044P

Possible XSS via unvalidated URL redirect schemes. Full description

Versions affectedP

September 10, 2013 - CVE-2013-4315P

Directory-traversal via ssi template tag. Full description

Versions affectedP

September 14, 2013 - CVE-2013-1443P

Denial-of-service via large passwords. Full description

Versions affectedP

April 21, 2014 - CVE-2014-0472P

Unexpected code execution using reverse(). Full description

Versions affectedP

April 21, 2014 - CVE-2014-0473P

Caching of anonymous pages could reveal CSRF token. Full description

Versions affectedP

April 21, 2014 - CVE-2014-0474P

MySQL typecasting causes unexpected query results. Full description

Versions affectedP

May 18, 2014 - CVE-2014-1418P

Caches may be allowed to store and serve private data. Full description

Versions affectedP

May 18, 2014 - CVE-2014-3730P

Malformed URLs from user input incorrectly validated. Full description

Versions affectedP

August 20, 2014 - CVE-2014-0480P

reverse() can generate URLs pointing to other hosts. Full description

Versions affectedP

August 20, 2014 - CVE-2014-0481P

File upload denial of service. Full description

Versions affectedP

August 20, 2014 - CVE-2014-0482P

RemoteUserMiddleware session hijacking. Full description

Versions affectedP

August 20, 2014 - CVE-2014-0483P

Data leakage via querystring manipulation in admin. Full description

Versions affectedP

January 13, 2015 - CVE-2015-0219P

WSGI header spoofing via underscore/dash conflation. Full description

Versions affectedP

January 13, 2015 - CVE-2015-0220P

Mitigated possible XSS attack via user-supplied redirect URLs. Full description

Versions affectedP

January 13, 2015 - CVE-2015-0221P

Denial-of-service attack against django.views.static.serve(). Full description

Versions affectedP

January 13, 2015 - CVE-2015-0222P

Database denial-of-service with ModelMultipleChoiceField. Full description

Versions affectedP

March 9, 2015 - CVE-2015-2241P

XSS attack via properties in ModelAdmin.readonly_fields. Full description

Versions affectedP

March 18, 2015 - CVE-2015-2316P

Denial-of-service possibility with strip_tags(). Full description

Versions affectedP

March 18, 2015 - CVE-2015-2317P

Mitigated possible XSS attack via user-supplied redirect URLs. Full description

Versions affectedP

May 20, 2015 - CVE-2015-3982P

Fixed session flushing in the cached_db backend. Full description

Versions affectedP

July 8, 2015 - CVE-2015-5143P

Denial-of-service possibility by filling session store. Full description

Versions affectedP

July 8, 2015 - CVE-2015-5144P

Header injection possibility since validators accept newlines in input. Full description

Versions affectedP

July 8, 2015 - CVE-2015-5145P

Denial-of-service possibility in URL validation. Full description

Versions affectedP

August 18, 2015 - CVE-2015-5963 / CVE-2015-5964P

Denial-of-service possibility in logout() view by filling session store. Full description

Versions affectedP

November 24, 2015 - CVE-2015-8213P

Settings leak possibility in date template filter. Full description

Versions affectedP

February 1, 2016 - CVE-2016-2048P

User with "change" but not "add" permission can create objects for ModelAdmin’s with save_as=True. Full description

Versions affectedP

March 1, 2016 - CVE-2016-2512P

Malicious redirect and possible XSS attack via user-supplied redirect URLs containing basic auth. Full description

Versions affectedP

March 1, 2016 - CVE-2016-2513P

User enumeration through timing difference on password hasher work factor upgrade. Full description

Versions affectedP

July 18, 2016 - CVE-2016-6186P

XSS in admin's add/change related popup. Full description

Versions affectedP

September 26, 2016 - CVE-2016-7401P

CSRF protection bypass on a site with Google Analytics. Full description

Versions affectedP

November 1, 2016 - CVE-2016-9013P

User with hardcoded password created when running tests on Oracle. Full description

Versions affectedP

November 1, 2016 - CVE-2016-9014P

DNS rebinding vulnerability when DEBUG=True. Full description

Versions affectedP

April 4, 2017 - CVE-2017-7233P

Open redirect and possible XSS attack via user-supplied numeric redirect URLs. Full description

Versions affectedP

April 4, 2017 - CVE-2017-7234P

Open redirect vulnerability in django.views.static.serve(). Full description

Versions affectedP

September 5, 2017 - CVE-2017-12794P

Possible XSS in traceback section of technical 500 debug page. Full description

Versions affectedP

February 1, 2018 - CVE-2018-6188P

Information leakage in AuthenticationForm. Full description

Versions affectedP

March 6, 2018 - CVE-2018-7536P

Denial-of-service possibility in urlize and urlizetrunc template filters. Full description

Versions affectedP

March 6, 2018 - CVE-2018-7537P

Denial-of-service possibility in truncatechars_html and truncatewords_html template filters. Full description

Versions affectedP

August 1, 2018 - CVE-2018-14574P

Open redirect possibility in CommonMiddleware. Full description

Versions affectedP

October 1, 2018 - CVE-2018-16984P

Password hash disclosure to "view only" admin users. Full description

Versions affectedP

January 4, 2019 - CVE-2019-3498P

Content spoofing possibility in the default 404 page. Full description

Versions affectedP

February 11, 2019 - CVE-2019-6975P

Memory exhaustion in django.utils.numberformat.format(). Full description

Versions affectedP

June 3, 2019 - CVE-2019-11358P

Prototype pollution in bundled jQuery. Full description

Versions affectedP

June 3, 2019 - CVE-2019-12308P

XSS via "Current URL" link generated by AdminURLFieldWidget. Full description

Versions affectedP

July 1, 2019 - CVE-2019-12781P

Incorrect HTTP detection with reverse-proxy connecting via HTTPS. Full description

Versions affectedP

August 1, 2019 - CVE-2019-14232P

Denial-of-service possibility in django.utils.text.Truncator. Full description

Versions affectedP

August 1, 2019 - CVE-2019-14233P

Denial-of-service possibility in strip_tags(). Full description

Versions affectedP

August 1, 2019 - CVE-2019-14234P

SQL injection possibility in key and index lookups for JSONField/HStoreField. Full description

Versions affectedP

August 1, 2019 - CVE-2019-14235P

Potential memory exhaustion in django.utils.encoding.uri_to_iri(). Full description

Versions affectedP