Skip to main content
← All vulnerabilities
CVE-2025-13372GHSA-RQW2-GHQ9-44M7BIT-DJANGO-2025-13372PYSEC-2025-104

Potential SQL injection in FilteredRelation column aliases on PostgreSQL

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.2.9, 5.1.15, 4.2.27
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

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.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • django

    From 5.2 · fixed in 5.2.9; From 5.1 · fixed in 5.1.15; From 4.2 · fixed in 4.2.27

  • djangoPyPI

    From 5.2a1 · fixed in 5.2.9

  • djangoPyPI

    From 5.1a1 · fixed in 5.1.15

  • djangoPyPI

    From 4.2a1 · fixed in 4.2.27

  • djangoPyPI

    From 4.2 · fixed in 4.2.27; From 5.1 · fixed in 5.1.15; From 5.2 · fixed in 5.2.9

References 3

docs.djangoproject.com

groups.google.com

djangoproject.com