Mise à jour de sécurité sur les versions 4.0.1, 3.2.11, et 2.2.26 de Django

Conformément à leur politique de sécurité, l’équipe Django a publié les versions Django 4.0.1, Django 3.2.11, and Django 2.2.26. Ces versions corrigent le problème de sécurité décrit ci-dessous. Les utilisateurs de Django sont invités à effectuer la mise à jour dès que possible.

En effet des risques de sécurité ont été découverts dans les versions antérieures, ces risques sont les suivants :

  • Risque de déni de service sur l’attribut UserAttributeSimilarityValidator
  • Risque de divulgations d’informations à travers le paramètre dictsort template filter
  • Risque de directory-traversal via Storage.save()

1-CVE-2021-45115 : Risque de déni de service sur l’attribut UserAttributeSimilarityValidator

UserAttributeSimilarityValidator a subi une forte surcharge en traitant les mots de passe qui lui étaient soumis et qui étaient trop grands par rapport aux valeurs de contrôle. En présumant que l’accès à la base de données des utilisateurs n’était pas limité, cela constituait un vecteur potentiel pour une attaque par déni de service.

Ce litige a une gravité “moyenne” selon la politique de sécurité de Django.

Pour éviter ce risque, les données particulièrement longues sont désormais refusées par UserAttributeSimilarityValidator.

Pour corriger ce risque dans la version 4.0 de Django, 6 fichiers ont été modifiés avec 92 ajouts et 15 suppressions.

2-CVE-2021-45116 : Risque de divulgations d’informations à travers le paramètre dictsort template filter

A cause de l’exploitation de la logique de résolution variable du Django Template Language, le filtre du modèle dictsort était potentiellement vulnérable à la divulgation d’informations ou à des appels de méthode involontaires, s’il passait une clé bien conçue.

Ce problème a un niveau de sévérité “faible” selon la politique de sécurité de Django.

Afin de prévenir cette défaillance, dictsort applique désormais une logique de résolution restreinte, qui ne fait pas appel aux méthodes et ne permet pas aux dictionnaires d’être indexés.

Toute saisie non fiable de l’utilisateur doit être vérifiée avant d’être utilisée.

Pour corriger ce risque dans la version 4.0 de Django, 6 fichiers ont été modifiés avec 54 ajouts et 7 suppressions.

3-CVE-2021-45452 :  Risque de directory-traversal via Storage.save()

Storage.save() autorise la traversée de répertoires si des noms de fichiers convenablement modifiés étaient transmis directement.

Ce problème a un niveau de sévérité “faible” selon la politique de sécurité de Django.

L’équipe Django, conformément à sa politique de sécurité, a rapidement mis la main sur ces problèmes de sécurité, qui présentaient des niveaux de gravité différents. Plusieurs patchs ont été ajoutés aux versions antérieures, pour corriger ces bugs de sécurité et renforcer la sécurité des applications Django.

Leave a Comment

FR