Authenticated server code execution via permissive upload validation
Published Dec 6, 2022 · Updated Apr 23, 2025
Unrestricted file upload in top-think ThinkPHP Framework 5.0.24 and 5.1.41 allows remote authenticated users to execute PHP code via file upload. The checkImg method in thinkphp/library/think/File.php accepts non-image extensions, so the move method can store a PHP file beneath the web root. Exploitation requires an application to expose the move-based upload flow to an authenticated user; the stored file then provides server-side code execution.
Summary
What happened
Unrestricted file upload in top-think ThinkPHP Framework 5.0.24 and 5.1.41 allows remote authenticated users to execute PHP code via file upload. The checkImg method in thinkphp/library/think/File.php accepts non-image extensions, so the move method can store a PHP file beneath the web root. Exploitation requires an application to expose the move-based upload flow to an authenticated user; the stored file then provides server-side code execution.
The record
- CVE
- CVE-2022-44289
- Published
- Dec 6, 2022
- Updated
- Apr 23, 2025
- Vendor
- Unknown vendor
- Product
- Unknown product
- Classifications
- CWE-434, T1505.003
- Attack vector
- network
- Privileges
- authenticated
Timeline
How it unfolded
- Dec 6, 2022CVE publishedPublication date reported by the CVE source.
- Apr 23, 2025Record 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?
What conditions does exploitation require?
What is affected?
Affected products and versions are unavailable in this record.
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
- Issue 2772 upload proof of conceptproof of concept · unverified
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