CVE-2026-39976

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.
Configurations

Configuration 1 (hide)

cpe:2.3:a:laravel:passport:*:*:*:*:*:laravel:*:*

History

02 Jun 2026, 17:58

Type Values Removed Values Added
First Time Laravel passport
Laravel
CPE cpe:2.3:a:laravel:passport:*:*:*:*:*:laravel:*:*
References () https://github.com/laravel/passport/issues/1900 - () https://github.com/laravel/passport/issues/1900 - Exploit, Issue Tracking
References () https://github.com/laravel/passport/pull/1901 - () https://github.com/laravel/passport/pull/1901 - Issue Tracking, Patch
References () https://github.com/laravel/passport/pull/1902 - () https://github.com/laravel/passport/pull/1902 - Issue Tracking, Patch
References () https://github.com/laravel/passport/security/advisories/GHSA-349c-2h2f-mxf6 - () https://github.com/laravel/passport/security/advisories/GHSA-349c-2h2f-mxf6 - Mitigation, Vendor Advisory
References () https://github.com/thephpleague/oauth2-server/issues/1456#issuecomment-2734989996 - () https://github.com/thephpleague/oauth2-server/issues/1456#issuecomment-2734989996 - Issue Tracking, Patch

09 Apr 2026, 17:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-04-09 17:16

Updated : 2026-06-02 17:58


NVD link : CVE-2026-39976

Mitre link : CVE-2026-39976

CVE.ORG link : CVE-2026-39976


JSON object : View

Products Affected

laravel

  • passport
CWE
CWE-287

Improper Authentication