Django 4.0.4 修复了 4.0.3 中严重性为“高”的两个安全问题和两个错误。
CVE-2022-28346:潜在的 SQL 注入QuerySet.annotate()
,aggregate()
和extra()
QuerySet.annotate()
, aggregate()
, 和 extra()
方法在列别名中受到 SQL 注入,使用适当制作的字典,字典扩展,作为 **kwargs
传递给这些方法。
CVE-2022-28347:通过QuerySet.explain(**options)
PostgreSQL进行潜在的 SQL 注入
QuerySet.explain()
方法在选项名称中受到 SQL 注入的影响,使用适当制作的字典和字典扩展作为 **options
参数。
错误修正
- 修复了 Django 4.0 中导致忽略
FilteredRelation()
同一字段的多个关系的回归 ( #33598 )。 DIRS
修复了 Django 3.2.4 中的回归,当设置选项TEMPLATES
包含空字符串 ( #33628 )时,导致自动重新加载器不再检测更改。