Notes de publication de Django 3.2.2

6 mai 2021

Django 3.2.2 corrige un problème de sécurité et un bogue de la version 3.2.1.

CVE-2021-32052 : possibilité d’injection d’en-tête car URLValidator acceptait les sauts de ligne dans les entrées avec Python 3.9.5+

Avec Python 3.9.5+, URLValidator n’interdisait pas les sauts de ligne et les tabulations. Si vous utilisiez des valeurs avec sauts de ligne dans une réponse HTTP, vous pouviez être la cible d’attaques par injection d’en-tête. Django lui-même n’était pas vulnérable car HttpResponse interdit les sauts de ligne dans les en-têtes HTTP.

De plus, le champ de formulaire URLField qui utilise URLValidator supprime silencieusement les sauts de ligne et les tabulations avec Python 3.9.5+, ce qui fait que la possibilité que des sauts de ligne pénètrent vos données n’existait que si vous utilisiez ce validateur en dehors des champs de formulaires.

Ce problème a été introduit par la correction bpo-43882.

Correction de bogues

  • À la suite d’une régression dans Django 3.2.1, correction de makemigrations qui pouvait générer des migrations infinies pour un modèle avec Meta.ordering contenant des expressions OrderBy` (#32714).
Back to Top