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

1 августа 2019 г.,

Django 1.11.23 исправляет проблемы безопасности в 1.11.22.

CVE-2019-14232: возможность отказа в обслуживании в django.utils.text.Truncator

Если django.utils.text.Truncator«s chars()и words()методы прошли html=Trueаргумент, они были очень медленными , чтобы оценить определенные входы из - за катастрофическую обратное прослеживание уязвимости в регулярном выражении. chars()И words()методы используются для реализации truncatechars_htmlи truncatewords_htmlфильтров шаблонов, которые были таким образом уязвимыми.

Регулярные выражения, используемые в Truncator, были упрощены, чтобы избежать потенциальных проблем с возвратом. Как следствие, теперь в усеченный вывод могут иногда включаться завершающие знаки препинания.

CVE-2019-14233: возможность отказа в обслуживании в strip_tags()

Из - за поведения базового актива HTMLParser, django.utils.html.strip_tags()будет крайне медленным , чтобы оценить определенные входы , содержащих большие последовательности вложенных неполных HTML сущностей. Этот strip_tags()метод используется для реализации соответствующего striptagsшаблонного фильтра, который, таким образом, также был уязвим.

strip_tags()теперь избегает рекурсивных вызовов HTMLParserпри удалении тегов, но обязательно неполных HTML-сущностей, перестает выполняться .

Помните, что абсолютно НИКАКИХ гарантий strip_tags()безопасности HTML не дается . Поэтому НИКОГДА не помечайте как безопасный результат strip_tags()вызова без предварительного экранирования, например, с помощью django.utils.html.escape().

CVE-2019-14234: возможность внедрения SQL при поиске по ключу и индексу для JSONField/ HStoreField

Key and index lookupsfor JSONFieldи for подвергались SQL-инъекции с использованием специально созданного словаря с расширением словаря, как передано в .key lookupsHStoreField**kwargsQuerySet.filter()

CVE-2019-14235: потенциальная нехватка памяти в django.utils.encoding.uri_to_iri()

Если переданы определенные входные данные, это django.utils.encoding.uri_to_iri()может привести к значительному использованию памяти из-за чрезмерной рекурсии при повторном процентном кодировании недопустимых последовательностей октетов UTF-8.

uri_to_iri() теперь избегает рекурсии при повторном процентном кодировании недопустимых последовательностей октетов UTF-8.

Copyright ©2021 All rights reserved