Craft CMS has a potential information disclosure vulnerability in preview tokens
Summary
Craft CMS has a CSRF issue in the preview token endpoint at /actions/preview/create-token. The endpoint accepts an attacker-supplied previewToken.
Because the action does not require POST and does not enforce a CSRF token, an attacker can force a logged-in victim editor to mint a preview token chosen by the attacker.
That token can then be used by the attacker (without authentication) to access previewed/unpublished content tied to the victim’s authorized preview scope.
Preconditions
- Victim is logged in to Craft control panel.
- Victim has active preview authorization in session for target content (e.g., opened/edited an entry).
- The attacker must know the target’s
canonicalIdand public URL path of that entry.
1) Attacker prepares a fixed token
Use any 32-character value, for example:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
2) CSRF victim into minting that token
Send the victim a link (or top-level redirect) such as:
https://TARGET/actions/preview/create-token?elementType=craft%5Celements%5CEntry&canonicalId=123&siteId=1&previewToken=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&redirect=https%3A%2F%2FTARGET%2F
If the victim is logged in and authorized for previewElement:123, Craft creates that exact token.
3) Attacker accesses preview content unauthenticated
curl -i 'https://TARGET/news/known-entry-slug?token=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
Expected vulnerable behavior:
- Response renders preview/unpublished state (draft/provisional context), not just normal public content.
Impact
- CSRF-based minting of attacker-known preview tokens.
- Unauthorized access to draft/provisional/revision content via token replay.
- Stealthy one-click exploitation against logged-in editors/admins.
- No dependency on forwarded-host poisoning.
Betroffene Software
Klicken Sie auf eine Technologie, um alle zugehörigen Schwachstellen anzuzeigen.
| Plattform | Paket | Anfällige Versionen | Behoben in |
|---|---|---|---|
| Composer-Paket | craftcms/cms | >= 4.0.0-RC1, < 4.17.3, >= 5.0.0-RC1, < 5.9.7 | 4.17.3, 5.9.7 |
Verweise
- CVSS-Vektor
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X- Schwäche (CWE)
CWE-287, CWE-352- Plattform
- Composer
- Paket
craftcms/cms- Veröffentlicht
- 10.03.2026
- Aktualisiert
- 11.10.2026 10:22
Quellen und Lizenzen
OSV / GitHub Advisory Database - GHSA-vg3j-hpm9-8v5v - CC BY 4.0
Schwachstellenhistorie: craftcms/cms
Alle veröffentlichten Schwachstellen dieses Pakets (Composer-Paket), neueste zuerst. Zeigt, ob es ein einmaliger Ausrutscher ist oder ein Paket, das man im Auge behalten muss.
- Einträge insgesamt
- 127
- Erste → letzte
- 07.2021 08.2026
- Ohne Fix
- 6
- In Angriffen ausgenutzt
- 4
Verteilung nach Schweregrad
- Kritisch 9
- Hoch 41
- Mittel 65
- Niedrig 12
Veröffentlichungen pro Jahr
- 2021: 3
- 2022: 22
- 2023: 13
- 2024: 9
- 2025: 6
- 2026: 74
-
Craft CMS has a potential information disclosure vulnerability in preview tokens dieser Eintrag
Erkennen Sie Schwachstellen in Ihrer Anwendung
Mit der DockRay-Integration und aktivierter Softwareinventarisierung prüft DockRay gemeldete Komponentenversionen auf bekannte Schwachstellen und benachrichtigt Sie über bestätigte Treffer. Die Abdeckung hängt von der unterstützten Technologie und den verfügbaren Meldungen ab.