Description
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.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| djangoproject | Django | 5.2 – < 5.2.9, 5.1 – < 5.1.15, 4.2 – < 4.2.27 | 5.2.9 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | python-django | 3:4.2.27-1 | — |
| Debian 13 | python-django | 3:4.2.27-0+deb13u1 | DSA-6117-1 |
| Debian 12 | python-django | 3:3.2.25-0+deb12u1 | DSA-6136-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.04 LTS | python-django | 3:5.2.9-0ubuntu1 | — |
| Ubuntu 25.10 | python-django | 3:5.2.4-1ubuntu2.2 | USN-7903-1 |
| Ubuntu 24.04 LTS | python-django | 3:4.2.11-1ubuntu1.13 | USN-7903-1 |
| Ubuntu 22.04 LTS | python-django | 2:3.2.12-2ubuntu1.24 | USN-7903-1 |
Show 4 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 20.04 LTS | python-django | 2:2.2.12-1ubuntu0.29+esm6 | USN-7903-1 |
| Ubuntu Pro 18.04 LTS | python-django | 1:1.11.11-1ubuntu1.21+esm13 | USN-7903-1 |
| Ubuntu Pro 16.04 LTS | python-django | 1.8.7-1ubuntu5.15+esm10 | USN-7903-1 |
| Ubuntu Pro 14.04 LTS | python-django | 1.6.11-0ubuntu1.3+esm9 | USN-7903-1 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 15 SP7 | python-Django | 4.2.11-150600.3.44.1 | SUSE-SU-2025:4384-1 |
| SLES 15 SP6 | python-Django | 4.2.11-150600.3.44.1 | SUSE-SU-2025:4384-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | python-Django | 5.2.9-1.1 | openSUSE-SU-2025:15805-1 |
| openSUSE Tumbleweed | python-Django4 | 4.2.27-1.1 | openSUSE-SU-2025:15806-1 |
| openSUSE Tumbleweed | python-Django5 | 5.2.16-1.1 | openSUSE-SU-2026:11270-1 |
| openSUSE Tumbleweed | python-Django6 | 6.0-1.1 | openSUSE-SU-2026:10005-1 |
| openSUSE Leap 16.0 | python-Django | 5.2.4-bp160.4.1 | openSUSE-SU-2025:20153-1 |
| openSUSE Leap 15.6 | python-Django | 4.2.11-150600.3.44.1 | SUSE-SU-2025:4384-1 |
Alpine
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.24 | py3-django | 4.2.27-r0 | — |
| Alpine v3.23 | py3-django | 4.2.27-r0 | — |
| Alpine v3.22 | py3-django | 4.2.27-r0 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | django | >= 5.2a1, < 5.2.9 | 5.2.9 | GHSA-rqw2-ghq9-44m7 |
| PyPI | django | >= 5.1a1, < 5.1.15 | 5.1.15 | GHSA-rqw2-ghq9-44m7 |
| PyPI | django | >= 4.2a1, < 4.2.27 | 4.2.27 | GHSA-rqw2-ghq9-44m7 |
| PyPI | django | >= 4.2, < 4.2.27 · >= 5.1, < 5.1.15 · >= 5.2, < 5.2.9 | 4.2.27, 5.1.15, 5.2.9 | PYSEC-2025-104 |
Advisories 11
- WID-SEC-2026-0489 Xerox FreeFlow Print Server: Mehrere Schwachstellen ermöglichen nicht spezifizierten Angriff BSI CERT-Bund (WID) · Oct 21, 2026
- openSUSE-SU-2026:11270-1 python313-Django5-5.2.16-1.1 on GA media SUSE / openSUSE Security Updates · Jul 15, 2026
- USN-7903-1 python-django vulnerabilities Ubuntu Security Notices (USN) · Jun 25, 2026
- openSUSE-SU-2026:10005-1 python312-Django6-6.0-1.1 on GA media SUSE / openSUSE Security Updates · Mar 23, 2026
- openSUSE-SU-2025:20153-1 Security update for python-Django SUSE / openSUSE Security Updates · Mar 23, 2026
- openSUSE-SU-2025:15806-1 python311-Django4-4.2.27-1.1 on GA media SUSE / openSUSE Security Updates · Mar 23, 2026
- openSUSE-SU-2025:15805-1 python311-Django-5.2.9-1.1 on GA media SUSE / openSUSE Security Updates · Mar 23, 2026
- WID-SEC-2025-2717 Django: Mehrere Schwachstellen BSI CERT-Bund (WID) · Feb 15, 2026
- DSA-6136-1 python-django - security update Debian Security (DSA / DLA) · Feb 15, 2026
- SUSE-SU-2025:4384-1 Security update for python-Django SUSE / openSUSE Security Updates · Feb 4, 2026
- DSA-6117-1 python-django - security update Debian Security (DSA / DLA) · Jan 31, 2026
References
- Django security archive vendor-advisory
- Django releases announcements mailing-list
- Django security releases issued: 5.2.9, 5.1.15, and 4.2.27 vendor-advisory