1
0
mirror of https://github.com/django/django.git synced 2025-04-19 23:04:36 +00:00
Mariusz Felisiak 2d2c1d0c97 [3.2.x] Fixed #32713, Fixed CVE-2021-32052 -- Prevented newlines and tabs from being accepted in URLValidator on Python 3.9.5+.
In Python 3.9.5+ urllib.parse() automatically removes ASCII newlines
and tabs from URLs [1, 2]. Unfortunately it created an issue in
the URLValidator. URLValidator uses urllib.urlsplit() and
urllib.urlunsplit() for creating a URL variant with Punycode which no
longer contains newlines and tabs in Python 3.9.5+. As a consequence,
the regular expression matched the URL (without unsafe characters) and
the source value (with unsafe characters) was considered valid.

[1] https://bugs.python.org/issue43882 and
[2] 76cd81d603

Backport of e1e81aa1c4427411e3c68facdd761229ffea6f6f from main.
2021-05-06 08:48:22 +02:00
..
2017-02-03 08:01:45 -05:00
2019-11-26 14:02:24 +01:00
2012-08-31 20:35:50 +02:00
2020-05-13 09:14:04 +02:00
2015-05-01 16:24:39 -04:00
2015-05-20 13:48:06 -04:00
2015-10-03 19:31:45 -04:00
2020-05-13 09:14:04 +02:00
2016-05-02 18:16:36 -04:00
2016-06-04 19:24:51 -04:00
2016-09-01 16:24:46 -04:00
2017-01-04 13:20:01 -05:00
2021-02-25 17:27:32 +01:00
2017-06-01 11:09:51 -04:00
2017-07-01 19:13:35 -04:00
2017-08-01 08:08:18 -04:00
2017-10-05 14:13:32 -04:00
2017-11-01 21:11:38 -04:00
2018-07-02 10:12:20 +02:00
2018-10-01 09:34:57 +02:00
2018-12-03 15:14:58 +01:00
2018-06-28 11:07:37 -04:00
2018-08-31 10:12:51 +02:00
2018-12-03 17:29:46 +01:00
2020-05-06 06:35:26 +02:00
2019-07-01 07:48:45 +02:00
2020-01-02 07:55:53 +01:00
2020-02-03 08:52:16 +01:00
2020-10-01 07:22:28 +02:00
2020-12-01 06:24:16 +01:00
2021-01-04 08:31:51 +01:00