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

Апрель 4, 2017

Django 1.10.7 исправляет две проблемы безопасности и ошибку в 1.10.6.

CVE-2017-7233: Открытое перенаправление и возможная XSS-атака через заданные пользователем числовые URL перенаправления

Django полагается на ввод пользователя в некоторых случаях (например, django.contrib.auth.views.login() и i18n), чтобы перенаправить пользователя на URL «при успехе». Проверка безопасности для этих перенаправлений (а именно django.utils.http.is_safe_url()) считает некоторые числовые URL (например, http:999999999) «безопасными», когда они не должны быть таковыми.

Кроме того, если разработчик полагается на is_safe_url() для обеспечения безопасных целей перенаправления и помещает такой URL в ссылку, он может пострадать от XSS-атаки.

CVE-2017-7234: Уязвимость открытого перенаправления в django.views.static.serve()

Злонамеренно созданный URL-адрес сайта Django, использующего представление serve(), мог перенаправить на любой другой домен. Представление больше не делает никаких перенаправлений, поскольку они не обеспечивают никакой известной полезной функциональности.

Обратите внимание, однако, что этот вид всегда сопровождался предупреждением о том, что он не закален для производственного использования и должен использоваться только в качестве вспомогательного средства для развития.

Исправления

  • Сделано так, что RelatedFieldWidgetWrapper администратора использует метод value_omitted_from_data() обернутого виджета (#27905).
  • Исправлен откат формы модели default для SelectMultiple (#27993).
Вернуться на верх