What’s Vulnerable › Vulnerabilities

CVE-2026-1312: Potential SQL injection via QuerySet.order_by and FilteredRelation

Description

An issue was discovered in 6.0 before 6.0.2, 5.2 before 5.2.11, and 4.2 before 4.2.28. `.QuerySet.order_by()` is subject to SQL injection in column aliases containing periods when the same alias is, using a suitably crafted dictionary, with dictionary expansion, used in `FilteredRelation`. 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 Solomon Kebede for reporting this issue.

Affected products

How to fix

Upgrade to a fixed version: Django 4.2.28, 5.2.11, 6.0.2. Check the vendor advisory for mitigations.

References

Get alerted when CVE-2026-1312 or the next vulnerability affects your stack