Skip to content
Threat Feed
high advisory

CSRF and Stored XSS Vulnerability in django-page-cms

An improper CSRF protection flaw in django-page-cms versions up to 2.0.13 enables attackers to force authenticated editors to inject stored XSS payloads.

CVE search metadata

CVE search record: CVE-2026-93456. Severity: high. CVSS: 8.2. KEV: no. Product: django-page-cms (<= 2.0.13). Brief: CSRF and Stored XSS Vulnerability in django-page-cms. Brief link: https://feed.craftedsignal.io/briefs/2026-09-django-page-cms-csrf/

CVE-2026-93456 affects the django-page-cms package in all versions up to and including 2.0.13. The vulnerability arises because five administrative mutation views located in pages/admin/views.py lack adequate Cross-Site Request Forgery (CSRF) protection. By failing to validate the authenticity of requests to these endpoints, the application allows unauthorized state-changing operations if an authenticated user is coerced into interacting with attacker-controlled content. This flaw is primarily critical because it facilitates Cross-Site Request Forgery that can be leveraged to inject stored Cross-Site Scripting (XSS) payloads into the CMS. Once injected, these payloads are stored on the server and executed in the browsers of other users, including site visitors and administrators, potentially leading to session hijacking, defacement, or further unauthorized actions within the administrative dashboard.

Impact

Successful exploitation allows remote attackers to perform unauthorized administrative actions on behalf of a logged-in user. By injecting malicious scripts into page content, an attacker can impact all site visitors, compromising the integrity of the web application and the confidentiality of administrative sessions. This vulnerability is significant for organizations using django-page-cms to manage content-heavy web portals.

Recommendation

  1. Upgrade django-page-cms to a version beyond 2.0.13 immediately.
  2. Audit web server logs for suspicious POST requests originating from external referrers targeting the /admin/pages/ paths.
  3. Review stored page content for injected script tags, specifically looking for unescaped JavaScript in fields managed by the admin panel.

Immediate actions

Upgrade django-page-cms to version > 2.0.13.

IT Operations 48h

Mitigations

Upgrade to latest patched version.

immediate IT Operations

CVE-2026-93456