Desarrollo seguro con IA en Laravel
Revisa lo que escribe la IA antes de aceptarlo, entérate de cada CVE de Laravel antes de que lo exploten y protege tu asistente con Laravel AI SDK contra la inyección de prompts, todo sobre un proyecto real con tests.
- Lecciones
- 22
- Lectura
- 369 min
- Nivel
- Intermedio
- Actualizado
- 01 Vulnerabilidades en el código generado por IA: qué fallos pasan la revisión y quién los busca
- 02 Crear un proyecto Laravel con Sail, Pest, Pint y Larastan
- 03 Una aplicación Laravel hecha con un agente de IA: el proyecto invoices
- 04 Tests de seguridad en Laravel con Pest
Hola, bienvenido. Empezamos un nuevo curso en CursosDesarrolloWeb.es y en este curso vamos a aprender a programar con IA en Laravel sin dejar agujeros de seguridad en el código: a revisar lo que escribe un agente sabiendo qué buscar, a enterarte de cada CVE de Laravel antes de que lo exploten y a proteger el asistente con IA que tarde o temprano vas a añadir a tu aplicación.
Estoy seguro de que has visto un montón de vídeos de vibe coding en los que alguien le pide una aplicación a un agente y la despliega, y también las noticias de paquetes de Composer que roban credenciales o de CVE de Laravel explotados en horas. Lo que no hay en español es algo que junte las 2 cosas sobre Laravel, y eso es justo lo que quiero cubrir en este curso: seguridad al programar con IA, pero como se tiene que hacer de verdad, sobre un proyecto real y con tests.
El planteamiento del curso
El curso tiene 3 frentes, y los 3 pasan por el mismo proyecto.
El primero es el código que escribe la IA. Aunque le des buen contexto al agente y revises lo que hace, el código puede pasar la revisión con fallos como una policy que existe y no se llama, un whereRaw con texto del usuario o un paquete que el modelo se ha inventado. Le pasa a cualquiera que programe con IA, y a mí también.
El segundo es quien ataca, que hoy también usa agentes. El 8 de septiembre de 2026, Google Threat Intelligence Group documentó una campaña en la que un sistema de agentes escaneó, resolvió problemas y rotó direcciones IP sin nadie detrás, y se llevó miles de credenciales en menos de 6 horas. En Laravel, el 22 de mayo de 2026 un atacante reescribió los tags de los paquetes de laravel-lang, que instalan miles de proyectos, y mientras duró el ataque cualquier composer update se llevaba a casa un ladrón de credenciales.
El tercero es la IA dentro de tu aplicación. Laravel AI SDK 1.0 salió el 23 de septiembre de 2026 y va a hacer que muchísimas aplicaciones incorporen asistentes con tools, y el modelo no distingue instrucciones de datos: si una tool no comprueba de quién es cada factura, la inyección de prompts la va a encontrar.
Por qué este curso ahora
A mí, sinceramente, lo que me preocupa es que la seguridad se ha convertido en un punto crítico en la era de la IA y todavía se deja para más adelante. Y no es exagerar: lo dicen las propias empresas que hacen los modelos. En octubre de 2025, Anthropic hablaba del momento en que el impacto de la IA en la ciberseguridad pasa de ser una preocupación de futuro a "a present-day imperative (se abre en una pestaña nueva)", un imperativo del presente. El 13 de noviembre de 2025 documentó la primera campaña de ciberespionaje orquestada con IA de la que se tiene noticia: "the threat actor was able to use AI to perform 80-90% of the campaign (se abre en una pestaña nueva)", es decir, el atacante usó la IA para hacer entre el 80 y el 90 % de la campaña. Y OpenAI, al presentar GPT-5.3-Codex el 5 de febrero de 2026, escribía "This is the first launch we are treating as High capability in the Cybersecurity domain (se abre en una pestaña nueva)": el primer lanzamiento que trata como de alta capacidad en ciberseguridad.
Fíjate en que estas frases salen de los propios informes y system cards de los 2 laboratorios.
Además, entre el 8 y el 23 de septiembre de 2026 han coincidido 3 hechos que tienen que ver directamente con este curso. El primero es la campaña de Google Threat Intelligence Group que te contaba más arriba. El segundo, que el 14 de septiembre la Agencia Española de Protección de Datos informó de que había recibido la primera notificación de una brecha de datos personales (se abre en una pestaña nueva) en la que el ataque se habría ejecutado mediante un agente de IA. En esa nota pide que los ataques asistidos o ejecutados mediante IA entren de forma expresa en los análisis de riesgos. Y el tercero, la salida de Laravel AI SDK 1.0. Por todo esto he querido crear este curso.
Qué vamos a hacer
Empezamos por el proyecto: invoices, una aplicación Laravel 13 de facturas con adjuntos, tal como la dejó un agente después de una revisión normal, con policies y tests que pasan. Montamos Sail, Pest, Pint y Larastan con un composer qa que será nuestro semáforo, y fijamos el método: cada fallo se demuestra con un test que falla con el código de partida y pasa con la solución, siempre con entradas inofensivas.
Después vamos a por los fallos típicos del código generado por IA, del paquete inventado a la clave que acaba en el repositorio, y de ahí sale una lista de revisión que le damos a cualquier agente desde AGENTS.md. La tercera parte mira hacia fuera: qué buscan hoy los escáneres y los agentes, cómo enterarte a tiempo de los avisos con composer audit y Dependabot, y la sección policy de Composer 2.10, que bloquea por defecto las versiones con avisos y los paquetes marcados como malware.
En la cuarta añadimos un asistente con Laravel AI SDK y Ollama en Sail y lo protegemos contra la inyección de prompts, con tools que comprueban la autorización, aprobación humana para las acciones sensibles y la respuesta del modelo tratada como entrada no fiable. Y para cerrar, un prompt de auditoría que vale para cualquier agente, con el ejemplo resuelto en Claude Code, un escaneo de OWASP ZAP en Docker contra la aplicación en local y el circuito completo en AGENTS.md para que el agente lo ejecute en cada cambio.
Al ser un curso escrito, cada comando lo tienes con su botón de copiar y cada archivo aparece completo, con lo que cambia resaltado.
El stack
Trabajamos con Laravel 13 y PHP 8.5 sobre Laravel Sail con MySQL, Composer 2.10, Pest, Laravel Pint y Larastan, Laravel AI SDK con Ollama y un modelo pequeño con soporte de tools, y OWASP ZAP en Docker. Todo corre en local con Sail, sin proveedores en la nube y sin cuentas de pago.
Qué vas a tener al terminar
La idea es que cuando termines tengas invoices con cada fallo arreglado y cubierto por un test de Pest, una lista de revisión lista para dársela a cualquier agente, la cadena de suministro vigilada y un asistente con IA que resiste la inyección de prompts. Y, sobre todo, criterio para saber qué mirar en el código que te devuelve un agente antes de aceptarlo, desde el minuto cero.
Lo que no cubre este curso
Hay cosas que se quedan fuera, y prefiero decírtelo desde el principio.
No vamos a ver cómo se construye un ataque. Ninguna lección da payloads ni pasos que sirvan contra un proyecto ajeno. De cada fallo vemos qué es y por qué es peligroso, y el resto de la lección lo dedicamos a evitarlo, a detectarlo con un test y a arreglarlo en invoices, siempre en local.
Tampoco vamos a recorrer el OWASP Top 10:2025 categoría a categoría: los fallos clásicos solo aparecen cuando la IA los provoca o los explota.
No vamos a configurar Claude Code, que tiene su propio curso, Claude Code (se abre en una pestaña nueva), ni a ver Laravel AI SDK como producto, RAG, proveedores en la nube, hacking ético o despliegue: cuando algo de esto salga, te enlazo el curso o el artículo que toca.
Para quién es
Este curso es para ti si trabajas con Laravel, ya programas con un agente, el que sea, y llevas ese código a producción. Necesitas manejarte con Laravel, Sail y Docker en tu día a día y haber escrito algún test; no hace falta saber de seguridad, porque cada fallo se explica antes de arreglarlo. Si trabajas en Windows y no tienes montado WSL2 con Sail, pasa antes por WSL 2 en Windows con Laravel Sail (se abre en una pestaña nueva), y si te falta base de Laravel, por el Curso de Laravel 12 (se abre en una pestaña nueva).
La idea de fondo
El agente escribe el código y tú lo firmas. Revisarlo sabiendo qué buscar, tener tests que lo vigilen y enterarte de lo que pasa fuera antes que el atacante forma parte del trabajo, y este curso está pensado para que lo domines sin que te explote la cabeza.
Así que, si te interesa, te espero dentro del curso. Espero que te haya gustado esta introducción y nos vemos dentro. Un saludo.