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 )时,导致自动重新加载器不再检测更改。
(adsbygoogle = window.adsbygoogle || []).push({});