2022 年 1 月 4 日
Django 4.0.1 修复了一个"中等"严重性的安全问题,两个"低"严重性的安全问题,以及 4.0 版本中的几个错误。
UserAttributeSimilarityValidator
中存在拒绝服务的可能性¶UserAttributeSimilarityValidator
在评估相对于比较值人工过大的提交密码时产生了显着的开销。在假设用户注册的访问是不受限制的情况下,这为拒绝服务攻击提供了潜在的攻击矢量。
为了缓解这个问题,UserAttributeSimilarityValidator
现在会忽略相对较长的值。
根据 Django 安全政策,这个问题的严重性为“中等”。
dictsort
模板过滤器中存在潜在的信息泄露漏洞¶由于利用了 Django 模板语言的变量解析逻辑,如果传递了一个经过适当精心制作的键,dictsort
模板过滤器有潜在的信息泄露或意外的方法调用漏洞。
为了避免这种可能性,dictsort
现在使用了受限的解析逻辑,不会调用方法,也不允许在字典上进行索引。
提醒一下,所有不受信任的用户输入在使用前都应进行验证。
根据 Django 安全政策,这个问题的严重性为“低”。
Storage.save()
可能存在目录遍历漏洞¶如果直接传递经过适当精心制作的文件名,Storage.save()
允许目录遍历。
根据 Django 安全政策,这个问题的严重性为“低”。
修复了 Django 4.0 中的一个回归问题,该问题导致在名为 form
的表单集上调用 assertFormsetError()
时崩溃(#33346)。
修复了 Django 4.0 中的一个错误,该错误导致在使用 RedisCache
后端时布尔值引发崩溃(#33361)。
在 Django 4.0 中放宽了对于在 django.views.decorators.cache.cache_control()
和 never_cache()
装饰器中使用鸭子类型的 HttpRequest
的检查,以重新允许这种用法(#33350)。
修复了 Django 4.0 中的一个回归问题,该问题导致创建引用可交换模型(如 auth.User
)的模型的虚假迁移(#33366)。
修复了 几何集合 和 Polygon
中的一个长期存在的 bug,该 bug 导致在某些平台上崩溃(在 macOS 上基于 ARM64
架构的报告)(#32600)。
4月 27, 2025