Skip to content

← Public intelligence

PyPI package

django

Open actionable advisories and recorded vendor fixes. This public package view has no inventory attached and cannot establish whether your deployment is affected. A vendor fix never resolves your finding; verify your installed version and the source guidance.

Open advisories

161 actionable advisories, newest first. Withdrawn advisories and news are excluded. Coverage is partial.

  1. Low, CVSS 2.7PyPIAmendedPublished

    Django has Inefficient Algorithmic Complexity

    CVE-2025-14550 · GHSA-33mw-q7rj-mjwj

    Affected
    • PyPI django >= 6.0a1, < 6.0.2; >= 5.2a1, < 5.2.11; >= 4.2a1, < 4.2.28
    Fixed in
    5.2.114.2.286.0.2· Vendor fix available
    Issue
    An issue was discovered in 6.0 before 6.0.2, 5.2 before 5.2.11, and 4.2 before 4.2.28. ASGIRequest allows a remote attacker to cause a potential denial-of-service via a crafted request with multiple duplicate headers. Earlier, unsupported Django series (such as 5.0.x, 4.1.x, and 3.2.x) were not evaluated and may also be affected. Django would like to thank Jiyong Yang for reporting this issue.

    Recommended action: Upgrade to 6.0.2, 5.2.11 or 4.2.28 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  2. Medium, CVSS 4.3PyPIAmendedPublished

    Django is vulnerable to SQL injection in column aliases

    CVE-2025-13372 · GHSA-rqw2-ghq9-44m7

    Affected
    • PyPI django >= 5.2a1, < 5.2.9; >= 5.1a1, < 5.1.15; >= 4.2a1, < 4.2.27
    Fixed in
    5.2.95.1.154.2.27· Vendor fix available
    Issue
    An issue was discovered in 5.2 before 5.2.9, 5.1 before 5.1.15, and 4.2 before 4.2.27. FilteredRelation is subject to SQL injection in column aliases, using a suitably crafted dictionary, with dictionary expansion, as the kwargs passed to QuerySet.annotate() or QuerySet.alias() on PostgreSQL. Earlier, unsupported Django series (such as 5.0.x, 4.1.x, and 3.2.x) were not evaluated and may also be affected. Django would like to thank Stackered for reporting this issue.

    Recommended action: Upgrade to 5.2.9, 5.1.15 or 4.2.27 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  3. Medium, CVSS 6.3PyPIAmendedPublished

    Django is vulnerable to DoS via XML serializer text extraction

    CVE-2025-64460 · GHSA-vrcr-9hj9-jcg6

    Affected
    • PyPI django >= 5.2a1, < 5.2.9; >= 5.1a1, < 5.1.15; >= 4.2a1, < 4.2.27
    Fixed in
    5.2.95.1.154.2.27· Vendor fix available
    Issue
    An issue was discovered in 5.2 before 5.2.9, 5.1 before 5.1.15, and 4.2 before 4.2.27. Algorithmic complexity in django.core.serializers.xmlserializer.getInnerText() allows a remote attacker to cause a potential denial-of-service attack triggering CPU and memory exhaustion via specially crafted XML input processed by the XML Deserializer. Earlier, unsupported Django series (such as 5.0.x, 4.1.x, and 3.2.x) were not evaluated and may also be affected. Django would like to thank Seokchan Yoon for reporting this issue.

    Recommended action: Upgrade to 5.2.9, 5.1.15 or 4.2.27 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  4. High, CVSS 7.5PyPIAmendedPublished

    Django has a denial-of-service vulnerability in HttpResponseRedirect and HttpResponsePermanentRedirect on Windows

    CVE-2025-64458 · GHSA-qw25-v68c-qjf3

    Affected
    • PyPI django >= 5.2a1, < 5.2.8; >= 5.0a1, < 5.1.14; < 4.2.26
    Fixed in
    5.2.84.2.265.1.14· Vendor fix available
    Issue
    An issue was discovered in 5.1 before 5.1.14, 4.2 before 4.2.26, and 5.2 before 5.2.8. NFKC normalization in Python is slow on Windows. As a consequence, django.http.HttpResponseRedirect, django.http.HttpResponsePermanentRedirect, and the shortcut django.shortcuts.redirect were subject to a potential denial-of-service attack via certain inputs with a very large number of Unicode characters. Earlier, unsupported Django series (such as 5.0.x, 4.1.x, and 3.2.x) were not evaluated and may also be affected. Django would like to thank Seokchan Yoon for reporting this issue.

    Recommended action: Upgrade to 5.2.8, 5.1.14 or 4.2.26 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  5. Critical, CVSS 9.1PyPIAmendedPublished

    Django vulnerable to SQL injection via _connector keyword argument in QuerySet and Q objects.

    CVE-2025-64459 · GHSA-frmv-pr5f-9mcr

    Affected
    • PyPI django >= 5.2a1, < 5.2.8; >= 5.0a1, < 5.1.14; < 4.2.26
    Fixed in
    5.2.84.2.265.1.14· Vendor fix available
    Issue
    An issue was discovered in 5.1 before 5.1.14, 4.2 before 4.2.26, and 5.2 before 5.2.8. The methods QuerySet.filter(), QuerySet.exclude(), and QuerySet.get(), and the class Q(), are subject to SQL injection when using a suitably crafted dictionary, with dictionary expansion, as the connector argument. Earlier, unsupported Django series (such as 5.0.x, 4.1.x, and 3.2.x) were not evaluated and may also be affected. Django would like to thank cyberstan for reporting this issue.

    Recommended action: Upgrade to 5.2.8, 5.1.14 or 4.2.26 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.com (1)osv.dev (2)Source checked Evidence →
  6. Low, CVSS 3.1PyPIAmendedPublished

    Django vulnerable to partial directory traversal via archives

    CVE-2025-59682 · GHSA-q95w-c7qg-hrff

    Affected
    • PyPI django >= 4.2, < 4.2.25; >= 5.1, < 5.1.13; >= 5.2, < 5.2.7
    Fixed in
    5.2.75.1.134.2.25· Vendor fix available
    Issue
    An issue was discovered in Django 4.2 before 4.2.25, 5.1 before 5.1.13, and 5.2 before 5.2.7. The django.utils.archive.extract() function, used by the "startapp --template" and "startproject --template" commands, allows partial directory traversal via an archive with file paths sharing a common prefix with the target directory.

    Recommended action: Upgrade to 5.2.7, 5.1.13 or 4.2.25 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  7. High, CVSS 7.1PyPIAmendedPublished

    Django vulnerable to SQL injection in column aliases

    CVE-2025-59681 · GHSA-hpr9-3m2g-3j9p

    Affected
    • PyPI django >= 4.2, < 4.2.25; >= 5.1, < 5.1.13; >= 5.2, < 5.2.7
    Fixed in
    5.2.75.1.134.2.25· Vendor fix available
    Issue
    An issue was discovered in Django 4.2 before 4.2.25, 5.1 before 5.1.13, and 5.2 before 5.2.7. QuerySet.annotate(), QuerySet.alias(), QuerySet.aggregate(), and QuerySet.extra() are subject to SQL injection in column aliases, when using a suitably crafted dictionary, with dictionary expansion, as the kwargs passed to these methods (on MySQL and MariaDB).

    Recommended action: Upgrade to 5.2.7, 5.1.13 or 4.2.25 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  8. High, CVSS 7.1PyPIAmendedPublished

    Django is subject to SQL injection through its column aliases

    CVE-2025-57833 · GHSA-6w2r-r2m5-xq5w

    Affected
    • PyPI django < 4.2.24; >= 5.0a1, < 5.1.12; >= 5.2a1, < 5.2.6
    Fixed in
    5.1.124.2.245.2.6· Vendor fix available
    Issue
    An issue was discovered in Django 4.2 before 4.2.24, 5.1 before 5.1.12, and 5.2 before 5.2.6. FilteredRelation is subject to SQL injection in column aliases, using a suitably crafted dictionary, with dictionary expansion, as the kwargs passed QuerySet.annotate() or QuerySet.alias().

    Recommended action: Upgrade to 5.2.6, 5.1.12 or 4.2.24 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  9. Medium, CVSS 4.0PyPIAmendedPublished

    Django Improper Output Neutralization for Logs vulnerability

    CVE-2025-48432 · GHSA-7xr5-9hcq-chf9

    Affected
    • PyPI django >= 5.2, < 5.2.2; >= 5.0a1, < 5.1.10; < 4.2.22
    Fixed in
    5.1.104.2.225.2.2· Vendor fix available
    Issue
    An issue was discovered in Django 5.2 before 5.2.2, 5.1 before 5.1.10, and 4.2 before 4.2.22. Internal HTTP response logging does not escape request.path, which allows remote attackers to potentially manipulate log output via crafted URLs. This may lead to log injection or forgery when logs are viewed in terminals or processed by external systems.

    Recommended action: Upgrade to 5.2.2, 5.1.10 or 4.2.22 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  10. Medium, CVSS 5.3PyPIAmendedPublished

    Django has a denial-of-service possibility in strip_tags()

    CVE-2025-32873 · GHSA-8j24-cjrq-gr2m

    Affected
    • PyPI django >= 4.2, < 4.2.21; >= 5.1, < 5.1.9; >= 5.2, < 5.2.1
    Fixed in
    5.2.15.1.94.2.21· Vendor fix available
    Issue
    An issue was discovered in Django 4.2 before 4.2.21, 5.1 before 5.1.9, and 5.2 before 5.2.1. The django.utils.html.striptags() function is vulnerable to a potential denial-of-service (slow performance) when processing inputs containing large sequences of incomplete HTML tags. The template filter striptags is also vulnerable, because it is built on top of striptags().

    Recommended action: Upgrade to 5.2.1, 5.1.9 or 4.2.21 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  11. Medium, CVSS 5.8PyPIAmendedPublished

    Django Potential Denial of Service (DoS) on Windows

    CVE-2025-27556 · GHSA-wqfg-m96j-85vm

    Affected
    • PyPI django >= 5.0, < 5.0.14; >= 5.1, < 5.1.8
    Fixed in
    5.0.145.1.8· Vendor fix available
    Issue
    An issue was discovered in Django 5.1 before 5.1.8 and 5.0 before 5.0.14. The NFKC normalization is slow on Windows. As a consequence, django.contrib.auth.views.LoginView, django.contrib.auth.views.LogoutView, and django.views.i18n.setlanguage are subject to a potential denial-of-service attack via certain inputs with a very large number of Unicode characters.

    Recommended action: Upgrade to 5.1.8 or 5.0.14 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  12. Medium, CVSS 5.0PyPIAmendedPublished

    Django vulnerable to Allocation of Resources Without Limits or Throttling

    CVE-2025-26699 · GHSA-p3fp-8748-vqfq

    Affected
    • PyPI django >= 4.2, < 4.2.20; >= 5.0, < 5.0.13; >= 5.1, < 5.1.7
    Fixed in
    4.2.205.0.135.1.7· Vendor fix available
    Issue
    An issue was discovered in Django 5.1 before 5.1.7, 5.0 before 5.0.13, and 4.2 before 4.2.20. The django.utils.text.wrap() method and wordwrap template filter are subject to a potential denial-of-service attack when used with very long strings.

    Recommended action: Upgrade to 5.1.7, 5.0.13 or 4.2.20 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  13. Medium, CVSS 5.8PyPIAmendedPublished

    Django has a potential denial-of-service vulnerability in IPv6 validation

    CVE-2024-56374 · GHSA-qcgg-j2x8-h9g8

    Affected
    • PyPI django >= 5.1, < 5.1.5; >= 5.0, < 5.0.11; >= 4.2, < 4.2.18
    Fixed in
    5.1.54.2.185.0.11· Vendor fix available
    Issue
    An issue was discovered in Django 5.1 before 5.1.5, 5.0 before 5.0.11, and 4.2 before 4.2.18. Lack of upper-bound limit enforcement in strings passed when performing IPv6 validation could lead to a potential denial-of-service attack. The undocumented and private functions cleanipv6address and isvalidipv6address are vulnerable, as is the django.forms.GenericIPAddressField form field. (The django.db.models.GenericIPAddressField model field is not affected.)

    Recommended action: Upgrade to 5.1.5, 5.0.11 or 4.2.18 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  14. Medium, CVSS 6.6PyPIAmendedPublished

    Django denial-of-service in django.utils.html.strip_tags()

    CVE-2024-53907 · GHSA-8498-2h75-472j

    Affected
    • PyPI django >= 5.1.0, < 5.1.4; >= 4.2.0, < 4.2.17; >= 5.0.0, < 5.0.10; >= 5.1, < 5.1.4; >= 5.0, < 5.0.10; >= 4.2, < 4.2.17
    Fixed in
    5.0.105.1.44.2.17· Vendor fix available
    Issue
    An issue was discovered in Django 5.1 before 5.1.4, 5.0 before 5.0.10, and 4.2 before 4.2.17. The striptags() method and striptags template filter are subject to a potential denial-of-service attack via certain inputs containing large sequences of nested incomplete HTML entities.

    Recommended action: Upgrade to 5.1.4, 5.0.10 or 4.2.17 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  15. High, CVSS 7.2PyPIAmendedPublished

    Django SQL injection in HasKey(lhs, rhs) on Oracle

    CVE-2024-53908 · GHSA-m9g8-fxxm-xg86

    Affected
    • PyPI django >= 5.0.0, < 5.0.10; >= 5.1.0, < 5.1.4; >= 4.2.0, < 4.2.17; >= 5.1, < 5.1.4; >= 5.0, < 5.0.10; >= 4.2, < 4.2.17
    Fixed in
    5.0.105.1.44.2.17· Vendor fix available
    Issue
    An issue was discovered in Django 5.1 before 5.1.4, 5.0 before 5.0.10, and 4.2 before 4.2.17. Direct usage of the django.db.models.fields.json.HasKey lookup, when an Oracle database is used, is subject to SQL injection if untrusted data is used as an lhs value. (Applications that use the jsonfield.haskey lookup via are unaffected.)

    Recommended action: Upgrade to 5.1.4, 5.0.10 or 4.2.17 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  16. Medium, CVSS 6.9PyPIAmendedPublished

    Django vulnerable to denial-of-service attack via the urlize() and urlizetrunc() template filters

    CVE-2024-45230 · GHSA-5hgc-2vfp-mqvc

    Affected
    • PyPI django >= 5.1, < 5.1.1; >= 5.0, < 5.0.9; >= 4.2, < 4.2.16
    Fixed in
    5.0.94.2.165.1.1· Vendor fix available
    Issue
    An issue was discovered in Django 5.1 before 5.1.1, 5.0 before 5.0.9, and 4.2 before 4.2.16. The urlize() and urlizetrunc() template filters are subject to a potential denial-of-service attack via very large inputs with a specific sequence of characters.

    Recommended action: Upgrade to 5.1.1, 5.0.9 or 4.2.16 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  17. Medium, CVSS 6.3PyPIAmendedPublished

    Django allows enumeration of user e-mail addresses

    CVE-2024-45231 · GHSA-rrqc-c2jx-6jgv

    Affected
    • PyPI django >= 5.1, < 5.1.1; >= 5.0, < 5.0.9; < 4.2.16
    Fixed in
    5.0.94.2.165.1.1· Vendor fix available
    Issue
    An issue was discovered in Django v5.1.1, v5.0.9, and v4.2.16. The django.contrib.auth.forms.PasswordResetForm class, when used in a view implementing password reset flows, allows remote attackers to enumerate user e-mail addresses by sending password reset requests and observing the outcome (only when e-mail sending is consistently failing).

    Recommended action: Upgrade to 5.1.1, 5.0.9 or 4.2.16 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  18. Critical, CVSS 9.3PyPIAmendedPublished

    Django SQL injection vulnerability

    CVE-2024-42005 · GHSA-pv4p-cwwg-4rph

    Affected
    • PyPI django >= 5.0, < 5.0.8; >= 4.2, < 4.2.15
    Fixed in
    4.2.155.0.8· Vendor fix available
    Issue
    An issue was discovered in Django 5.0 before 5.0.8 and 4.2 before 4.2.15. QuerySet.values() and valueslist() methods on models with a JSONField are subject to SQL injection in column aliases via a crafted JSON object key as a passed arg.

    Recommended action: Upgrade to 5.0.8 or 4.2.15 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  19. Medium, CVSS 6.9PyPIAmendedPublished

    Django memory consumption vulnerability

    CVE-2024-41989 · GHSA-jh75-99hh-qvx9

    Affected
    • PyPI django >= 5.0, < 5.0.8; >= 4.2, < 4.2.15
    Fixed in
    4.2.155.0.8· Vendor fix available
    Issue
    An issue was discovered in Django 5.0 before 5.0.8 and 4.2 before 4.2.15. The floatformat template filter is subject to significant memory consumption when given a string representation of a number in scientific notation with a large exponent.

    Recommended action: Upgrade to 5.0.8 or 4.2.15 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  20. Medium, CVSS 6.9PyPIAmendedPublished

    Django vulnerable to a denial-of-service attack

    CVE-2024-41990 · GHSA-795c-9xpc-xw6g

    Affected
    • PyPI django >= 5.0, < 5.0.8; >= 4.2, < 4.2.15
    Fixed in
    4.2.155.0.8· Vendor fix available
    Issue
    An issue was discovered in Django 5.0 before 5.0.8 and 4.2 before 4.2.15. The urlize() and urlizetrunc() template filters are subject to a potential denial-of-service attack via very large inputs with a specific sequence of characters.

    Recommended action: Upgrade to 5.0.8 or 4.2.15 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  21. Medium, CVSS 6.9PyPIAmendedPublished

    Django vulnerable to denial-of-service attack

    CVE-2024-41991 · GHSA-r836-hh6v-rg5g

    Affected
    • PyPI django >= 5.0, < 5.0.8; >= 4.2, < 4.2.15
    Fixed in
    4.2.155.0.8· Vendor fix available
    Issue
    An issue was discovered in Django 5.0 before 5.0.8 and 4.2 before 4.2.15. The urlize and urlizetrunc template filters, and the AdminURLFieldWidget widget, are subject to a potential denial-of-service attack via certain inputs with a very large number of Unicode characters.

    Recommended action: Upgrade to 5.0.8 or 4.2.15 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  22. Medium, CVSS 6.9PyPIAmendedPublished

    Django vulnerable to user enumeration attack

    CVE-2024-39329 · GHSA-x7q2-wr7g-xqmf

    Affected
    • PyPI django >= 5.0, < 5.0.7; >= 4.2, < 4.2.14
    Fixed in
    4.2.145.0.7· Vendor fix available
    Issue
    An issue was discovered in Django 5.0 before 5.0.7 and 4.2 before 4.2.14. The django.contrib.auth.backends.ModelBackend.authenticate() method allows remote attackers to enumerate users via a timing attack involving login requests for users with an unusable password.

    Recommended action: Upgrade to 5.0.7 or 4.2.14 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  23. High, CVSS 8.7PyPIAmendedPublished

    Django vulnerable to Denial of Service

    CVE-2024-39614 · GHSA-f6f8-9mx6-9mx2

    Affected
    • PyPI django >= 5.0, < 5.0.7; >= 4.2, < 4.2.14
    Fixed in
    4.2.145.0.7· Vendor fix available
    Issue
    An issue was discovered in Django 5.0 before 5.0.7 and 4.2 before 4.2.14. getsupportedlanguagevariant() was subject to a potential denial-of-service attack when used with very long strings containing specific characters.

    Recommended action: Upgrade to 5.0.7 or 4.2.14 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  24. High, CVSS 8.7PyPIAmendedPublished

    Django Path Traversal vulnerability

    CVE-2024-39330 · GHSA-9jmf-237g-qf46

    Affected
    • PyPI django >= 5.0, < 5.0.7; >= 4.2, < 4.2.14
    Fixed in
    4.2.145.0.7· Vendor fix available
    Issue
    An issue was discovered in Django 5.0 before 5.0.7 and 4.2 before 4.2.14. Derived classes of the django.core.files.storage.Storage base class, when they override generatefilename() without replicating the file-path validations from the parent class, potentially allow directory traversal via certain inputs during a save() call. (Built-in Storage sub-classes are unaffected.)

    Recommended action: Upgrade to 5.0.7 or 4.2.14 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  25. High, CVSS 8.7PyPIAmendedPublished

    Django vulnerable to Denial of Service

    CVE-2024-38875 · GHSA-qg2p-9jwr-mmqf

    Affected
    • PyPI django >= 4.2, < 4.2.14; >= 5.0, < 5.0.7
    Fixed in
    4.2.145.0.7· Vendor fix available
    Issue
    An issue was discovered in Django 4.2 before 4.2.14 and 5.0 before 5.0.7. urlize and urlizetrunc were subject to a potential denial of service attack via certain inputs with a very large number of brackets.

    Recommended action: Upgrade to 5.0.7 or 4.2.14 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →