Django 1.7.11 版本发行说明

2015 年 11 月 24 日

Django 1.7.11 修复了 1.7.10 中的一个安全问题和一个数据丢失的错误。

修复了模板过滤器 date 中的设置泄漏可能性

如果一个应用程序允许用户指定未经验证的日期格式,并将此格式传递给 date 过滤器,例如 {{ last_updated|date:user_date_format }},那么一个恶意用户可以通过指定设置键而不是日期格式来获取应用程序设置中的任何密钥,例如 "SECRET_KEY" 而不是 "j/m/Y"

为了解决这个问题,被 date 模板过滤器使用的底层函数 django.utils.formats.get_format() 现在只允许访问日期/时间格式设置。

漏洞修复

  • 修复了使用 Prefetch 时,如果将 to_attr 设置为 ManyToManyField,可能会导致数据丢失的问题 (#25693)。