Laravel publicó estos avisos de seguridad el 20 de octubre de 2026. El problema crítico se encuentra en Illuminate\Auth\TokenGuard, que se utiliza cuando config/auth.php define un guard con el controlador token y el proveedor users. En MySQL y MariaDB, un atacante sin autenticar podía enviar un valor manipulado que no era una cadena. La consulta de autenticación podía encontrar entonces a otro usuario en vez de rechazar la petición. Esto permitía tomar el control de cualquier cuenta en las rutas protegidas por ese guard.

terminal
composer update laravel/framework

La vulnerabilidad está identificada como GHSA-f9x3-7vq9-cph6 y tiene una puntuación CVSS de 9,2. Hristijan Manasijev la comunicó. Antes del parche, el guard solo comprobaba que el token recibido no estuviera vacío. La corrección añade is_string($token) en user() y validate(). Los arrays y otros valores que no son cadenas se rechazan antes de consultar la base de datos. El aviso afecta únicamente al controlador token. Sanctum y Passport registran sus propios controladores de guard y no aparecen como afectados.

Manasijev comunicó un segundo problema publicado ese mismo día. En determinadas condiciones, una petición manipulada a un endpoint JSON:API de solo lectura podía activar una operación destructiva sobre una tabla relacionada. Un usuario con permisos únicamente de lectura podía vaciar esa tabla. El aviso GHSA-5wcm-3v2w-8362 tiene una puntuación CVSS v3.1 de 6,5, con gravedad media. El fallo afecta a los recursos JSON:API añadidos en Laravel 12.45.0. El parche cambia la forma en que se cargan las relaciones solicitadas.

El bypass del TokenGuard afecta a las versiones anteriores a 12.68.0 y a 13.29.0. El problema de JSON:API afecta desde 12.45.0 hasta las versiones anteriores a 12.68.0, además de las versiones anteriores a 13.27.0. Laravel 12.68.0 y 13.29.0 corrigen el primer problema. Laravel 12.68.0 y 13.27.0 corrigen el segundo. Laravel publicó 12.68.0 y 13.29.0 el 25 de agosto de 2026. Las aplicaciones actualizadas desde esa fecha ya incluyen ambas correcciones. Solo existen parches para las ramas 12.x y 13.x.

Los equipos deben actualizar laravel/framework con composer update laravel/framework. También deben revisar config/auth.php en busca de guards que usen el controlador token y dar prioridad a las aplicaciones conectadas a MySQL o MariaDB. composer audit permite comparar los paquetes instalados con los avisos publicados. Ambos avisos están disponibles en la página de seguridad de Laravel para laravel/framework.