Примечания к выпуску Django 3.0.7

3 июня 2020

Django 3.0.7 исправляет две проблемы безопасности и несколько ошибок в 3.0.6.

CVE-2020-13254: Потенциальная утечка данных через неправильно сформированные ключи memcached

В случаях, когда бэкенд memcached не выполняет проверку ключей, передача неправильно сформированных ключей кэша может привести к столкновению ключей и потенциальной утечке данных. Чтобы избежать этой уязвимости, в бэкенды кэша memcached добавлена проверка ключей.

CVE-2020-13596: Возможный XSS через администратора ForeignKeyRawIdWidget

Параметры запроса для администратора ForeignKeyRawIdWidget не были правильно закодированы в URL, что создавало вектор XSS-атаки. Теперь ForeignKeyRawIdWidget обеспечивает правильное кодирование URL параметров запроса.

Исправления

  • Исправлена регрессия в Django 3.0, восстановлена возможность использования поиска полей в Meta.ordering (#31538).
  • Исправлена регрессия в Django 3.0, когда QuerySet.values() и values_list() аварийно завершались, если набор запросов содержал агрегацию и аннотацию подзапроса (#31566).
  • Исправлена ошибка в Django 3.0, когда агрегаты использовали неправильные аннотации, когда набор запросов имел несколько аннотаций подзапросов (#31568).
  • Исправлена регрессия в Django 3.0, когда QuerySet.values() и values_list() аварийно завершались, если кверисет содержал агрегацию и аннотацию Exists() на Oracle (#31584).
  • Исправлена регрессия в Django 3.0, когда все разрешенные выражения Subquery() считались равными (#31607).
  • Исправлена регрессия в Django 3.0.5, которая влияла на загрузку переводов для приложений, предоставляющих переводы для территориальных вариантов языка, а также общего языка, когда проект имеет различные уравнения множественного числа для языка (#31570).
  • Отслеживание выпуска безопасности jQuery, обновление версии jQuery, используемой администратором, с 3.4.1 до 3.5.1.
Вернуться на верх