注目★★★★★GitHub Advisory
Django CMS プラグイン移動に循環参照バグ、認証ユーザーで DoS 可能
30秒で把握
- 1Django CMS の move_plugin エンドポイント、循環参照チェック欠如により無限ループ DoS が発生
- 2プラグイン変更権限を持つ認証済みスタッフユーザーが悪用可能、ツリーは永続的に破損
- 3バージョン 5.0.8 で修正・即時アップデートと権限付与範囲の監査が必須
要約
Django CMS の `move_plugin` 管理エンドポイントは、プラグインを自身またはその子孫の下に移動することを制限していない。この操作によってプラグインツリーに循環参照が生じ、再帰的な祖先・子孫クエリが無限ループに陥り、リクエストワーカーが停止する。プラグイン変更権限を持つ認証済みスタッフユーザーが意図的に循環参照を作成すれば、描画・コピー・削除操作がハング状態に陥り、アプリケーションワーカーを消費してサービス停止を引き起こせる。
あなたへの影響
Django CMS を本番運用するチームは、プラグイン管理権限の付与範囲をレビューし、バージョン 5.0.8 への即時アップデートを推奨します。
推奨:既に権限過剰な管理者が存在する場合は、プラグインツリーの整合性チェック (descendant/ancestor クエリのタイムアウト設定確認含む) を実施してください。