Django 发布安全更新:4.2.1、4.1.9 和 3.2.19

作者:Mariusz Felisiak 发布于 2023年5月3日

根据我们的安全发布策略,Django 团队发布了Django 4.2.1Django 4.1.9Django 3.2.19。这些版本修复了下面详述的安全问题。我们鼓励所有 Django 用户尽快升级。

CVE-2023-31047:使用一个表单字段上传多个文件时可能绕过验证

使用一个表单字段上传多个文件从未被forms.FileFieldforms.ImageField支持,因为只有最后一个上传的文件会被验证。不幸的是,上传多个文件主题暗示了相反的情况。

为了避免此漏洞,ClearableFileInputFileInput表单组件现在会在multipleHTML 属性设置在其上时引发ValueError。要防止此异常并保持旧行为,请将allow_multiple_selected设置为True.

有关使用新属性和通过单个字段处理多个文件的更多详细信息,请参阅上传多个文件

感谢 Moataz Al-Sharida 和 nawaik 报告此问题。

根据 Django 安全策略,此问题的严重程度为“低”。

受影响的支持版本

  • Django 主分支
  • Django 4.2
  • Django 4.1
  • Django 3.2

解决方案

已将解决此问题的补丁应用于 Django 的主分支以及 4.2、4.1 和 3.2 发布分支。补丁可从以下更改集中获取

已发布以下版本

此版本使用的 PGP 密钥 ID 为 Mariusz Felisiak:2EF56372BA48CD1B

有关安全报告的一般说明

与往常一样,我们要求您通过私人电子邮件将潜在的安全问题报告给security@djangoproject.com,而不是通过 Django 的 Trac 实例或 django-developers 列表。有关更多信息,请参阅我们的安全策略

返回顶部