Description
The app/process-api-response-headers action accepts fake Craft API response headers from any authenticated control panel user.
A non-admin user with only accessCp can place newline characters in X-Craft-Plugin-Licenses. Craft passes this value to its .env writer without removing the newlines.
This lets the user insert a new attacker-known CRAFT_SECURITY_KEY into .env. After Craft loads that key, the user can forge a signed login redirect containing a Twig system() callback.
This is different from the previous report. That report reads the existing key through a Twig sandbox bypass. This report replaces the key through fake API headers and CRLF injection. Fixing either source does not fix the other.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| craftcms | cms | 5.0.0 – < 5.11.2, 4.0.0 – < 4.18.9 | 5.11.2 |
References
- https://www.hckrt.com/hacktivity/HCKRT-WM3VSE third-party-advisory technical-description mitigation
- https://github.com/craftcms/cms/releases/tag/5.11.2 release-notes
- https://github.com/craftcms/cms product
- https://github.com/craftcms/cms/security/advisories/GHSA-9hp6-3565-gvh5 third-party-advisory