Authenticated code execution via unchecked PHAR filename
Published May 9, 2024 · Updated Apr 28, 2026
PHAR deserialization in Timber 1.23.0 and earlier allows remote authenticated users to instantiate arbitrary PHP objects. The ToJpg run function passes an unchecked attacker-controlled filename to file_exists(), allowing a phar:// URI to deserialize metadata from an uploaded file. Exploitation requires arbitrary file upload access and a reachable POP chain; successful exploitation can execute code, read data, delete files, or interrupt service.
Summary
What happened
PHAR deserialization in Timber 1.23.0 and earlier allows remote authenticated users to instantiate arbitrary PHP objects. The ToJpg run function passes an unchecked attacker-controlled filename to file_exists(), allowing a phar:// URI to deserialize metadata from an uploaded file. Exploitation requires arbitrary file upload access and a reachable POP chain; successful exploitation can execute code, read data, delete files, or interrupt service.
The record
- CVE
- CVE-2024-29800
- Published
- May 9, 2024
- Updated
- Apr 28, 2026
- Vendor
- Timber
- Product
- Timber
- Classifications
- CWE-502, CWE-73
- Attack vector
- network
- Privileges
- admin
Timeline
How it unfolded
- May 9, 2024CVE publishedPublication date reported by the CVE source.
- Apr 28, 2026Record updatedLatest update available in the CVE record.
Exploitability
Present is not the same as exploitable
Compare your product and version with the public record. A matching version still requires validation against your environment.
Is a vulnerable build present?
Compare these published version ranges with your installed build and any vendor patches.
- Affected versionversion=n/a <=1.23.0 changes=[{"at":"1.23.1","status":"unaffected"}]
What conditions does exploitation require?
What is affected?
Published CVSS scores
CVSS describes severity. EPSS estimates exploitation probability.
Attacks
What attackers are doing with it
Daily unique IPs observed by Shadowserver honeypots for known exploited vulnerabilities (KEVs). Missing observations do not establish an absence of attacks.
Weakness, pattern, technique
Public exploit references
- Upstream PHAR deserialization proof of conceptproof of concept · demonstrated
Labels summarize the accepted research assessment. They do not indicate a test against your environment.
Technologies
Your stack
See the directory against your own environment.
Your stack
Check the software in your environment
Book a demo to see how Hinoki identifies affected software and validates exploitability in your environment.
Book a demo