---
title: "CVE-2026-63221: CodeIgniter: SQL injection in Query Builder deleteBatch() when used with where() conditions"
url: https://erroneo.us/security/cve/CVE-2026-63221/
description: "CVE-2026-63221 (codeigniter4/framework (Composer (PHP))): CodeIgniter is a PHP full-stack web framework. From 4.3.0 through 4.7.3, Query Builder…"
type: vulnerability-record
section: "Security Digest"
date_published: 2026-07-31
date_modified: 2026-08-07
publisher: erroneo.us
author: erroneo.us Security Desk
cve: "CVE-2026-63221"
kev: false
cvss: 9.4
epss: 0.00612
license: All rights reserved. Quote with attribution and a link.
---

# CVE-2026-63221: CodeIgniter: SQL injection in Query Builder deleteBatch() when used with where() conditions

**Signal:** Critical and remotely reachable. No known exploitation yet, but it is network-reachable without credentials. (Computed from CISA KEV, EPSS and CVSS; not an editorial verdict.)

## Should you act?

- No confirmed exploitation. It is not in CISA’s KEV catalog and CISA’s SSVC assessment records no known exploitation. That can change quickly after a public write-up; re-check if you are affected.
- EPSS 0.6% , percentile 49: FIRST’s model estimates a 0.6% chance of exploitation activity in the next 30 days, higher than 49% of all scored CVEs (low). EPSS is a probability, not a verdict.
- Remotely reachable with no login and no user interaction. If the vulnerable service is exposed to the internet, prioritize it.
- Only applies if your dependency tree includes codeigniter4/framework (Composer (PHP)) >= 4.3.0, < 4.7.4, fixed in 4.7.4 . Check your lockfile, including transitive dependencies.

## What it is

CodeIgniter is a PHP full-stack web framework. From 4.3.0 through 4.7.3, Query Builder deleteBatch() substitutes bound values from where() conditions into generated SQL while ignoring their escape flags, allowing user-controlled condition values to be interpreted as SQL. This affects only the deleteBatch() code path. Regular delete() operations escape where() binds correctly. This issue is fixed in version 4.7.4.

## Affected packages

- Composer (PHP) `codeigniter4/framework` >= 4.3.0, < 4.7.4 → fixed: 4.7.4

## Affected products (CVE record)

- codeigniter4 CodeIgniter4: >= 4.3.0, < 4.7.4

## Severity

- GitHub_M CVSS 3.1: 9.4 `CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:H`
- GitHub CVSS 3.1: 9.4 `CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:H`

## Exploitation

- CISA KEV: not listed (no confirmed in-the-wild exploitation known to CISA).
- CISA SSVC assessment: exploitation none , automatable yes , technical impact partial .
- FIRST EPSS (model of 2026-10-21): 0.61% probability of exploitation activity in the next 30 days; percentile 49.

## Sources

- [GitHub Advisory GHSA-c9w5-rwh3-7pm9](https://github.com/advisories/GHSA-c9w5-rwh3-7pm9)
- [CVE.org record CVE-2026-63221](https://www.cve.org/CVERecord?id=CVE-2026-63221)
- [NVD entry CVE-2026-63221](https://nvd.nist.gov/vuln/detail/CVE-2026-63221)
- [github.com](https://github.com/codeigniter4/CodeIgniter4/security/advisories/GHSA-c9w5-rwh3-7pm9)
- [github.com](https://github.com/codeigniter4/CodeIgniter4/commit/f5e463b9a3e986389ce285963e51a7f1fab6559f)
- [github.com](https://github.com/codeigniter4/CodeIgniter4/releases/tag/v4.7.4)

---
Source page: https://erroneo.us/security/cve/CVE-2026-63221/ · Security Digest: https://erroneo.us/security/ · More: https://erroneo.us/llms.txt
