# CVE-2026-63221: CodeIgniter SQL injection in Query Builder deleteBatch

Source: https://junglewise.ai/threats/cve-2026-63221-codeigniter-sql-injection-in-query-builder-deletebatch  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-07-31. Updated: 2026-08-07  
License: CC BY 4.0 with a link back

CVE-2026-63221 · Severity: critical · CVSS 9.4 · Published 2026-07-31

CodeIgniter is a popular web application framework used to build PHP-based websites. A security flaw in its database tools could allow an attacker to manipulate database queries, potentially leading to unauthorized data deletion or access. This occurs when specific batch-delete functions are used with unvalidated user input.

Technologies: [CodeIgniter Foundation CodeIgniter4](https://junglewise.ai/threats/technologies/codeigniter4), [codeigniter4/framework (Packagist)](https://junglewise.ai/threats/technologies/codeigniter4-framework). Vendors: [CodeIgniter Foundation](https://junglewise.ai/threats/vendors/codeigniter-foundation), [Packagist](https://junglewise.ai/threats/vendors/packagist).

## Quick answers

**Is CVE-2026-63221 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-63221 being exploited in the wild.

**How severe is CVE-2026-63221?** Critical severity, with a CVSS score of 9.4, published 31 July 2026.

**Which products and versions are affected?** CodeIgniter Foundation CodeIgniter4 >= 4.3.0, < 4.7.4; codeigniter4/framework (Packagist) >= 4.3.0, < 4.7.4, ECOSYSTEM:introduced=4.3.0,fixed=4.7.4.

**Is there a fix for CVE-2026-63221?** Yes. codeigniter4/framework (Packagist): upgrade to 4.7.4 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-63221 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-63221?** Check whether you run CodeIgniter Foundation CodeIgniter4 or codeigniter4/framework (Packagist) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- codeigniter4/framework (Packagist): upgrade to 4.7.4 or later

  ```sh
  composer require codeigniter4/framework:^4.7.4
  ```


## Technical details

A SQL injection vulnerability (CWE-89) exists in CodeIgniter 4's Query Builder. The root cause is located in the `deleteBatch()` method; when it is used with `where()` conditions, the framework fails to respect the escape flag for bound values in the WHERE clause. Consequently, these values are substituted directly into the generated SQL without proper escaping or quoting. An attacker can exploit this by providing malicious input to an application that passes user-controlled data directly to a `where()` call prior to executing `deleteBatch()`. This allows for arbitrary SQL execution, potentially leading to data loss or unauthorized access. The issue is patched in version 4.7.4.

## Affected products

- CodeIgniter CodeIgniter4 >= 4.3.0, < 4.7.4

## Identifiers

- CVE-2026-63221
- GHSA-c9w5-rwh3-7pm9

## Timeline

- 2026-07-31: disclosed: NVD publication date
- 2026-08-07: advisory: GitHub Advisory published
- 2026-08-07: patched: Version 4.7.4 released

## References

- [https://api.github.com/users/gr8man](https://api.github.com/users/gr8man)
- [https://github.com/gr8man](https://github.com/gr8man)
- [https://api.github.com/users/gr8man/gists%7B/gist_id%7D](https://api.github.com/users/gr8man/gists%7B/gist_id%7D)
- [https://api.github.com/users/gr8man/repos](https://api.github.com/users/gr8man/repos)
- [https://avatars.githubusercontent.com/u/5325117?v=4](https://avatars.githubusercontent.com/u/5325117?v=4)
- [https://api.github.com/users/gr8man/events%7B/privacy%7D](https://api.github.com/users/gr8man/events%7B/privacy%7D)

## Related threats

- [CodeIgniter CodeIgniter4 unrestricted file upload in is_image and mime_in rules](https://junglewise.ai/threats/cve-2026-63223-codeigniter-codeigniter4-unrestricted-file-upload-in-is-image-and)
- [CodeIgniter Path Traversal in UploadedFile move method](https://junglewise.ai/threats/cve-2026-63222-codeigniter-path-traversal-in-uploadedfile-move-method)
- [CodeIgniter CodeIgniter4 header spoofing in IncomingRequest::isSecure](https://junglewise.ai/threats/cve-2026-63220-codeigniter-codeigniter4-header-spoofing-in-incomingrequest)
- [CodeIgniter CodeIgniter4 file upload validation bypass in ext_in rule](https://junglewise.ai/threats/cve-2026-48062-codeigniter-codeigniter4-file-upload-validation-bypass-in-ext-in)
- [CodeIgniter4's ImageMagick Handler has Command Injection Vulnerability](https://junglewise.ai/threats/cve-2025-54418-codeigniter4-s-imagemagick-handler-has-command-injection)
