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).
{
"binaries": [
{
"binary_version": "1.8.7-1ubuntu5.15+esm9",
"binary_name": "python-django"
},
{
"binary_version": "1.8.7-1ubuntu5.15+esm9",
"binary_name": "python-django-common"
},
{
"binary_version": "1.8.7-1ubuntu5.15+esm9",
"binary_name": "python3-django"
}
],
"availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro"
}{
"binaries": [
{
"binary_version": "1:1.11.11-1ubuntu1.21+esm12",
"binary_name": "python-django"
},
{
"binary_version": "1:1.11.11-1ubuntu1.21+esm12",
"binary_name": "python-django-common"
},
{
"binary_version": "1:1.11.11-1ubuntu1.21+esm12",
"binary_name": "python3-django"
}
],
"availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro"
}