CVE Explorer
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
Known exploited
Not asserted
Disputed
No
Stale source
No
Conflicts
0
Affected products and versions
1 source assertion{"product":"passport","vendor":"laravel","versions":[{"status":"affected","version":">= 13.0.0, < 13.7.1"}]}
- cve_program_cvelist_v5affectedurn:baitaphish:normalized-source-record:v2:7bf93ff3347bc036538a0efb0840fb2c9b5c64752ba312dccb97bd7651bf85ea · sha256:4427b570cac15dfc… · /containers/cna/affected/0
Provider-owned CVSS observations
1 source assertion{"metric":{"attackComplexity":"HIGH","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":7.1,"baseSeverity":"HIGH","confidentialityImpact":"HIGH","integrityImpact":"LOW","privilegesRequired":"LOW","scope":"CHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:L/A:N","version":"3.1"},"metric_type":"cvssV3_1"}
- cve_program_cvelist_v5cvssurn:baitaphish:normalized-source-record:v2:7bf93ff3347bc036538a0efb0840fb2c9b5c64752ba312dccb97bd7651bf85ea · sha256:4427b570cac15dfc… · /containers/cna/metrics/0/cvssV3_1
CWE assertions
1 source assertion{"cweId":"CWE-287","description":"CWE-287: Improper Authentication","lang":"en","type":"CWE"}
- cve_program_cvelist_v5cweurn:baitaphish:normalized-source-record:v2:7bf93ff3347bc036538a0efb0840fb2c9b5c64752ba312dccb97bd7651bf85ea · sha256:4427b570cac15dfc… · /containers/cna/problemTypes/0/descriptions/0
Source references
5 source assertions{"name":"https://github.com/laravel/passport/issues/1900","tags":["x_refsource_MISC"],"url":"https://github.com/laravel/passport/issues/1900"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:7bf93ff3347bc036538a0efb0840fb2c9b5c64752ba312dccb97bd7651bf85ea · sha256:4427b570cac15dfc… · /containers/cna/references/1
{"name":"https://github.com/laravel/passport/pull/1901","tags":["x_refsource_MISC"],"url":"https://github.com/laravel/passport/pull/1901"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:7bf93ff3347bc036538a0efb0840fb2c9b5c64752ba312dccb97bd7651bf85ea · sha256:4427b570cac15dfc… · /containers/cna/references/3
{"name":"https://github.com/laravel/passport/pull/1902","tags":["x_refsource_MISC"],"url":"https://github.com/laravel/passport/pull/1902"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:7bf93ff3347bc036538a0efb0840fb2c9b5c64752ba312dccb97bd7651bf85ea · sha256:4427b570cac15dfc… · /containers/cna/references/4
{"name":"https://github.com/laravel/passport/security/advisories/GHSA-349c-2h2f-mxf6","tags":["x_refsource_CONFIRM"],"url":"https://github.com/laravel/passport/security/advisories/GHSA-349c-2h2f-mxf6"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:7bf93ff3347bc036538a0efb0840fb2c9b5c64752ba312dccb97bd7651bf85ea · sha256:4427b570cac15dfc… · /containers/cna/references/0
{"name":"https://github.com/thephpleague/oauth2-server/issues/1456#issuecomment-2734989996","tags":["x_refsource_MISC"],"url":"https://github.com/thephpleague/oauth2-server/issues/1456#issuecomment-2734989996"}
- cve_program_cvelist_v5referenceurn:baitaphish:normalized-source-record:v2:7bf93ff3347bc036538a0efb0840fb2c9b5c64752ba312dccb97bd7651bf85ea · sha256:4427b570cac15dfc… · /containers/cna/references/2
Attribution and limitations
- CVE Program CVEList V5: Reproduce the MITRE copyright designation and CVE license in copies. Source →
Provider severity values are preserved separately. Baitaphish does not convert them into a risk rating, infer affected products, or treat EPSS as observed exploitation.