Django 1.5.4 版本发行说明¶
2013 年 9 月 14 日
这是 Django 1.5.4,是 Django 1.5 系列的第四个版本。它解决了两个安全问题和一个 bug 。
通过密码哈希器实现拒绝服务攻击¶
在以前的 Django 版本中,没有对密码明文长度施加限制。这允许通过提交虚假但极大的密码进行拒绝服务攻击,耗费服务器资源执行相应散列的计算(随着密码长度的增加,计算越来越昂贵)。
从 1.5.4 版本开始,Django 的身份验证框架对密码设置了 4096 字节的限制,如果提交的密码长度超过限制,身份验证将失败。
在 django.contrib.auth
的管理员界面中,修正了对 sensitive_post_parameters()
的使用¶
对 add_view
和 user_change_password
用户管理视图的装饰使用 sensitive_post_parameters()
时没有包括 method_decorator()
(因为这些视图是方法),导致装饰器未正确应用。这个使用已经被修复,现在如果不正确使用 sensitive_post_parameters()
,将引发异常。
漏洞修复¶
修复了一个 bug,该 bug 阻止了使用
prefetch_related()
的查询集被多次 pickled 和 unpickled(第二次 pickling 尝试会引发异常)(#21102)。