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

1 июля 2019 года

Django 2.1.10 исправляет проблему безопасности в версии 2.1.9.

CVE-2019-12781: Некорректное обнаружение HTTP при подключении обратного прокси-сервера через HTTPS

При развертывании за обратным прокси, подключающимся к Django через HTTPS, django.http.HttpRequest.scheme неправильно определяет запросы клиентов, сделанные через HTTP, как использующие HTTPS. Это приводит к неправильным результатам для is_secure(), и build_absolute_uri(), а также к тому, что HTTP запросы не будут перенаправлены на HTTPS в соответствии с SECURE_SSL_REDIRECT.

HttpRequest.scheme теперь уважает SECURE_PROXY_SSL_HEADER, если он настроен, и соответствующий заголовок установлен в запросе, как для HTTP, так и для HTTPS запросов.

Если вы развертываете Django за обратным прокси, который перенаправляет HTTP запросы, и который подключается к Django через HTTPS, убедитесь, что ваше приложение правильно обрабатывает пути кода, полагающиеся на scheme, is_secure(), build_absolute_uri() и SECURE_SSL_REDIRECT.

Вернуться на верх