Skip to content
OpenAdvisories
Medium · 4.3 CVE-2026-61663 EUVD-2026-63569GHSA-8qj2-c6q4-f399PYSEC-2026-3823

django CMS: Missing authorization in `render_object_structure` discloses non-PageContent placeholder structure to low-privileged staff

Published Aug 20, 2026 · Updated Aug 25, 2026 · Assigned by GitHub_M

Description

django CMS is an easy-to-use and developer-friendly enterprise content management system powered by Django. Prior to 5.0.9, render_object_structure fails to authorize non-PageContent objects that use PlaceholderRelationField. An active staff user without cms.use_structure or model-level view or change permission can request the //admin/cms/placeholder/object/<content_type_id>/structure/<object_id>/ endpoint with guessed content_type_id and object_id values. The response discloses placeholder slot names, plugin trees, plugin identifiers, labels, and object existence for frontend-editable objects. The fix applies user_can_view_placeholder_source to the non-PageContent branch while keeping the structure board read-only for view-only users. This issue is fixed in versions 5.0.9.

Affected products

VendorProductAffectedFixed
django-cms django-cms < 5.0.9 —

Affected packages

EcosystemPackageAffectedFixedRecord
PyPI django-cms < 5.0.9 5.0.9 GHSA-8qj2-c6q4-f399

References