An unauthenticated attacker can log in as another existing user without knowing that user's API token. That gives them the account on every route protected by the affected guard.

Who is affected

Your app is exposed if it authenticates requests with Laravel's built-in TokenGuard, the token driver in config/auth.php, and runs on MySQL or MariaDB. The Laravel advisory says the bypass works under certain configurations of those two databases.

The guard accepted a token that wasn't a plain string. On those databases, the user lookup could then match the wrong user instead of failing. The fix only changes TokenGuard, so apps that don't use the token guard don't run the affected code.

What to do

Update laravel/framework to 13.29.0 if you're on 13.x, or to 12.68.0 if you're on 12.x. Releases older than 12.x are affected and get no fix, so move to one of those two versions.

Reported by KIKOmanasijev.