Description
CakePHP through 5.4.3 contains an sql injection vulnerability that allows attackers to inject SQL by supplying unvalidated frame offsets and directions to WindowExpression::range() and frame(). Attackers can pass crafted values through applications forwarding user input into the OVER clause to execute SQL with the database connection's privileges.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| cakephp | cakephp | ≤ 5.4.3 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 22.04 LTS | cakephp | No fix yet | — |
| Ubuntu 20.04 LTS | cakephp | No fix yet | — |
Show 1 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu Pro 16.04 LTS | cakephp | No fix yet | — |
References
- https://github.com/cakephp/cakephp/commit/18de3e4cdabba049269421bf43c2ccd1a7451565 patch
- https://github.com/cakephp/cakephp/commit/a5ca1748dcdb432631fc2760f898576043ce3df9 patch
- https://github.com/cakephp/cakephp/commit/3c1183fb62274c8a1c2780b2d3cc40f40cf31f1f patch
- https://github.com/cakephp/cakephp/pull/19735 patch issue-tracking
- https://github.com/cakephp/cakephp/blob/6f3dd91371ac0698b64024ddb21d57def9fbba91/src/Database/Expression/WindowExpression.php#L152 technical-description
- https://github.com/cakephp/cakephp/blob/6f3dd91371ac0698b64024ddb21d57def9fbba91/src/Database/Expression/WindowExpression.php#L330 technical-description
- https://abraxaslabs.tech/research/cakephp-window-sqli third-party-advisory
- https://github.com/cakephp/cakephp product
- VulnCheck Advisory: CakePHP through 5.4.3 SQL Injection via WindowExpression range() and frame() third-party-advisory