CodeIgniter: SQL injection in Query Builder deleteBatch() when used with where() conditions
Impact
A SQL injection vulnerability exists in the Query Builder's deleteBatch() method. When deleteBatch() is used together with where() conditions, the bound values from the WHERE clause are substituted directly into the generated SQL with their escape flag ignored, so they are never escaped or quoted. If an application passes user-controlled input to where() before calling deleteBatch(), that input is interpreted as SQL rather than as a value, allowing SQL injection.
This affects only the deleteBatch() code path. Regular delete() operations escape where() binds correctly.
Patches
Upgrade to v4.7.4 or later.
Workarounds
If you cannot upgrade immediately:
- Strictly validate and cast values (e.g. numeric IDs) before using them in conditions - though this does not fully protect string conditions.
- Do not pass user-controlled input to
where()when usingdeleteBatch(). - For user-controlled conditions, use a normal
delete()with Query Builder binds instead ofdeleteBatch(). - Where possible, express required matching values through the batch data and
onConstraint()rather than as separate user-controlledwhere()clauses.
Betroffene Software
Klicken Sie auf eine Technologie, um alle zugehörigen Schwachstellen anzuzeigen.
| Plattform | Paket | Anfällige Versionen | Behoben in |
|---|---|---|---|
| Composer-Paket | codeigniter4/framework | >= 4.3.0, < 4.7.4 | 4.7.4 |
Verweise
- https://github.com/codeigniter4/CodeIgniter4/security/advisories/GHSA-c9w5-rwh3-7pm9
- https://nvd.nist.gov/vuln/detail/CVE-2026-63221
- https://github.com/codeigniter4/CodeIgniter4/commit/f5e463b9a3e986389ce285963e51a7f1fab6559f
- https://github.com/codeigniter4/CodeIgniter4
- https://github.com/codeigniter4/CodeIgniter4/releases/tag/v4.7.4
- CVSS-Vektor
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:H- Schwäche (CWE)
CWE-89- Plattform
- Composer
- Paket
codeigniter4/framework- Veröffentlicht
- 07.08.2026
- Aktualisiert
- 11.10.2026 10:22
Quellen und Lizenzen
OSV / GitHub Advisory Database - GHSA-c9w5-rwh3-7pm9 - CC BY 4.0
Schwachstellenhistorie: codeigniter4/framework
Alle veröffentlichten Schwachstellen dieses Pakets (Composer-Paket), neueste zuerst. Zeigt, ob es ein einmaliger Ausrutscher ist oder ein Paket, das man im Auge behalten muss.
- Einträge insgesamt
- 19
- Erste → letzte
- 01.2022 08.2026
- Ohne Fix
- 1
- In Angriffen ausgenutzt
- 0
Verteilung nach Schweregrad
- Kritisch 6
- Hoch 8
- Mittel 4
- Niedrig 1
Veröffentlichungen pro Jahr
- 2022: 9
- 2023: 2
- 2024: 1
- 2025: 2
- 2026: 5
-
CodeIgniter: SQL injection in Query Builder deleteBatch() when used with where() conditions dieser Eintrag
Erkennen Sie Schwachstellen in Ihrer Anwendung
Mit der DockRay-Integration und aktivierter Softwareinventarisierung prüft DockRay gemeldete Komponentenversionen auf bekannte Schwachstellen und benachrichtigt Sie über bestätigte Treffer. Die Abdeckung hängt von der unterstützten Technologie und den verfügbaren Meldungen ab.