CVE-2026-63221
Received Received - Intake

SQL Injection Risk in CodeIgniter Query Builder deleteBatch()

Vulnerability report for CVE-2026-63221, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-07-31

Last updated on: 2026-07-31

Assigner: GitHub, Inc.

Description

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.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-07-31
Last Modified
2026-07-31
Generated
2026-07-31
AI Q&A
2026-07-31
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 2 associated CPEs
Vendor Product Version / Range
codeigniter codeigniter From 4.3.0 (inc) to 4.7.3 (inc)
codeigniter codeigniter 4.7.4

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-89 The product constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component. Without sufficient removal or quoting of SQL syntax in user-controllable inputs, the generated SQL query can cause those inputs to be interpreted as SQL instead of ordinary user data.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CodeIgniter versions 4.3.0 through 4.7.3 have a flaw in the deleteBatch() function where user-controlled values from where() conditions are inserted into SQL queries without proper escaping. This allows attackers to manipulate SQL commands by providing specially crafted input.

Detection Guidance

To detect this vulnerability, check if your CodeIgniter application uses the deleteBatch() method with user-controlled input in where() conditions. Review application logs for unusual SQL queries or errors. No specific commands are provided in the context.

Impact Analysis

An attacker could exploit this to execute unauthorized SQL commands on your database, potentially leading to data theft, modification, or deletion. Since deleteBatch() is commonly used for bulk operations, the impact could be significant if exploited.

Compliance Impact

This vulnerability could lead to unauthorized data access or deletion, violating GDPR's data integrity and confidentiality requirements or HIPAA's safeguards for protected health information. Non-compliance risks fines and legal consequences.

Mitigation Strategies

Upgrade CodeIgniter to version 4.7.4 or later to patch the vulnerability. If upgrading is not possible, avoid using deleteBatch() with user-controlled input in where() conditions.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-63221. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart