{"id":"PYSEC-2025-106","details":"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).","aliases":["BIT-django-2025-59681","CVE-2025-59681","GHSA-hpr9-3m2g-3j9p"],"modified":"2026-06-10T17:01:10.861599705Z","published":"2025-10-01T19:15:36.487Z","references":[{"type":"WEB","url":"http://www.openwall.com/lists/oss-security/2025/10/01/3"},{"type":"ADVISORY","url":"https://docs.djangoproject.com/en/dev/releases/security/"},{"type":"ADVISORY","url":"https://groups.google.com/g/django-announce"},{"type":"ADVISORY","url":"https://www.djangoproject.com/weblog/2025/oct/01/security-releases/"},{"type":"ADVISORY","url":"https://github.com/advisories/GHSA-hpr9-3m2g-3j9p"}],"affected":[{"package":{"name":"django","ecosystem":"PyPI","purl":"pkg:pypi/django"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.2"},{"fixed":"4.2.25"},{"introduced":"5.1"},{"fixed":"5.1.13"},{"introduced":"5.2"},{"fixed":"5.2.7"}]}],"versions":["4.2","4.2.1","4.2.10","4.2.11","4.2.12","4.2.13","4.2.14","4.2.15","4.2.16","4.2.17","4.2.18","4.2.19","4.2.2","4.2.20","4.2.21","4.2.22","4.2.23","4.2.24","4.2.3","4.2.4","4.2.5","4.2.6","4.2.7","4.2.8","4.2.9","5.1","5.1.1","5.1.10","5.1.11","5.1.12","5.1.2","5.1.3","5.1.4","5.1.5","5.1.6","5.1.7","5.1.8","5.1.9","5.2","5.2.1","5.2.2","5.2.3","5.2.4","5.2.5","5.2.6"],"database_specific":{"source":"https://github.com/pypa/advisory-database/blob/main/vulns/django/PYSEC-2025-106.yaml"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"}]}