2024 年 12 月 4 日
Django 5.0.10 修复了 5.0.9 中一个严重程度为“高”的安全问题和一个严重程度为“中等”的安全问题。
strip_tags()
strip_tags() 在处理某些包含大量嵌套不完整 HTML 实体的输入时,评估速度会极其缓慢。strip_tags() 方法用于实现相应的 striptags 模板过滤器,因此该过滤器也容易受到攻击。
striptags
strip_tags() 现在在引发 SuspiciousOperation 异常之前,对 HTMLParser 的递归调用次数设置了上限。
SuspiciousOperation
HTMLParser
请记住,strip_tags() 的结果绝对不保证是安全的 HTML。因此,在将 strip_tags() 调用的结果标记为安全之前,绝对不要忘记首先进行转义,例如使用 django.utils.html.escape()。
django.utils.html.escape()
HasKey(lhs, rhs)
在 Oracle 上直接使用 django.db.models.fields.json.HasKey 查找时,如果将不受信任的数据用作 lhs 值,可能会受到 SQL 注入攻击。
django.db.models.fields.json.HasKey
lhs
通过 __ 语法使用 has_key 查找的应用程序不受影响。
__
has_key
Django 5.0.11 release notes
Django 5.0.9 版本发行说明
4月 20, 2026
本文整理自 Django 6.0 官方中文文档,转载请注明出处。
上一篇:邮件元数据泄露有多可怕?Proton Mail 元数据保护机制全解析
下一篇:Django 5.0.11 release notes — Django 6.0.4 documentation(2026)