Critical

CodeIgniter: Uploaded file extension validation bypass in `is_image` and `mime_in` rules

  • Disclosed: 07.08.2026
  • Updated: 11.10.2026 10:22

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_image or mime_in without an independent safe extension check, such as ext_in on 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().

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
Composer package codeigniter4/framework < 4.7.4 4.7.4

References

CVSS score 9.8/10
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness (CWE)
CWE-434
Platform
Composer
Package
codeigniter4/framework
Disclosed
07.08.2026
Updated
11.10.2026 10:22

Sources and licenses

OSV / GitHub Advisory Database - GHSA-mmj4-63m4-r6h5 - CC BY 4.0

Vulnerability history: codeigniter4/framework

All published vulnerabilities of this package (Composer package), newest first. Shows whether this is a one-off slip or a package that needs watching.

All (19) in the archive
Total entries
19
First → latest
01.2022 08.2026
Without a fix
1
Exploited in attacks
0

Severity breakdown

  • Critical 6
  • High 8
  • Medium 4
  • Low 1

Disclosures per year

  1. 2022: 9
  2. 2023: 2
  3. 2024: 1
  4. 2025: 2
  5. 2026: 5
Severity:
  1. CodeIgniter: Uploaded file extension validation bypass in `is_image` and `mime_in` rules this entry
    Critical · 9.8 CVE-2026-63223 < 4.7.4 4.7.4
  2. Critical · 9.8 CVE-2025-54418 < 4.6.2 4.6.2
  3. High · 7.5 CVE-2024-29904 < 4.4.7 4.4.7
  4. High · 8.6 CVE-2022-46170 < 4.2.11 4.2.11
  5. High · 7.0 CVE-2022-23556 < 4.2.11 4.2.11
  6. High · 8.8 CVE-2020-10793 <= 4.0.0 no fix
  7. High · 7.5 CVE-2017-1000247 >= 3.1.3, < 3.1.4 3.1.4
  8. Critical · 9.4 CVE-2022-24711 < 4.1.9 4.1.9
  9. High · 7.7 CVE-2022-21647 < 4.1.6 4.1.6

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.