SQL injection in Django - CVE-2019-14234

 

SQL injection in Django - CVE-2019-14234

Published: August 1, 2019


Vulnerability identifier: #VU19619
CSH Severity: High
CVSS v4: 9.3 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N]
CVE-ID: CVE-2019-14234
CWE-ID: CWE-89
Exploitation vector: Remote access
Exploit availability: No public exploit available

Vulnerability details

The vulnerability allows a remote attacker to execute arbitrary SQL queries in database.

The vulnerability exists due to insufficient sanitization of user-supplied data in django.contrib.postgres.fields.JSONField and django.contrib.postgres.fields.HStoreField. A remote attacker can send a specially crafted request to the affected application and execute arbitrary SQL commands within the application database.

Successful exploitation of this vulnerability may allow a remote attacker to read, delete, modify data in database and gain complete control over the affected application.


Affected software

Django
Gentoo Linux
Arch Linux
Fedora
SUSE Linux
Opensuse
py-django (Alpine package)
python-django (Ubuntu package)
python-django (Debian package)
python-django
python-django (Red Hat package)
Red Hat OpenStack
Red Hat OpenStack for IBM Power

How to mitigate CVE-2019-14234

Install updates from vendor's website.

Django - addressed in versions 1.11.23, 2.1.11, 2.2.4
py-django (Alpine package) - update to 1.11.23-r0
python-django (Ubuntu package) - addressed in versions 1.8.7-1ubuntu5.10, 1:1.11.11-1ubuntu1.5, 1:1.11.20-1ubuntu0.2
python-django (Debian package) - update to 1:1.10.7-2+deb9u6
python-django - addressed in versions 1.11.23-1.el7, 2.1.11-1.fc30
python-django (Red Hat package) - update to 2.1.11-1.el8ost

External References

Related Security Bulletins