{"id":"CVE-2026-54623","summary":"django CMS: Plugin move endpoint allows cyclic reparenting (DoS)","details":"django CMS is an easy-to-use and developer-friendly enterprise content management system powered by Django. Prior to 5.0.8, the move_plugin endpoint in cms/admin/placeholderadmin.py accepts an attacker-controlled plugin_parent value without rejecting a plugin’s own identifier or a descendant identifier. A staff user with plugin-change permission under CMS_PERMISSION can create a parent_id cycle in the plugin tree. The _get_descendants_cte and _get_ancestors_cte queries in cms/models/pluginmodel.py have no cycle guard, so get_descendants() and later rendering, copy, or delete operations can recurse indefinitely or reach a database recursion limit, corrupting the tree and consuming request workers. This issue is fixed in versions 5.0.8.","aliases":["GHSA-8jj7-4v57-frf5"],"modified":"2026-08-22T03:58:06.517136557Z","published":"2026-08-20T18:02:45.599Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54623.json","cna_assigner":"GitHub_M","cwe_ids":["CWE-674","CWE-835"]},"references":[{"type":"WEB","url":"https://github.com/django-cms/django-cms/releases/tag/5.0.8"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54623.json"},{"type":"ADVISORY","url":"https://github.com/django-cms/django-cms/security/advisories/GHSA-8jj7-4v57-frf5"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54623"},{"type":"FIX","url":"https://github.com/django-cms/django-cms/commit/7642a98ab3170793c0b27b4125dd1f3d318b8a1c"},{"type":"FIX","url":"https://github.com/django-cms/django-cms/pull/8645"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/django-cms/django-cms","events":[{"introduced":"0"},{"fixed":"7642a98ab3170793c0b27b4125dd1f3d318b8a1c"},{"fixed":"6da7840759c2b345a0e2fd4e796be001e681c6a4"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"5.0.8"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["5.0.7","5.0.6","5.0.5","5.0.4","5.0.3","5.0.2","5.0.1","5.0.0","5.0.0a1","4.0.0dev11","4.0.0","3.5.2","3.5.1","3.5.0","3.5.0rc1","3.4.2","3.4.1","3.4.0","3.4.0rc3","3.4.0rc2","3.4.0rc1","3.3.0","3.3.0.rc4","3.3.0.rc3","3.3.0.rc2","3.2.0","3.2.0.rc14","3.2.0.rc13","3.2.0.rc12","3.2.0.rc11","3.2.0.rc10","3.2.0.rc9","3.2.0.rc8","3.2.0.rc7","3.2.0.rc6","3.2.0.rc5","3.2.0.rc4","3.2.0.rc3","3.2.0.rc1","2.3.4","3.1","3.0.9","3.0.10","3.0.8","3.0.7","3.0.6","3.0.5","3.0.3","3.0.4","3.0.2","3.0.1","3.0","3.0c2","3.0c1","temporary","3.0.0.beta3","3.0.0.beta2","3.0.0.beta","2.4.1","2.4.0","2.4.0.rc1","2.3.5","2.1.4","2.2","2.3.3","show","2.3.2","2.3.2.rc1","2.3","2.3rc1","2.1.3","2.1.2","2.1.1","2.1.0","2.1.0.rc3","2.1.0.rc2"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54623.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:H"}]}