p PatchFirst

CVE-2026-54623

CVE-2026-54623 · django CMS: Plugin move endpoint allows cyclic reparenting (DoS)

This page contains facts from public vulnerability sources. Check the original advisory before updating.

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.

CVSS 7.1 · High · EPSS 0.5% · Fix available

Published
Updated

Stack: python

Affected products and versions

  • django-cms

    Versions
    • < 5.0.8: Affected

    No fix published

  • django-cms PyPI

    Versions
    • 2.0.1
    • 2.0.2
    • 2.1.1
    • 2.1.2
    • 2.1.3
    • 2.1.4
    • 2.1.5
    • 2.2
    • 2.2.1
    • 2.3.1
    • 2.3.2
    • 2.3.3
    • 2.3.4
    • 2.3.5
    • 2.3.6
    • 2.3.7
    • 2.3.8
    • 2.4.0
    • 2.4.1
    • 2.4.2
    • 2.4.3
    • 3.0
    • 3.0.1
    • 3.0.10
    • 3.0.11
    • 3.0.12
    • 3.0.13
    • 3.0.14
    • 3.0.15
    • 3.0.16
    • 3.0.17
    • 3.0.18
    • 3.0.2
    • 3.0.3
    • 3.0.4
    • 3.0.5
    • 3.0.6
    • 3.0.7
    • 3.0.8
    • 3.0.9
    • 3.1.0
    • 3.1.0.b1
    • 3.1.0rc1
    • 3.1.0rc2
    • 3.1.1
    • 3.1.2
    • 3.1.3
    • 3.1.4
    • 3.1.5
    • 3.1.6
    • 3.1.7
    • 3.10.0
    • 3.10.0rc1
    • 3.10.0rc2
    • 3.10.1
    • 3.10.1rc1
    • 3.11.0
    • 3.11.1
    • 3.11.10
    • 3.11.11
    • 3.11.1rc1
    • 3.11.2
    • 3.11.3
    • 3.11.4
    • 3.11.5
    • 3.11.6
    • 3.11.7
    • 3.11.8
    • 3.11.9
    • 3.2.0
    • 3.2.1
    • 3.2.2
    • 3.2.3
    • 3.2.4
    • 3.2.5
    • 3.3.0
    • 3.3.0rc2
    • 3.3.0rc3
    • 3.3.0rc4
    • 3.3.1
    • 3.3.2
    • 3.3.3
    • 3.3.4
    • 3.4.0
    • 3.4.1
    • 3.4.2
    • 3.4.3
    • 3.4.4
    • 3.4.5
    • 3.4.6
    • 3.4.7
    • 3.5.0
    • 3.5.1
    • 3.5.2
    • 3.5.3
    • 3.5.4
    • 3.6.0
    • 3.6.0rc1
    • 3.6.0rc3
    • 3.6.1
    • 3.7.0
    • 3.7.0rc1
    • 3.7.0rc2
    • 3.7.1
    • 3.7.2
    • 3.7.3
    • 3.7.4
    • 3.8.0
    • 3.8.0rc1
    • 3.8.1
    • 3.8.2
    • 3.9.0
    • 3.9.0rc1
    • 3.9.0rc2
    • 3.9.0rc3
    • 4.1.0
    • 4.1.0rc1
    • 4.1.0rc2
    • 4.1.0rc3
    • 4.1.0rc4
    • 4.1.0rc5
    • 4.1.1
    • 4.1.10
    • 4.1.11
    • 4.1.2
    • 4.1.3
    • 4.1.4
    • 4.1.5
    • 4.1.6
    • 4.1.7
    • 4.1.9
    • 5.0.0
    • 5.0.0a1
    • 5.0.1
    • 5.0.2
    • 5.0.3
    • 5.0.4
    • 5.0.5
    • 5.0.6
    • 5.0.7
    Affected ranges
    • ECOSYSTEM: < 5.0.8

    Update to 5.0.8

Original sources

Check your server →