CVE-2026-54623 django CMS: Plugin move endpoint allows cyclic reparenting (DoS)
A staff user can create cyclic plugin relationships in django CMS, causing infinite recursion and denial of service during rendering or tree operations.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-54623?
CVE-2026-54623 is a high-severity denial of service vulnerability in django-cms, published on 20 Aug 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
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.
Which versions are affected by CVE-2026-54623?
3 open source packages ship an affected version, including django-cms.
| Package | Affected | Fixed in |
|---|---|---|
django-cms PyPI | All versions | 5.0.8 |
django-cms PyPI | All versions | 5.0.8 |
django-cms PyPI | All versions | 5.0.8 |
How do I fix CVE-2026-54623?
Upgrade django-cms to 5.0.8 or later.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2026-54623 being exploited?
There is no known exploitation of CVE-2026-54623 in the wild and no public exploit code.
Sources
Also known as GHSA-8jj7-4v57-frf5, PYSEC-2026-3822.