Saltar al contenido
Curso Desarrollo seguro con IA en Laravel
13/22 Atacantes con IA Avisos de seguridad de Laravel: enterarte a tiempo con composer audit y Dependabot
Tu lectura Quedan 15 min
Lección 13 de 22 · Atacantes con IA

Avisos de seguridad de Laravel: enterarte a tiempo con composer audit y Dependabot

15 min de lectura Laravel 13

Hola, bienvenido. En esta lección vamos a hacer que los avisos de seguridad de Laravel y de sus paquetes te lleguen solos, sin tener que ir a buscarlos. Primero vamos a ver dónde se publican. Después vamos a añadir composer audit a composer qa, para que cada cambio compruebe las dependencias, y vamos a terminar con un .github/dependabot.yml, para que GitHub te abra un pull request cuando haya una actualización de seguridad.

En la lección anterior vimos que la ventana para actualizar se mide hoy en horas y que actualizar con regularidad te protege incluso antes del aviso. Revisar a mano, cada semana, los avisos de los más de 100 paquetes que instala invoices no es viable, así que la forma de llegar a tiempo es que esa comprobación la haga una herramienta. Vamos a montar 2, y cada una cubre un hueco de la otra: composer audit actúa cada vez que alguien trabaja en el proyecto, y Dependabot, aunque nadie lo toque.

Dónde se publican los avisos de seguridad de Laravel

Los avisos que nos interesan salen de 2 sitios, y conviene saber cuál alimenta a cada herramienta.

El primero es GitHub. Cada paquete publica sus avisos en la pestaña de seguridad de su repositorio, y GitHub los revisa y los pasa a su base de datos de avisos, la GitHub Advisory Database. De esa base de datos salen las alertas de Dependabot: según la documentación de GitHub, Dependabot revisa tu repositorio cada vez que entra un aviso nuevo en ella y cada vez que cambian tus dependencias.

El segundo es Packagist, que reúne en su propia base de datos los avisos de GitHub y los de FriendsOfPHP/security-advisories. Cada paquete tiene su página de avisos, como la de laravel/framework en Packagist (se abre en una pestaña nueva), y esa base de datos es la que consulta composer audit.

Hay un dato que no viene en ningún aviso: hasta cuándo recibe correcciones de seguridad tu versión. Lo dice la política de soporte de Laravel (se abre en una pestaña nueva): cada versión mayor recibe correcciones de seguridad durante 2 años, y Laravel 13 las tiene hasta el 17 de marzo de 2028. Si tu proyecto está en una versión sin soporte, ningún aviso te va a traer una versión corregida, y la única solución es actualizar de versión mayor.

Lo que queda de esta lección
  1. 02composer audit
  2. 03composer audit dentro de composer qa
  3. 04Dependabot: los avisos como pull request
  4. 05Alternativas: Renovate y roave/security-advisories
Sigue leyendo con tu suscripción El curso completo, con el certificado y el foro con los planes trimestral y anual, está incluido en la suscripción. Ver los planes