Django 4.2.14发布说明

July 9, 2024

Django 4.2.14修复了4.2.13中严重程度为“中等”的两个安全问题和严重程度为“低”的两个安全问题。

UTE-2024-38875:中的潜在拒绝服务漏洞 django.utils.html.urlize()

urlizeurlizetrunc 通过具有非常大量括号的某些输入而受到潜在的拒绝服务攻击。

UTE-2024-39329:通过时间差对密码不可用的用户进行枚举

这个 authenticate() 该方法允许远程攻击者通过计时攻击来列举用户,该攻击涉及对具有不可用密码的用户的登录请求。

UTE-2024-39330:潜在的目录穿越 Storage.save()

的衍生类 Storage 覆盖的Base类 generate_filename() 无需复制父类中现有的文件路径验证,允许在调用时通过某些输入进行潜在的目录穿越 save()

内置 Storage 子类不受此漏洞的影响。

UTE-2024-39614:中的潜在拒绝服务漏洞 get_supported_language_variant()

get_supported_language_variant() 当与包含特定字符的非常长的字符串一起使用时,会受到潜在的拒绝服务攻击。

为了缓解此漏洞,提供的语言代码 get_supported_language_variant() 现在解析的最大长度为500个字符。

当语言代码超过500个字符时, ValueError 如果 strictTrue ,或者如果没有通用变体, strictFalse