Laravel Passport's TokenGuard Authenticates Unrelated User for Client Credentials Tokens
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- High
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · Low · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-287.
Summary
Laravel Passport provides OAuth2 server support to Laravel. From 13.0.0 to before 13.7.1, there is an Authentication Bypass for client_credentials tokens. the league/oauth2-server library sets the JWT sub claim to the client identifier (since there's no user). The token guard then passes this value to retrieveById() without validating it's actually a user identifier, potentially resolving an unrelated real user. Any machine-to-machine token can inadvertently authenticate as an actual user. This vulnerability is fixed in 13.7.1.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Laravel | passport | 13.0.0 to before 13.7.1 | 13.7.1 | Patch available | CNA |
| — | laravel/passport (Packagist) | 13.0.0 to before 13.7.1 | 13.7.1 | Patch available | GHSA-349c-2h2f-mxf6 |
- passport VendorLaravel Affected 13.0.0 to before 13.7.1 Fixed in 13.7.1 Patch available CNA
- laravel/passport (Packagist) Vendor— Affected 13.0.0 to before 13.7.1 Fixed in 13.7.1 Patch available GHSA-349c-2h2f-mxf6
Remediation
- Fix · CNA passport (laravel) Fixed in 13.7.1
- Fix · GHSA-349c-2h2f-mxf6 laravel/passport (Packagist) Fixed in 13.7.1 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-39976
- 2026-10-03 Alias added: GHSA-349c-2h2f-mxf6
References
Patch 3
Advisory 2
Sources
- CVE-2026-39976 · CVE Program
- CVE-2026-39976 · NVD
- FIRST EPSS
- GHSA-349c-2h2f-mxf6 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences