Description
Smarty before 4.5.8 and 5.x before 5.8.5 contains a code injection vulnerability where the top-level nocache_hash is never restored during extends:/multi-component template inheritance, leaving it null. Attackers can supply assigned data containing a forged SmartyNocache marker that is copied verbatim into the regenerated PHP cache file, executing arbitrary PHP on include for remote code execution.
Metrics
CVSS 3.1 8.1/10
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:HWeakness enumeration
Affected software
Source: the vendor's advisory (CNA). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| smarty-php | smarty | < 4.5.8; >= 5.0.0, < 5.8.5 |
References
- https://github.com/smarty-php/smarty/commit/1cba51cb813563eb61d963c83d28cd59f26b858d
- https://github.com/smarty-php/smarty/commit/c0fdd4824aca4f67e814b50703cfee1dfde41414
- https://github.com/smarty-php/smarty/releases/tag/v4.5.8
- https://github.com/smarty-php/smarty/releases/tag/v5.8.5
- https://github.com/smarty-php/smarty/security/advisories/GHSA-3w63-v7pm-cq9x
- https://www.vulncheck.com/advisories/smarty-before-4.5.8-and-5-x-before-5.8.5-php-code-injection-via-extends-inheritance-cache
- https://github.com/smarty-php/smarty/security/advisories/GHSA-3w63-v7pm-cq9x
Timeline
- Published
- Oct 6, 2026
- Last modified
- Oct 6, 2026
- NVD status
- Awaiting Analysis