• 3.2
  • 5.0
  • 6.1
  • Версия документации: 3.1

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

1 февраля 2022 г.

В Django 4.0.2 исправлены две проблемы безопасности со средней степенью серьезности и несколько ошибок в версии 4.0.1. Кроме того, включены последние переводы строк от Transifex, с особым упоминанием болгарского языка (полностью переведенный).

CVE-2022-22818: возможен XSS через тег шаблона {% debug %}.

Тег шаблона {% debug %} неправильно закодировал текущий контекст, создавая вектор атаки XSS.

Чтобы избежать этой уязвимости, {% debug %} больше не выводит информацию, если для параметра DEBUG установлено значение False, и гарантирует, что все контекстные переменные корректно экранируются, если для параметра DEBUG установлено значение True.

CVE-2022-23833: возможность отказа в обслуживании при загрузке файлов.

Передача определенных входных данных в составные формы может привести к бесконечному циклу при анализе файлов.

Исправления

  • Исправлена ​​ошибка в Django 4.0, из-за которой TestCase.captureOnCommitCallbacks() мог выполнять обратные вызовы несколько раз (#33410).

  • Исправлена ​​регрессия в Django 4.0, где help_text экранировался HTML в автоматически сгенерированных формах (#33419).

  • Исправлена ​​регрессия в Django 4.0, приводившая к отображению неправильного имени для представлений на основе классов на технической странице отладки 404 (#33425).

  • Исправлена ​​регрессия в Django 4.0, приводившая к неправильному воспроизведению ResolverMatch для представлений на основе классов (#33426).

  • Исправлена ​​регрессия в Django 4.0, приводившая к сбою makemigrations на моделях без Meta.order_with_respect_to, но с полем с именем _order (:ticket:33449).

  • Исправлена ​​регрессия в Django 4.0, приводившая к неправильному расположению ModelAdmin.radio_fields в панели администратора (#33407).

  • Исправлена ​​регрессия повторяющихся операций в Django 4.0, приводившая к сбою миграции при изменении типа первичного ключа для конкретной родительской модели, на которую ссылается внешний ключ (#33462).

  • Исправлена ​​ошибка в Django 4.0, приводившая к сбою QuerySet.aggregate() после annotate() в агрегатной функции с default (#33468).

  • Исправлена ​​регрессия в Django 4.0, приводившая к сбою makemigrations при переименовании поля переименованной модели (#33480).

Back to Top