CVE-2025-54418: CodeIgniter4's ImageMagick Handler has Command Injection Vulnerability
Impact This vulnerability affects applications that: Use the ImageMagick handler for image processing (imagick as the image library) AND either: Allow file uploads with user-controlled filenames and process uploaded images using the resize() method OR use the text() method with user-controlled text content or options An attacker can: Upload a file with a malicious filename containing shell metacharacters that get…
Published Jul 28, 2025
Affected packages
codeigniter4/framework
- Ecosystem
- Composer (PHP)
- Affected
- < 4.6.2
- Fixed in
- 4.6.2
- Check
composer show codeigniter4/framework
Advisory details
From the GitHub Advisory Database (CC BY 4.0).
Impact
This vulnerability affects applications that:
- Use the ImageMagick handler for image processing (
imagickas the image library) - AND either:
- Allow file uploads with user-controlled filenames and process uploaded images using the
resize()method - OR use the
text()method with user-controlled text content or options
An attacker can:
- Upload a file with a malicious filename containing shell metacharacters that get executed when the image is processed
- OR provide malicious text content or options that get executed when adding text to images
Patches
Upgrade to v4.6.2 or later.
Workarounds
- Switch to the GD image handler (
gd, the default handler), which is not affected by either vulnerability - For file upload scenarios: Instead of using user-provided filenames, generate random names to eliminate the attack vector with
getRandomName()when using themove()method, or use thestore()method, which automatically generates safe filenames - For text operations: If you must use ImageMagick with user-controlled text, sanitize the input to only allow safe characters:
preg_replace('/[^a-zA-Z0-9\s.,!?-]/', '', $text)and validate/restrict text options
References
Credited to vicevirus.
References
- https://github.com/codeigniter4/CodeIgniter4/security/advisories/GHSA-9952-gv64-x94c
- https://nvd.nist.gov/vuln/detail/CVE-2025-54418
- https://github.com/codeigniter4/CodeIgniter4/commit/e18120bff1da691e1d15ffc1bf553ae7411762c0
- https://cwe.mitre.org/data/definitions/78.html
- https://owasp.org/www-community/attacks/Command_Injection
- https://github.com/advisories/GHSA-9952-gv64-x94c
How this page is made: the data panel comes from the GitHub Advisory Database, CISA’s KEV catalog, the NVD and FIRST EPSS, and updates twice a day. No analysis has been written for this entry yet. Methodology
More Composer (PHP) vulnerabilities
All Composer (PHP) entriesCVE-2026-63221
CodeIgniter: SQL injection in Query Builder deleteBatch() when used with where() conditions
critical9.4Aug 7, 2026CVE-2026-63223
CodeIgniter: Uploaded file extension validation bypass in `is_image` and `mime_in` rules
critical9.8Aug 7, 2026CVE-2026-48062
CodeIgniter4 has a validation bypass when uploading file extensions via `ext_in` rule
critical9.8Jun 11, 2026
