2021 年 5 月 4 日
Django 3.2.1 修复了 3.2 中的一个安全问题和几个漏洞。
MultiPartParser
、UploadedFile
和 FieldFile
允许通过上传的文件和适当制作的文件名进行目录遍历。
为了降低这种风险,现在应用了更严格的基名和路径预防。
DEFAULT_AUTO_FIELD
配置无法使用 BigAutoField
和 SmallAutoField
的子类(#32620)。QuerySet.union()
、intersection()
和 difference()
之后使用一个无注解字段进行排序的 QuerySet.values()/values_list()
会发生崩溃(#32627)。CheckConstraint.check
或 UniqueConstraint.condition
中反向查询一对一关系时,系统检查会崩溃(#32635)。ModelAdmin.search_fields
崩溃(#32649)。Q()
对象时导致崩溃的问题。QuerySet.update()
在 MySQL 和 MariaDB 按继承或连接字段排序的查询集上崩溃(#32645)。django.contrib.messages.storage.CookieStorage
使用的 Django 3.2 之前格式的 cookie 值时,导致崩溃(#32643)。STATICFILES_DIRS
配置中出现 (prefix, path)
的二元元组列表时崩溃(#32665)。Exists
来 exclude()
多值关系的单独修正(#32650)。Exists()
,而不是 QuerySet.distinct()
,因为 Django 3.2 不允许在 distinct()
之后调用 delete()
,以解决数据丢失的可能性。dbshell
命令(#32687)。django.db.sql.query.Query
相等的私有 API。12月 07, 2021