Django 3.2.4 版本发行说明

2021 年 6 月 2 日

Django 3.2.4 修复了 3.2.3 中的两个安全问题和几个漏洞。

CVE-2021-33203:通过 admindocs 进行潜在的目录遍历

工作人员可以使用 admindocs TemplateDetailView 视图来检查任意文件的存在。此外,如果(也只有在)默认的管理文档模板被开发者自定义为暴露文件内容,那么不仅是文件的存在,文件内容也会被暴露。

作为一种缓解措施,现在应用了路径净化,只有模板根目录下的文件可以被加载。

CVE-2021-33571:由于验证器接受 IPv4 地址中的前导零,可能会出现不确定的 SSRF、RFI 和 LFI 攻击

URLValidatorvalidate_ipv4_address()validate_ipv46_address() 没有禁止八进制字的前导零。如果你使用这样的值,你可能遭受不确定的 SSRF、RFI 和 LFI 攻击。

validate_ipv4_address()validate_ipv46_address() 验证器在 Python 3.9.5+ 上不受影响。

漏洞修复

  • 修正了 Django 3.2 中的一个漏洞,当把未认证的用户重定向到登录页面时,管理中的最终全局视图没有尊重服务器提供的 SCRIPT_NAME 的值(#32754)。
  • 修正了 Django 3.2 中的一个漏洞,即系统检查会在抽象模型上崩溃(#32733)。
  • 防止 Django 3.2 中不必要地初始化未使用缓存的缺陷(#32747)。
  • 修正了 Django 3.2 中的一个崩溃问题,在安装了 Windows colorama 库的情况下,以推荐的设置运行 mod_wsgi 时,可能会发生崩溃(#32740)。
  • 修正了 Django 3.2 中的一个漏洞,当目录路径用字符串指定时,会触发模板变化的自动重载程序(#32744)。
  • 修正了 Django 3.2 中的一个缺陷,该缺陷导致自动加载器在出现 AttributeError 时崩溃,例如在 Conda 环境中(#32783)。
  • 修正了 Django 3.2 中的一个缺陷,该缺陷导致在 MySQL 上使用 DecimalField 进行操作时的精度损失(#32793)。
Back to Top