CVE-2026-1287
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. `FilteredRelation` is subject to SQL injection in column aliases via control characters, using a suitably crafted dictionary, with dictionary expansion, as the `**kwargs` passed to `QuerySet` methods `annotate()`, `aggregate()`, `extra()`, `values()`, `values_list()`, and `alias()`. 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.
How to fix
- djangoproject django4.2.28, 5.2.11, 6.0.2 or later
- django6.0.2, 5.2.11, 4.2.28 or later
- docs.djangoproject.com/en/dev/releases/security/
- djangoproject.com/weblog/2026/feb/03/security-releases/
- access.redhat.com/errata/RHSA-2026:3959
- access.redhat.com/errata/RHSA-2026:5971
- access.redhat.com/errata/RHSA-2026:3958
- access.redhat.com/errata/RHSA-2026:5970
- access.redhat.com/errata/RHSA-2026:14835
- access.redhat.com/errata/RHSA-2026:3962
- access.redhat.com/errata/RHSA-2026:3960
- access.redhat.com/errata/RHSA-2026:2694
- access.redhat.com/errata/RHSA-2026:6291
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| djangoproject django | 4.2 ≤ v < 4.2.28, 5.2 ≤ v < 5.2.11, 6.0 ≤ v < 6.0.2 | 4.2.28, 5.2.11, 6.0.2 |
| djangoPyPI | 6.0a1 ≤ v < 6.0.2, 5.2a1 ≤ v < 5.2.11, 4.2a1 ≤ v < 4.2.28, 4.2 ≤ v < 4.2.28, 5.2 ≤ v < 5.2.11, 6.0 ≤ v < 6.0.2 | 6.0.2, 5.2.11, 4.2.28 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.