ZendFramework SQL injection due to execution of platform-specific SQL containing interpolations
Key facts
- Attack vector
- —
- Privileges required
- —
- User interaction
- —
- Attack complexity
- —
- Impact type
- SQL injection
- Confidentiality · integrity · availability
- —
- Fix status
- Fixed
No CVSS vector from any source. Fix status from GitHub. Impact type from CWE-89.
Summary
The `Zend\Db` component in Zend Framework 2 provides platform abstraction, which is used in particular for SQL abstraction. Two methods defined in the platform interface, `quoteValue()` and `quoteValueList()`, allow users to manually quote values for creating SQL statements; these are in turn consumed by aspects of the SQL abstraction platform, including `Zend\Db\Sql\Sql::getSqlStringForSqlObject()`, and the `getSqlString()` method provided in a number of classes in the Zend\Db\Sql namespace. While these methods are primarily intended for debugging and logging purposes, developers can use them to produce SQL that is then passed to the driver to execute. Due to a flaw in how the `quoteValue()` and `quoteValueList()` methods were written, this can lead to potential SQL injection. The offending code is located in any of the `Zend\Db\Adapter\Platform*` objects, particularly the quoteValue() and `quoteValueList()` methods. These methods did not take into account most of the possible escapable characters that would need to be escaped when attempting to create a quoted value for interpolation into a SQL string. Moreover, these methods did value quoting without extension level coordination which, when available, takes character-sets into account when quoting.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| — | zendframework/zendframework (Packagist) | 2.0.0 to before 2.0.8 | 2.0.8 | Patch available | GHSA-x2f4-8wxf-w3vf |
| — | zendframework/zendframework (Packagist) | 2.1.0 to before 2.1.4 | 2.1.4 | Patch available | GHSA-x2f4-8wxf-w3vf |
- zendframework/zendframework (Packagist) Vendor— Affected 2.0.0 to before 2.0.8 Fixed in 2.0.8 Patch available GHSA-x2f4-8wxf-w3vf
- zendframework/zendframework (Packagist) Vendor— Affected 2.1.0 to before 2.1.4 Fixed in 2.1.4 Patch available GHSA-x2f4-8wxf-w3vf
Remediation
- Fix · GHSA-x2f4-8wxf-w3vf zendframework/zendframework (Packagist) Fixed in 2.0.8 Advisory →
- Fix · GHSA-x2f4-8wxf-w3vf zendframework/zendframework (Packagist) Fixed in 2.1.4 Advisory →
Timeline
- 2026-10-03 Threatist record created from GHSA-x2f4-8wxf-w3vf
References
Other 9
- https://github.com/zendframework/zendframework/commit/0ef63e7db5fa30a79a58eb7c6466c6ab5c0618c5
- https://github.com/zendframework/zendframework/commit/546074660e6e10b9191bf0dc62b524d99f71a5cd
- https://github.com/zendframework/zendframework/commit/6d83777786b8e6171d82191ef917afd09fcb6601
- https://github.com/zendframework/zendframework/commit/870741d0c01a24ff23f9e209c8d393bd3a4115e3
- https://github.com/zendframework/zendframework/commit/95c88c236e80b475141d227bdf7866ca40287dd1
- https://github.com/zendframework/zendframework/commit/d1f259b9d6dbd7c3828360afcfdd3658f2163ea0
- https://framework.zend.com/security/advisory/ZF2013-03
- https://github.com/FriendsOfPHP/security-advisories/blob/master/zendframework/zendframework/ZF2013-03.yaml
- https://github.com/zendframework/zendframework
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences