CVE-2025-59681: Django vulnerable to SQL injection in column aliases
(updated )
An issue was discovered in Django 4.2 before 4.2.25, 5.1 before 5.1.13, and 5.2 before 5.2.7. QuerySet.annotate(), QuerySet.alias(), QuerySet.aggregate(), and QuerySet.extra() are subject to SQL injection in column aliases, when using a suitably crafted dictionary, with dictionary expansion, as the **kwargs passed to these methods (on MySQL and MariaDB).
References
- docs.djangoproject.com/en/dev/releases/security
- github.com/advisories/GHSA-hpr9-3m2g-3j9p
- github.com/django/django
- github.com/django/django/commit/41b43c74bda19753c757036673ea9db74acf494a
- github.com/django/django/commit/43d84aef04a9e71164c21a74885996981857e66e
- groups.google.com/g/django-announce
- nvd.nist.gov/vuln/detail/CVE-2025-59681
- www.djangoproject.com/weblog/2025/oct/01/security-releases
Code Behaviors & Features
Detect and mitigate CVE-2025-59681 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →