Every CVE Search/ Get API key

CVE-2015-2316

Django Denial-of-service possibility with strip_tags

5.0 MediumFix available

The utils.html.strip_tags function in Django 1.6.x before 1.6.11, 1.7.x before 1.7.7, and 1.8.x before 1.8c1, when using certain versions of Python, allows remote attackers to cause a denial of service (infinite loop) by increasing the length of the input string.

Exploit likelihood

4.83%Up 3.5 points since Feb 4, 2022
90%50%10%1%

What each source reports

NVD Score used 5.0

The utils.html.strip_tags function in Django 1.6.x before 1.6.11, 1.7.x before 1.7.7, and 1.8.x before 1.8c1, when using certain versions of Python, allows remote attackers to cause a denial of service (infinite loop) by increasing the length of the input string.

Record
CVE-2015-2316
CVSS 2.0
5.0 MediumAV:N/AC:L/Au:N/C:N/I:N/A:P
Weakness
CWE-399
Updated
2026-11-02
CVE List No score

The utils.html.strip_tags function in Django 1.6.x before 1.6.11, 1.7.x before 1.7.7, and 1.8.x before 1.8c1, when using certain versions of Python, allows remote attackers to cause a denial of service (infinite loop) by increasing the length of the input string.

Record
CVE-2015-2316
Updated
2026-11-02
EUVDEUVD-2015-0007 No score

The utils.html.strip_tags function in Django 1.6.x before 1.6.11, 1.7.x before 1.7.7, and 1.8.x before 1.8c1, when using certain versions of Python, allows remote attackers to cause a denial of service (infinite loop) by increasing the length of the input string.

Record
EUVD-2015-0007
Updated
2026-11-03
GitHub AdvisoriesGHSA-j3j3-jrfh-cm2w 8.7

Django Denial-of-service possibility with strip_tags

The utils.html.strip_tags function in Django 1.6.x before 1.6.11, 1.7.x before 1.7.7, and 1.8.x before 1.8c1, when using certain versions of Python, allows remote attackers to cause a denial of service (infinite loop) by increasing the length of the input string.

Record
GHSA-j3j3-jrfh-cm2w
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-770
Updated
2026-11-02
OSVGHSA-j3j3-jrfh-cm2w 8.7

Django Denial-of-service possibility with strip_tags

The utils.html.strip_tags function in Django 1.6.x before 1.6.11, 1.7.x before 1.7.7, and 1.8.x before 1.8c1, when using certain versions of Python, allows remote attackers to cause a denial of service (infinite loop) by increasing the length of the input string.

Record
GHSA-j3j3-jrfh-cm2w
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-770
Updated
2026-11-02
OSV No score

The utils.html.strip_tags function in Django 1.6.x before 1.6.11, 1.7.x before 1.7.7, and 1.8.x before 1.8c1, when using certain versions of Python, allows remote attackers to cause a denial of service (infinite loop) by increasing the length of the input string.

Record
CVE-2015-2316
Updated
2026-11-02
Show 10 moreShow less
OSVDEBIAN-CVE-2015-2316 No score

The utils.html.strip_tags function in Django 1.6.x before 1.6.11, 1.7.x before 1.7.7, and 1.8.x before 1.8c1, when using certain versions of Python, allows remote attackers to cause a denial of service (infinite loop) by increasing the length of the input string.

Record
DEBIAN-CVE-2015-2316
Updated
2026-11-02
OSVMGASA-2015-0127 No score

Updated python-django packages fix security vulnerabilities

Updated python-django and python-django14 packages fix security vulnerabilities:

The ModelAdmin.readonly_fields attribute in the Django admin allows displaying model fields and model attributes. While the former were correctly escaped, the latter were not. Thus untrusted content could be injected into the admin, presenting an exploitation vector for XSS attacks (CVE-2015-2241).

Django relies on user input in some cases to redirect the user to an "on success" URL. The security checks for these redirects accepted URLs with leading control characters and so considered URLs like \x08javascript:... safe. This issue doesn't affect Django currently, however, if a developer relies on is_safe_url() to provide safe redirect targets and puts such a URL into a link, they could suffer from an XSS attack as some browsers such as Google Chrome ignore control characters at the start of a URL in an anchor href (CVE-2015-2317).

Note that the CVE-2015-2241 issue does not affect python-django14 directly, but client code using it may be affected. Please see the March 9th upstream advisory for more information on this.

Record
MGASA-2015-0127
Updated
2026-11-02
OSVPYSEC-2015-18 No score

The utils.html.strip_tags function in Django 1.6.x before 1.6.11, 1.7.x before 1.7.7, and 1.8.x before 1.8c1, when using certain versions of Python, allows remote attackers to cause a denial of service (infinite loop) by increasing the length of the input string.

Record
PYSEC-2015-18
Updated
2026-11-02
OSVSUSE-SU-2015:0563-1 No score

Security update for python-django

python-django was updated to 1.5.10 fixing bugs and security issues:

* Prevented reverse() from generating URLs pointing to other hosts to
  prevent phishing attacks. (bnc#893087, CVE-2014-0480)
* Removed O(n) algorithm when uploading duplicate file names to fix
  file upload denial of service. (bnc#893088, CVE-2014-0481)
* Modified RemoteUserMiddleware to logout on REMOTE_USE change to
  prevent session hijacking. (bnc#893089, CVE-2014-0482)
* Prevented data leakage in contrib.admin via query string
  manipulation. (bnc#893090, CVE-2014-0483)

Security Issues:

* CVE-2014-0480
  <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0480>
* CVE-2014-0481
  <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0481>
* CVE-2014-0482
  <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0482>
* CVE-2014-0483
  <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0483>
Record
SUSE-SU-2015:0563-1
Updated
2026-11-02
OSVSUSE-SU-2015:0694-1 No score

Security update for python-Django

python-Django has been updated to fix two vulnerabilities:

* URLs starting with control characters could have allowed XSS
  (cross-site-scripting) attacks via user-supplied redirect URLs
  (CVE-2015-2317)
* An infinite loop possibility could be triggered in the strip_tags()
  function, which allowed denial of service attacks (CVE-2015-2316)

Security Issues:

* CVE-2015-2316
  <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-2316>
* CVE-2015-2317
  <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-2317>
Record
SUSE-SU-2015:0694-1
Updated
2026-11-02
OSVSUSE-SU-2015:0695-1 No score

Security update for python-django

python-django was updated to 1.5.10 fixing bugs and security issues:

* Prevented reverse() from generating URLs pointing to other hosts to
  prevent phishing attacks. (bnc#893087, CVE-2014-0480)
* Removed O(n) algorithm when uploading duplicate file names to fix
  file upload denial of service. (bnc#893088, CVE-2014-0481)
* Modified RemoteUserMiddleware to logout on REMOTE_USE change to
  prevent session hijacking. (bnc#893089, CVE-2014-0482)
* Prevented data leakage in contrib.admin via query string
  manipulation. (bnc#893090, CVE-2014-0483)

Security Issues:

* CVE-2014-0480
  <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0480>
* CVE-2014-0481
  <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0481>
* CVE-2014-0482
  <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0482>
* CVE-2014-0483
  <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0483>
Record
SUSE-SU-2015:0695-1
Updated
2026-11-02
OSVSUSE-SU-2015:1109-1 No score

Security update for python-Django

python-django was updated to 1.6.11 to fix security issues and non-security bugs.

The following vulnerabilities were fixed:

  • Made is_safe_url() reject URLs that start with control characters to mitigate possible XSS attack via user-supplied redirect URLs (bnc#923176, CVE-2015-2317)
  • Fixed an infinite loop possibility in strip_tags() (bnc#923172, CVE-2015-2316)
  • WSGI header spoofing via underscore/dash conflation (bnc#913053, CVE-2015-0219)
  • Mitigated possible XSS attack via user-supplied redirect URLs
  • Denial-of-service attack against django.views.static.serve (bnc#913056, CVE-2015-0221)
  • Database denial-of-service with ModelMultipleChoiceField (bnc#913055, CVE-2015-0222)

The update also contains fixes for non-security bugs, functional and stability issues.

Record
SUSE-SU-2015:1109-1
Updated
2026-11-02
OSVSUSE-SU-2015:1112-1 No score

Security update for python-Django

python-django was updated to 1.6.11 to fix security issues and non-security bugs.

The following vulnerabilities were fixed:

  • Made is_safe_url() reject URLs that start with control characters to mitigate possible XSS attack via user-supplied redirect URLs (bnc#923176, CVE-2015-2317)
  • Fixed an infinite loop possibility in strip_tags() (bnc#923172, CVE-2015-2316)
  • WSGI header spoofing via underscore/dash conflation (bnc#913053, CVE-2015-0219)
  • Mitigated possible XSS attack via user-supplied redirect URLs
  • Denial-of-service attack against django.views.static.serve (bnc#913056, CVE-2015-0221)
  • Database denial-of-service with ModelMultipleChoiceField (bnc#913055, CVE-2015-0222)

The update also contains fixes for non-security bugs, functional and stability issues.

Record
SUSE-SU-2015:1112-1
Updated
2026-11-02
OSVUBUNTU-CVE-2015-2316 No score

The utils.html.strip_tags function in Django 1.6.x before 1.6.11, 1.7.x before 1.7.7, and 1.8.x before 1.8c1, when using certain versions of Python, allows remote attackers to cause a denial of service (infinite loop) by increasing the length of the input string.

Record
UBUNTU-CVE-2015-2316
Updated
2026-11-02
OSVUSN-2539-1 No score

python-django vulnerabilities

Andrey Babak discovered that Django incorrectly handled strip_tags. A remote attacker could possibly use this issue to cause Django to enter an infinite loop, resulting in a denial of service. This issue only affected Ubuntu 14.04 LTS and Ubuntu 14.10. (CVE-2015-2316)

Daniel Chatfield discovered that Django incorrectly handled user-supplied redirect URLs. A remote attacker could possibly use this issue to perform a cross-site scripting attack. (CVE-2015-2317)

Record
USN-2539-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
django
PyPI
1.6 up to 1.6.11
1.6.11
django
PyPI
1.7 up to 1.7.7
1.7.7
django
PyPI
1.8a1 up to 1.8c1
1.8c1
python-django
Debian:12
before 1.7.7-1
1.7.7-1
python-django
Debian:13
before 1.7.7-1
1.7.7-1
python-django
Debian:14
before 1.7.7-1
1.7.7-1
django
PyPI
1.6 up to 1.6.11, plus listed versions
1.6.11.6.101.6.21.6.31.6.4
Show 5 moreShow less
1.6.51.6.61.6.71.6.81.6.9
1.6.11
django
PyPI
1.7 up to 1.7.7, plus listed versions
1.7.11.7.21.7.31.7.41.7.51.7.6
1.7.7
django
PyPI
1.8a1 up to 1.8c1, plus listed versions
1.8b11.8b2
1.8c1
python-django
Mageia:4
before 1.5.9-1.2.mga4
1.5.9-1.2.mga4
Show 4 moreShow less
Affected packages
PackageAffectedFixed
python-django14
Mageia:4
before 1.4.20-1.mga4
1.4.20-1.mga4
django
PyPI
1.6 up to 1.6.11, 1.7 up to 1.7.7, 1.8a0 up to 1.8c1, plus listed versions
1.6.11.6.101.6.21.6.31.6.4
Show 14 moreShow less
1.6.51.6.61.6.71.6.81.6.91.7.11.7.21.7.31.7.41.7.51.7.61.8a11.8b11.8b2
1.6.111.7.71.8c1
python-Django
SUSE:Enterprise Storage 1.0
before 1.6.11-4.1
1.6.11-4.1
python-django
Ubuntu:14.04:LTS
before 1.6.1-2ubuntu0.8, plus listed versions
1.5.4-1ubuntu11.6-11.6.1-11.6.1-21.6.1-2ubuntu0.1
Show 5 moreShow less
1.6.1-2ubuntu0.21.6.1-2ubuntu0.31.6.1-2ubuntu0.41.6.1-2ubuntu0.51.6.1-2ubuntu0.6
1.6.1-2ubuntu0.8

History

History
RecordedChangedSources
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2015-2316 is a medium vulnerability (CVSS 5.0) in Djangoproject Django, published September 3, 2014. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 4.83%, the 91st percentile. Fixed in django 1.6.11.

References

Show 42 moreShow less
MoveEnter Open