Laravel TokenGuard authentication bypass through non-string API credentials
Published 23 Oct 2026 · Updated 23 Oct 2026
Affected packages
- Affected
- >=13.0.0 <13.29.0
- Fixed in
- 13.29.0
composer require laravel/framework:^13.29.0- Affected
- <12.68.0
- Fixed in
- 12.68.0
composer require laravel/framework:^12.68.0Details
Laravel's built-in TokenGuard, when configured with a standard token-based API guard, may be bypassed to authenticate as an arbitrary existing user without knowledge of their valid API token.
Under certain database configurations (MySQL/MariaDB) an attacker can submit a specially crafted, non-string credential value that is mishandled during the authentication lookup, causing the underlying query to match an unintended user record rather than failing authentication as expected.
Impact
An unauthenticated attacker may authenticate as another user without possessing that user's API token, leading to authentication bypass and account takeover on any route protected by the affected guard.
Is GHSA-f9x3-7vq9-cph6 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
- Linkgithub.com/laravel/framework/security/advisories/GHSA-f9x3-7vq9-cph6
- Advisorynvd.nist.gov/vuln/detail/CVE-2026-114509
- Linkgithub.com/laravel/framework/commit/8dbb08bccac1be095dba4a9d259a419620f1e8a5
- Linkgithub.com/laravel/framework/commit/9b21ce0a9bb2b2599978bc0b0df4abea952ad31c
- Packagegithub.com/laravel/framework
- Linkgithub.com/laravel/framework/releases/tag/v12.68.0
- Linkgithub.com/laravel/framework/releases/tag/v13.29.0
Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.