SQL Injection in Codeigniter4
CVE-2026-63221
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.
Vulnerability class: SQL Injection
EPSS: 0.004 (30.7th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 9.4 (Critical). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:H.
Affected products
- Codeigniter4 — versions >= 4.3.0, < 4.7.4
Weakness classification (CWE)
References
- security-advisories@github.com (x_refsource_CONFIRM)
- security-advisories@github.com (x_refsource_MISC)
- security-advisories@github.com (x_refsource_MISC)
Frequently asked questions
- What is CVE-2026-63221?
- CVE-2026-63221 is a critical-severity vulnerability in Codeigniter4, classified under SQL Injection. CVSS score: 9.4/10. Published 2026-07-31.
- How severe is CVE-2026-63221?
- Critical severity. CVSS v3 base score is 9.4 out of 10.