Related Vulnerabilities: CVE-2022-28346  

An issue was discovered in Django 2.2 before 2.2.28, 3.2 before 3.2.13, and 4.0 before 4.0.4. QuerySet.annotate(), aggregate(), and extra() methods are subject to SQL injection in column aliases via a crafted dictionary (with dictionary expansion) as the passed **kwargs.

Description

The MITRE CVE dictionary describes this issue as:

An issue was discovered in Django 2.2 before 2.2.28, 3.2 before 3.2.13, and 4.0 before 4.0.4. QuerySet.annotate(), aggregate(), and extra() methods are subject to SQL injection in column aliases via a crafted dictionary (with dictionary expansion) as the passed **kwargs.

Additional Information

  • Bugzilla 2072447: CVE-2022-28346 Django: Potential SQL injection in QuerySet.annotate(),aggregate() and extra()
  • CWE-89: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
  • FAQ: Frequently asked questions about CVE-2022-28346