Vulnérabilité dans django-cms (CVE-2026-54622)
Résumé
Vulnérabilité dans django-cms (CVE-2026-54622). Des informations confidentielles peuvent être exposées. Exploitable via copy_plugins. Atténuation : mise à jour vers 5.0.8 ou plus.
Description d'origine
La description telle que publiée par la source (souvent en anglais).
Summary
The clipboard copy paths of the copy_plugins admin endpoint validate only the target (the user's own clipboard) and skip source-side authorization. A staff user can copy plugins out of a placeholder they have no permission on into their clipboard, then read the (secret) content.
Details
In cms/admin/placeholderadmin.py, _copy_plugin_to_clipboard and _copy_placeholder_to_clipboard check has_copy_plugins_permission, which only evaluates request.toolbar.clipboard.has_add_plugins_permission(...) — the
clipboard belongs to the requesting user, and check_source is likewise applied only to the clipboard. The source placeholder identified by the attacker-supplied source_placeholder_id / source_plugin_id is never authorization-checked. (The placeholder-to-placeholder copy path, has_copy_from_placeholder_permission, correctly checks both sides.)
Impact
A staff user holding the global add permission for a plugin type, but with no access to a given placeholder/page, can copy that placeholder's plugins into their own clipboard and read content (e.g. link names/URLs, text) they cannot reach through the normal edit endpoints.
Requires CMS_PERMISSION=True with per-placeholder/page restrictions.
Patches
Fixed in 5.0.8: the clipboard copy paths now also verify source-side permission (has_add_plugins_permission + check_source on the source placeholder), matching placeholder-to-placeholder copy.
Worka…
Source: GitHub Security Advisories (Global) 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-54622 a été découverte dans django-cms.
Des attaquants peuvent cibler un point d'entrée spécifique comme copy_plugins à distance pour détourner le produit.
Des informations confidentielles peuvent être exposées. Score CVSS : 6.5/10.
Action : mettez à jour django-cms vers 5.0.8 ou supérieur.
En cas de doute, contactez votre service informatique ou cherchez « django-cms CVE-2026-54622 » sur le site de l'éditeur.
CVE-2026-54622 (django-cms) — CWE-639 / CVSS v3 6.5
Vecteur d'attaque : distant (réseau) / sans interaction utilisateur
Surface d'attaque : copy_plugins / _copy_plugin_to_clipboard / _copy_placeholder_to_clipboard / has_copy_plugins_permission
Correctif : 5.0.8 — appliquer immédiatement
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-cms. Les attaquants atteignent le code vulnérable via copy_plugins.
Consultez l'avis de l'éditeur pour les versions affectées de django-cms. Surface d'attaque : copy_plugins / _copy_plugin_to_clipboard / _copy_placeholder_to_clipboard / has_copy_plugins_permission.
Gravité : Moyenne (CVSS 6.5/10). Des informations confidentielles peuvent être exposées.
Mettre à jour vers 5.0.8.
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-cms' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で
django-cmsを grep し、稼働しているサービス・バージョンを把握する。 -
2Apply patch patch
Upgrade django-cms to 5.0.8ステージング環境で 5.0.8 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。
-
3Post-deployment verification verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。