Notes de publication de Django 2.2.22¶
6 mai 2021
Django 2.2.22 fixes a security issue in 2.2.21.
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.