Примечания к выпуску Django 3.2.5¶
1 июля 2021 г.
В Django 3.2.5 исправлена проблема безопасности с «высоким уровнем серьезности» и несколько ошибок в версии 3.2.4. Кроме того, включены последние переводы строк от Transifex.
CVE-2021-35042: потенциальное внедрение SQL-кода через необработанный ввод QuerySet.order_by().¶
Необработанный пользовательский ввод, переданный в QuerySet.order_by(), может обойти запланированную проверку ссылки на столбец в пути, отмеченном как устаревший, что приведет к потенциальному внедрению SQL, даже если будет выдано предупреждение об устаревании.
В качестве меры по смягчению последствий строгая проверка ссылок на столбцы была восстановлена на период прекращения поддержки. Эта регрессия появилась в версии 3.1 как побочный эффект исправления #31426.
Проблема отсутствует в основной ветке, поскольку устаревший путь был удален.
Исправления¶
Исправлена регрессия в Django 3.2, приводившая к сбою
QuerySet.values_list(…, Name=True)послеprefetch_related()(#32812).Исправлена ошибка в Django 3.2, приводившая к сбою миграции в MySQL 8.0.13+ при изменении
BinaryField,JSONFieldилиTextFieldна ненулевое значение (#32503).Исправлена регрессия в Django 3.2, приводившая к сбою миграции в MySQL 8.0.13+ при добавлении обнуляемого
BinaryField,JSONFieldилиTextFieldсо значением по умолчанию (#32832).Исправлена ошибка в Django 3.2, из-за которой проверка системы завершалась сбоем для модели с недопустимым
app_label(#32863).