2018年2月1日
Django1.11.10修复了1.11.9中的一个安全问题和几个错误。
AuthenticationForm
¶Django 1.11.8的回归 AuthenticationForm
运行其 confirm_login_allowed()
方法,即使输入了错误的密码。这可能泄漏有关用户的信息,具体取决于什么消息 confirm_login_allowed()
加薪。如果 confirm_login_allowed()
不会被覆盖,攻击者输入任意用户名并查看该用户是否已设置为 is_active=False
.如果 confirm_login_allowed()
如果被覆盖,可能会泄露更敏感的细节。
这个问题已得到解决,但需要注意的是 AuthenticationForm
无法再引发“此帐户处于非活动状态”。如果验证后端拒绝非活动用户(默认验证后端, ModelBackend
从Django 1.10起就开始了。这一问题将在Django 2.1中重新讨论,作为解决该警告的一种解决方案,该警告很可能具有太大的侵入性,无法包含在旧版本中。
12月 18, 2023