Skip to content
Fencer Vulns
critical 9.8

CVE-2020-7471 in the critical feed json

SQL injection in Django

published 2020-02-03 6 y ago modified 2026-09-08 2 mo ago also BIT-django-2020-7471 , EUVD-2020-0071 , GHSA-hmr4-m2h5-33qx , PYSEC-2020-35

cvss
9.8
version 3.1, NVD
cisa kev
Not listed
not in CISA's catalog
epss
65.6%
EPSS 65.6% chance of exploitation in 30 days, percentile 99.2%
public exploits
0
none known

Summary

Django 1.11 before 1.11.28, 2.2 before 2.2.10, and 3.0 before 3.0.3 allows SQL Injection if untrusted data is used as a StringAgg delimiter (e.g., in Django applications that offer downloads of data as a series of rows with a user-specified column delimiter). By passing a suitably crafted delimiter to a contrib.postgres.aggregates.StringAgg instance, it was possible to break escaping and inject malicious SQL.

Patch / fix

  • pypi django 1.11.28, 2.2.10, 3.0.3
  • bitnami django 1.11.28, 2.2.10, 3.0.3
  • djangoproject django 1.11.28, 2.2.10, 3.0.3
  • python-django Debian 14, Debian 13, Debian 12 2:2.2.10-1

debian advisories DEBIAN-CVE-2020-7471

  • python-django Ubuntu 18.04 LTS 1:1.11.11-1ubuntu1.7

ubuntu advisories UBUNTU-CVE-2020-7471

Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

  • storm OpenStack Cloud Crowbar 8, OpenStack Cloud 8, HPE Helion OpenStack 8 1.2.3-3.6.1
  • ansible OpenStack Cloud Crowbar 8, OpenStack Cloud 8, HPE Helion OpenStack 8 2.9.14-3.15.1
  • grafana OpenStack Cloud Crowbar 8, OpenStack Cloud 8, HPE Helion OpenStack 8 6.7.4-4.12.1
  • ardana-mq OpenStack Cloud 8, HPE Helion OpenStack 8 8.0+git.1593618123.678c32b-3.26.1
  • ardana-nova OpenStack Cloud 8, HPE Helion OpenStack 8 8.0+git.1601298847.dd01585-3.42.1
  • crowbar-core OpenStack Cloud Crowbar 8 5.0+git.1600432272.b3ad722f0-3.44.1
  • python-kombu OpenStack Cloud Crowbar 8, OpenStack Cloud 8, HPE Helion OpenStack 8 4.1.0-3.7.1
  • ardana-cinder OpenStack Cloud 8, HPE Helion OpenStack 8 8.0+git.1596129856.263f430-3.43.1

suse advisories SUSE-SU-2020:3309-1SUSE-RU-2020:2161-1

  • python-Django5 openSUSE Tumbleweed 5.2.16-1.1
  • python-Django openSUSE Tumbleweed 5.2.16-1.1
  • python-Django4 openSUSE Tumbleweed 4.2.30-4.1
  • python-Django6 openSUSE Tumbleweed 6.0-1.1
  • python-Django4 openSUSE Tumbleweed 4.2.14-1.1
  • python-Django openSUSE Tumbleweed 3.2.7-2.3
  • python-Django openSUSE Tumbleweed 4.2.11-2.1

opensuse advisories openSUSE-SU-2026:11270-1openSUSE-SU-2026:11248-1openSUSE-SU-2026:11235-1openSUSE-SU-2026:10005-1openSUSE-SU-2024:14208-1openSUSE-SU-2024:11205-1

  • py-django Alpine 3.10, Alpine 3.9, Alpine 3.8 1.11.28-r0
  • py3-django Alpine 3.24, Alpine 3.23, Alpine 3.22 +11 more 1.11.28-r0

alpine advisories ALPINE-CVE-2020-7471

Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

  • python-django Arch Linux 3.0.3-1

arch linux advisories AVG-1091

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2020-7471 updated cvss 9.8

django: potential SQL injection via StringAgg(delimiter)

  • Red Hat Ceph Storage 2 python-django, python-django-bash-completion Red Hat OpenStack Platform 10 (Newton) python-django, python-django-bash-completion
    affected: no fix planned “Out of support scope”
  • Red Hat OpenStack Platform 13 (Queens) python-django, python2-django, python-django-bash-completion Red Hat OpenStack Platform 15 (Stein) python-django, python3-django, python-django-bash-completion Red Hat OpenStack Platform 16 (Train) python-django, python3-django, python-django-bash-completion Red Hat Satellite 6 python-django, python2-django, python-django-bash-completion Red Hat Storage 3 python-django, python2-django, python-django-bash-completion
    affected: no fix available “Fix deferred”
  • Red Hat Update Infrastructure 3 for Cloud Providers python-django
    affected: no fix planned “Will not fix”
  • Red Hat Ceph Storage 3 python-django, python-django-bash-completion Red Hat Certification for Red Hat Enterprise Linux 7 python-django
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

Exploit prediction

65.58% chance of exploitation in the next 30 days, higher than 99.2% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
GitHub 3.1 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
NVD 3.1 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
NVD 2.0 7.5 AV:N/AC:L/Au:N/C:P/I:P/A:P
OSV 3.1 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Affected packages

ecosystem package affected fixed in
pypi django
<1.11.28
>=2.0, <2.2.10
>=3.0, <3.0.3
>=1.11, <1.11.28
>=2.2, <2.2.10
1.11.28
2.2.10
3.0.3
bitnami django
>=1.11.0, <1.11.28
>=2.2.0, <2.2.10
>=3.0.0, <3.0.3
1.11.28
2.2.10
3.0.3

Classification

Weakness
  • CWE-89 Improper Neutralization of Special Elements used in an SQL Command
Technology feeds

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.