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

Апрель 4, 2017

Django 1.9.13 исправляет две проблемы безопасности и ошибку в 1.9.12. Это финальный выпуск серии 1.9.x.

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(), мог перенаправить на любой другой домен. Представление больше не делает никаких перенаправлений, поскольку они не обеспечивают никакой известной полезной функциональности.

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

Исправления

  • Исправлена ошибка в фильтрах timesince и timeuntil, которая приводила к неправильным результатам для дат в високосном году (#27637).
Вернуться на верх