CVE-2026-34587: Server-Side Template Injection and Authorization Bypass in Kirby CMS
Vulnerability ID: CVE-2026-34587
CVSS Score: 7.6
Published: 2026-04-23
Kirby CMS versions prior to 4.9.0 and 5.4.0 contain a critical double template resolution vulnerability leading to Server-Side Template Injection (SSTI). The software also suffers from an authorization bypass in the REST API, allowing authenticated users to circumvent editorial workflows and publish content without appropriate status-change permissions.
TL;DR
Kirby CMS <4.9.0 and 5.0.0-5.3.x are vulnerable to SSTI via double evaluation of dynamic option fields and a REST API authorization bypass. Attackers with low-privilege access can expose sensitive system data or publish unauthorized content.
⚠️ Exploit Status: POC
Technical Details
- Vulnerability Type: Server-Side Template Injection & Auth Bypass
- CWE ID: CWE-1336, CWE-285
- CVSS Score: 7.6 (High)
- Attack Vector: Network
- Privileges Required: Low
- Exploit Status: PoC Available
Affected Systems
- Kirby CMS < 4.9.0
- Kirby CMS 5.0.0
- Kirby CMS 5.1.0
- Kirby CMS 5.2.0
- Kirby CMS 5.3.0
-
kirby: < 4.9.0 (Fixed in:
4.9.0) -
kirby: >= 5.0.0, < 5.4.0 (Fixed in:
5.4.0)
Code Analysis
Commit: a88ef33
Fix for XML CDATA validation
Commit: d6b9a70
Authorization hardening for system API routes
Commit: c11d9f2
Core fix for double-resolution in Option classes
Mitigation Strategies
- Upgrade Kirby CMS to version 4.9.0 or 5.4.0.
- Audit custom blueprints for dynamic options fields using query: or api: attributes.
- Review RBAC configurations and restrict pages.create permissions for untrusted users.
- Deploy Web Application Firewall (WAF) rules to drop unauthorized REST API requests modifying the isDraft parameter.
Remediation Steps:
- Verify the current Kirby CMS version running in the production environment.
- Review release notes for versions 4.9.0 and 5.4.0 to identify potential breaking changes in custom code.
- Download the appropriate updated release from the official getkirby GitHub repository.
- Replace the core system files with the patched version.
- Run regression testing on Panel UI elements utilizing dynamic option queries.
- Verify that API-based page creation defaults to draft state correctly.
References
Read the full report for CVE-2026-34587 on our website for more details including interactive diagrams and full exploit analysis.
Top comments (0)