August 1, 2019
Django 1.11.23修复了1.11.22中的安全问题。
django.utils.text.Truncator
¶如果 django.utils.text.Truncator
%s chars()
和 words()
方法已通过 html=True
争论说,由于正规表达中存在灾难性的回溯漏洞,他们评估某些输入的速度极其缓慢。的 chars()
和 words()
方法用于实现 truncatechars_html
和 truncatewords_html
模板过滤器,因此很容易受到攻击。
使用的正规表达式 Truncator
已被简化,以避免潜在的回溯问题。因此,尾随标点符号现在有时可能会被包括在截断的输出中。
JSONField
/HStoreField
¶Key and index lookups
为 django.contrib.postgres.fields.JSONField
和 key lookups
为 HStoreField
使用精心设计的字典进行SQL注入,并进行字典扩展,作为 **kwargs
已传递给 QuerySet.filter()
。
django.utils.encoding.uri_to_iri()
¶如果通过了某些输入, django.utils.encoding.uri_to_iri()
重新对无效的UTF-8八位组序列进行百分比编码时,由于过度的回归,可能会导致大量内存使用。
uri_to_iri()
现在,在重新对无效的UTF-8八位组序列进行百分比编码时,可以避免迭代。
7月 22, 2024