HighGHSA-jwvj-pwww-3mj5

laravel framework Unexpected database bindings via requests

Published 15 May 2024 · Updated 29 Nov 2024

Affected packages

Affected
>=6.0.0 <6.20.14
Fixed in
6.20.14
Update to the fixed version for your release line, for example:composer require laravel/framework:^6.20.14
Affected
>=7.0.0 <7.30.4
Fixed in
7.30.4
Update to the fixed version for your release line, for example:composer require laravel/framework:^7.30.4
Affected
>=8.0.0 <8.24.0
Fixed in
8.24.0
Update to the fixed version for your release line, for example:composer require laravel/framework:^8.24.0

Details

This is a follow-up to the security advisory https://github.com/laravel/framework/security/advisories/GHSA-3p32-j457-pg5x which addresses a few additional edge cases.

If a request is crafted where a field that is normally a non-array value is an array, and that input is not validated or cast to its expected type before being passed to the query builder, an unexpected number of query bindings can be added to the query. In some situations, this will simply lead to no results being returned by the query builder; however, it is possible certain queries could be affected in a way that causes the query to return unexpected results.

Is GHSA-jwvj-pwww-3mj5 in any of your client repos?

Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected laravel/framework, and gives you the command that fixes it.

References

Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.