CVE-2026-70376 PUBLISHED

Pluck CMS: CSRF via Spoofable Missing-Referer Bypass Leads to Stored XSS and RCE

Assigner: TuranSec
Reserved: 04.08.2026 Published: 05.08.2026 Updated: 05.08.2026

Pluck CMS's admin panel relies solely on a Referer-header comparison (requestedByTheSameDomain() in data/inc/functions.admin.php, gating every admin.php action) for CSRF protection, with no per-request anti-CSRF token anywhere in the admin area. When a request carries no Referer/Host information, the function's elseif branch returns true, treating the request as same-origin. Because a cross-site attacker page can suppress the Referer header (e.g. via <meta name=referrer content=no-referrer>), it can force an authenticated administrator's browser to submit forged admin actions with no valid Referer, including creating pages with raw HTML (stored XSS via the rendered page) and installing PHP modules/themes (remote code execution).

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
CVSS Score: 9.6

Product Status

Vendor pluck-cms
Product Pluck CMS
Versions Default: unknown
  • affected from 0 to 4.7.21 (excl.)

Credits

  • ILHOMJON RUSTAMOV finder

References

Problem Types

  • CWE-352 Cross-Site Request Forgery (CSRF) CWE