CVE-2026-63223: CodeIgniter: Uploaded file extension validation bypass in `is_image` and `mime_in` rules
Impact This is an unsafe file upload validation vulnerability that can lead to remote code execution in vulnerable application configurations. Applications are impacted when they: - validate uploads using isimage or mimein without an independent safe extension check, such as extin on patched versions - save uploaded files using the client-supplied filename - place uploads in a web-accessible directory where PHP…
Published Aug 7, 2026
Affected packages
codeigniter4/framework
- Ecosystem
- Composer (PHP)
- Affected
- < 4.7.4
- Fixed in
- 4.7.4
- Check
composer show codeigniter4/framework
Advisory details
From the GitHub Advisory Database (CC BY 4.0).
Impact
This is an unsafe file upload validation vulnerability that can lead to remote code execution in vulnerable application configurations.
Applications are impacted when they:
- validate uploads using
is_imageormime_inwithout an independent safe extension check, such asext_inon patched versions - save uploaded files using the client-supplied filename
- place uploads in a web-accessible directory where PHP files can execute
Patches
Upgrade to v4.7.4 or later.
Workarounds
- Save uploads outside the public web root, preferably under
writable/uploads. - Use
$file->store()or$file->move($path, $file->getRandomName())instead of preserving the original client filename. - Disable script execution in any public upload directory.
- Manually verify the client filename extension before moving the file.
- For image uploads, reject files when
$file->getClientExtension()is not an allowed image extension. - For exact MIME-type validation, reject files when
$file->getClientExtension()does not match$file->guessExtension().
Credited to wnsgurd90-keke.
References
- https://github.com/codeigniter4/CodeIgniter4/security/advisories/GHSA-mmj4-63m4-r6h5
- https://nvd.nist.gov/vuln/detail/CVE-2026-63223
- https://github.com/codeigniter4/CodeIgniter4/commit/b6e9a4fa1dca2df3d3f261bdf61532df8c6420aa
- https://github.com/codeigniter4/CodeIgniter4/releases/tag/v4.7.4
- https://github.com/advisories/GHSA-mmj4-63m4-r6h5
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-48062
CodeIgniter4 has a validation bypass when uploading file extensions via `ext_in` rule
critical9.8Jun 11, 2026CVE-2025-54418
CodeIgniter4's ImageMagick Handler has Command Injection Vulnerability
critical9.8Jul 28, 2025
