Description
An issue was discovered in Django 1.11.x before 1.11.23, 2.1.x before 2.1.11, and 2.2.x before 2.2.4. Due to an error in shallow key transformation, key and index lookups for django.contrib.postgres.fields.JSONField, and key lookups for django.contrib.postgres.fields.HStoreField, were subject to SQL injection. This could, for example, be exploited via crafted use of "OR 1=1" in a key or index name to return all records, using a suitably crafted dictionary, with dictionary expansion, as the **kwargs passed to the QuerySet.filter() function.
Remediation
References
Related Vulnerabilities
WordPress Plugin WPS Hide Login Multiple Security Bypass Vulnerabilities (1.5.2.2)
WordPress Plugin WpPygments Multiple Cross-Site Scripting Vulnerabilities (0.3.2)
Moodle Permissions, Privileges, and Access Controls Vulnerability (CVE-2016-2190)
Squid Permissions, Privileges, and Access Controls Vulnerability (CVE-2014-9749)
Atlassian Jira Improper Authentication Vulnerability (CVE-2021-41312)