Ir al contenido

El medio de los artesanos de la web miércoles, 9 de septiembre de 2026

MailStudio
Back-end

Laravel 13.31 refuerza la autenticación por cookie y asegura las colas en Redis

Laravel 13.31.0, publicada el 8 de septiembre de 2026, corrige un fallo de seguridad en la autenticación por cookie «recuérdame» y vuelve seguras las colas en Redis en clúster. También afina Eloquent y corrige una fuga de memoria en el cliente HTTP.

Laravel 13.31.0 está disponible desde el 8 de septiembre de 2026. Tras un número de versión menor, esta entrega corrige un fallo de seguridad en la autenticación por cookie «recuérdame», vuelve seguras las colas en Redis en clúster y afina varios comportamientos de Eloquent. Alrededor de cuarenta correcciones completan el conjunto, desde el cliente HTTP hasta las migraciones.

El cambio más delicado afecta al mecanismo «recuérdame». Laravel ahora garantiza que el hash de la contraseña coincide con el almacenado en la cookie recaller antes de autenticar al usuario. La corrección, portada primero a la rama 12.x, cierra una ventana en la que una cookie de recuerdo podía seguir siendo utilizable tras un cambio de contraseña.

En el mismo terreno, se ha corregido un TypeError que se producía en userFromRecaller() cuando la cookie no coincidía con ningún usuario. Las aplicaciones que dependen mucho del inicio de sesión persistente deberían aplicar la actualización cuanto antes.

Colas en Redis seguras para clúster

El driver de colas de Redis incorpora una implementación segura para clúster: las operaciones MULTI y KEYS se rediseñan para comportarse correctamente cuando las claves se reparten entre varios nodos. En infraestructuras que ejecutan Redis en modo clúster, esto elimina una clase de errores difíciles de reproducir.

Dos incorporaciones acompañan este trabajo. El método Queue::totalSize() expone el tamaño de una cola y un nuevo evento JobInterrupted se dispara cuando se interrumpe un trabajo. El evento WorkerStopping ahora incluye el nombre de la conexión y de la cola cuando se detiene un worker, lo que facilita la supervisión de los workers en producción.

use Illuminate\Support\Facades\Queue;
use Illuminate\Queue\Events\JobInterrupted;
use Illuminate\Support\Facades\Event;

// Nouveau en 13.31 : lire la taille d'une file
$taille = Queue::totalSize('default');

// Reagir a l'interruption d'un job
Event::listen(function (JobInterrupted $event) {
    logger()->warning('Job interrompu', [
        'connexion' => $event->connectionName ?? null,
    ]);
});

Eloquent, consultas perezosas y cliente HTTP

En el lado del ORM, llega el soporte de chaperone para los modelos pivote de las relaciones BelongsToMany: los modelos cargados desde una tabla pivote conservan su relación padre sin una consulta adicional, evitando el clásico problema N+1. También se ha corregido el ámbito del closure pasado a wherePivot().

Desaparecen dos regresiones de fondo. Los métodos lazy() y lazyById() ahora respetan limit() y offset(), que antes ignoraban. El cliente HTTP corrige una fuga de memoria y el middleware RateLimited ya bloquea de verdad los trabajos que alcanzan el límite.

Un número de versión menor puede llevar una corrección de seguridad: actualizar no es una operación cosmética.

Actualizar: qué comprobar

La 13.31 permanece en la rama 13.x: la actualización es un composer update, sin salto de versión mayor. La tabla siguiente resume los cambios que conviene conocer antes de desplegar.

ÁmbitoCambioQué comprobar
SeguridadVerificación del hash en la cookie recallerPortado a 12.x: aplícalo también en proyectos no migrados
ColasDriver Redis seguro para clúster, totalSize(), JobInterruptedProbar los workers en un clúster Redis antes de producción
Eloquentlazy()/lazyById() respetan limit()/offset()Revisar el código que dependía del comportamiento anterior
SesionesArraySessionHandler::create_sid() para la conformidad con PHP 9.0Sin impacto inmediato, prepara la compatibilidad futura

Los proyectos que siguen en 12.x reciben la misma corrección de seguridad, portada. Aplicarla no exige migrar a 13.x: basta un composer update sobre la restricción 12.x para obtener el parche.

Lo que hay que recordar

Laravel 13.31.0 es una versión de mantenimiento a la vez corriente e importante: corriente por su formato, importante por su corrección de seguridad en la autenticación por cookie y por asegurar las colas de Redis en clúster. Los equipos que usan «recuérdame» o workers distribuidos deberían desplegarla sin demora, probando primero las colas en un entorno de preproducción.

En mis proyectos trato las versiones menores de Laravel como posibles parches de seguridad, nunca como simples opciones: leo el changelog, miro primero las entradas «Security» y «Authentication» y luego despliego la actualización en preproducción. La 13.31 confirma esa costumbre: el parche de la cookie recaller es justo el tipo de detalle que se te escapa si saltas versiones menores. — Simon Janvier

Para saber más: las notas de versión completas de Laravel 13.31.0 en GitHub.

Compartir LinkedIn Bluesky Hacker News E-mail

Leer también