Django - CVE-2026-25673

Date de publication :

Il s’agit d’une vulnérabilité dans la méthode to_python() du composant django.forms.URLField. 

Django est un framework web open source écrit en Python permettant de développer des applications web et fournissant un système de formulaires et de validation de champs, dont URLField.

Cette méthode utilisait urllib.parse.urlsplit(), qui applique sous Windows une normalisation Unicode NFKC. Cette opération devient très lente pour certains caractères Unicode dans des entrées volumineuses, entraînant une consommation excessive de ressources CPU lors du traitement de l’URL

Elle permet à un attaquant distant de provoquer un déni de service du serveur.

Informations

La faille est activement exploitée : Non

Un correctif existe : Oui

Une mesure de contournement existe : Non

Risques

Déni de service (à distance)

Exploitation

La vulnérabilité exploitée est du type
CWE-400 : Uncontrolled Resource Consumption

Détails sur l'exploitation
•   Vecteur d'attaque : Réseau
•   Complexité de l'attaque : Faible
•   Privilèges nécessaires pour réaliser l'attaque : Aucun
•   Interaction d'un utilisateur ayant accès au produit est-elle nécessaire : Non
•   L'exploitation de la faille permet d'obtenir des droits privilégiés : Non

Preuve de concept
Actuellement, aucune preuve de concept n'est disponible en sources ouvertes.

Systèmes ou composants affectés

•   Django versions 6.0 jusqu’à 6.0.2
•   Django versions 5.2 jusqu’à 5.2.11
•   Django versions 4.2 jusqu’à 4.2.28

Solutions ou recommandations

•   Django versions 6.0.3 et supérieures
•   Django versions 5.2.12 et supérieures
•   Django versions 4.2.29 et supérieures