---
title: "Django 3.1.10 版本发行说明"
version: 4.1
locale: zh-hans
source: https://docs.djangoproject.com/zh-hans/4.1/releases/3.1.10/
canonical: https://djangodocs.dev/zh-hans/4.1/releases/3.1.10/
---
# Django 3.1.10 版本发行说明

*2021 年 5 月 6 日*

Django 3.1.10 修复了 3.1.9 中的一个安全问题。

## CVE-2021-32052：在 Python 3.9.5 以上版本中，`URLValidator` 接受了输入中的换行符，因此存在注入头的可能性

在 Python 3.9.5+ 上，[`URLValidator`](/zh-hans/4.1/ref/validators/#django.core.validators.URLValidator) 没有禁止换行和制表符。如果你在 HTTP 响应中使用带换行符的值，你可能会遭受头注入攻击。Django 本身没有漏洞，因为 [`HttpResponse`](/zh-hans/4.1/ref/request-response/#django.http.HttpResponse) 禁止在 HTTP 头中使用换行符。

此外，使用 `URLValidator` 的 `URLField` 表单字段在 Python 3.9.5+ 上默默地删除了换行符和制表符，所以只有在你在表单字段之外使用这个验证器时才存在换行符进入你的数据的可能性。

这个问题是由 [bpo-43882](https://bugs.python.org/issue?@action=redirect&bpo=43882) 修正所引入的。
