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

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

9 июля 2024 г.

В Django 5.0.7 исправлены две проблемы безопасности с уровнем серьезности «средний», две проблемы безопасности с уровнем серьезности «низкий» и одна ошибка в версии 5.0.6.

CVE-2024-38875: Потенциальная уязвимость типа «отказ в обслуживании» в django.utils.html.urlize().

urlize и urlizetrunc подвергались потенциальной атаке типа «отказ в обслуживании» через определенные входные данные с очень большим количеством скобок.

CVE-2024-39329: перечисление имен пользователей по разнице во времени для пользователей с непригодными паролями.

Метод authenticate() позволял удаленным злоумышленникам пересчитывать пользователей с помощью временной атаки, включающей запросы на вход для пользователей с непригодными паролями.

CVE-2024-39330: Потенциальный обход каталога с помощью Storage.save().

Производные классы базового класса Storage, которые переопределяют generate_filename() без репликации проверок пути к файлу, существующих в родительском классе, допускают потенциальный обход каталога через определенные входные данные при вызове save().

Эта уязвимость не затронула встроенные подклассы Storage.

CVE-2024-39614: Потенциальная уязвимость типа «отказ в обслуживании» в get_supported_language_variant().

get_supported_language_variant() подвергался потенциальной атаке типа «отказ в обслуживании» при использовании с очень длинными строками, содержащими определенные символы.

Чтобы устранить эту уязвимость, код языка, предоставленный get_supported_language_variant(), теперь анализируется до максимальной длины в 500 символов.

Если код языка превышает 500 символов, теперь будет выдаваться ошибка ValueError, если strict имеет значение True или если не существует общего варианта, а strict имеет значение False.

Исправления

  • Исправлена ​​ошибка в Django 5.0, приводившая к сбою функции Model.full_clean() на несохраненных экземплярах модели с GeneratedField и определенными Meta.constraints (#35560).

Back to Top