Примечания к выпуску 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 ).

Copyright ©2020 All rights reserved