Vulnérabilité dans Django (CVE-2026-87975)
Résumé
Vulnérabilité dans Django (CVE-2026-87975). Risque d'opérations non autorisées ou de divulgation. Exploitable via OneToOneField.
Description d'origine
La description telle que publiée par la source (souvent en anglais).
An issue was discovered in Django 6.1 before 6.1.2, 6.0 before 6.0.9, and 5.2 before 5.2.18.
django.forms.models.BaseModelFormSet.save_existing_objects() used the presence of a primary key on a submitted form's instance as evidence that the instance belonged to the formset's limiting queryset. An object outside that queryset is represented by a newly constructed instance whose primary key can still be populated from submitted data when the model's primary key is a field accepted by the form, such as a OneToOneField or parent link used as the primary key of an inline formset's model, or a natural or UUID primary key included in the form's fields. This allows an authenticated user permitted to submit such a formset to delete rows outside the limiting queryset, without any permission on the targeted object, via forged management-form data marking an out-of-queryset object for deletion. Models using the default AutoField primary key are not affected.
Earlier, unsupported Django series (such as 5.1.x, 5.0.x, and 4.2.x) were not evaluated and may also be affected.
Django would like to thank Seonggwon Yoon for reporting this issue.
Source: NIST National Vulnerability Database NVD GitHub Advisory
Résumé généré automatiquement
Assemblé par SecPulse à partir des données sources (CVSS, CWE, versions affectées) à l'aide de modèles, sans IA. Vérifiez la description d'origine et les références ci-dessous.
Une vulnérabilité référencée CVE-2026-87975 a été découverte dans Django.
Des attaquants peuvent cibler un point d'entrée spécifique comme OneToOneField à distance pour détourner le produit.
Risque d'opérations non autorisées ou de divulgation. Score CVSS : 4.3/10.
Action : appliquez le correctif officiel de l'éditeur.
En cas de doute, contactez votre service informatique ou cherchez « Django CVE-2026-87975 » sur le site de l'éditeur.
CVE-2026-87975 (Django) — CWE-639 / CVSS v3 4.3
Vecteur d'attaque : distant (réseau) / sans interaction utilisateur
Surface d'attaque : OneToOneField
Plan : 1) Audit SBOM, 2) Mise à jour staging→prod, 3) Surveillance WAF/proxy sur les endpoints affectés, 4) Recherche d'IOC dans les logs.
Réfs : voir GHSA / avis éditeur / version corrigée liés sur cette page.
Une vulnérabilité (CWE-639) affecte Django. Les attaquants atteignent le code vulnérable via OneToOneField.
Consultez l'avis de l'éditeur pour les versions affectées de Django. Surface d'attaque : OneToOneField.
Gravité : Moyenne (CVSS 4.3/10). Risque d'opérations non autorisées ou de divulgation.
Mettre à jour vers la version corrigée selon l'avis éditeur.
En attendant le correctif : désactivez la fonctionnalité concernée, appliquez des règles WAF, ou restreignez l'accès par ACL réseau.
Recherchez dans les logs des requêtes correspondant aux IOC connus de cette CVE. Auditez les SBOM/dépendances.
Actions de réponse
Étapes concrètes et exemples de commandes que les équipes SOC/SRE doivent exécuter dans l'ordre
-
1Identify exposure identify
grep -r 'Django' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で
Djangoを grep し、稼働しているサービス・バージョンを把握する。 -
2Post-deployment verification verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。
Références
- web docs.djangoproject.com
- web github.com
- web github.com
- web github.com
- web github.com
- web groups.google.com
- web djangoproject.com
- web nvd.nist.gov
- web docs.djangoproject.com
- web djangoproject.com
- web github.com