Description
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.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
n/a n/a
n/aaffected
References
- https://groups.google.com/forum/#%21topic/django-announce/X45S86X5bZI ↗
- https://docs.djangoproject.com/en/3.0/releases/security/ ↗
- https://www.openwall.com/lists/oss-security/2020/02/03/1 ↗
- https://www.djangoproject.com/weblog/2020/feb/03/security-releases/ ↗
- http://www.openwall.com/lists/oss-security/2020/02/03/1 ↗
- https://github.com/django/django/commit/eb31d845323618d688ad429479c6dda973056136 ↗
- https://usn.ubuntu.com/4264-1/ ↗
- https://seclists.org/bugtraq/2020/Feb/30 ↗
- https://www.debian.org/security/2020/dsa-4629 ↗
- https://security.netapp.com/advisory/ntap-20200221-0006/ ↗
- https://security.gentoo.org/glsa/202004-17 ↗
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/4A2AP4T7RKPBCLTI2NNQG3T6MINDUUMZ/ ↗