Cómo Encontrar Vulnerabilidades en el Código con Agentes de IA Sin Gastar una Fortuna
Hace poco me topé con deepsec de la gente de Vercel Labs. La idea me atrapó: los desarrolladores proponen usar agentes de IA para el escaneo profundo de seguridad de bases de código. A diferencia de los analizadores estáticos clásicos (SAST) que a menudo te saturan con falsos positivos, este trae la búsqueda "inteligente" al juego.
El problema con las herramientas heredadas es que detectan patrones pero pierden contexto. Deepsec intenta solucionar eso.
Qué Es Esta Herramienta
Básicamente, es un wrapper para gestionar escaneos. El sistema no solo busca fragmentos de código peligrosos usando patrones regex—alimenta áreas sospechosas a modelos de lenguaje para su análisis. Los creadores advierten honestamente que escanear un repositorio grande a toda intensidad podría ser costoso. El README menciona costos de miles, incluso decenas de miles de dólares.
Las cifras son intimidantes, pero el razonamiento de Vercel es directo: un solo error crítico perdido en producción podría costarle al negocio mucho más.
Cómo Funciona el Proceso
La herramienta opera en etapas. Primero, una pasada rápida se ejecuta sin redes neuronales—el comando scan simplemente identifica áreas potencialmente problemáticas usando matchers. Esta fase no cuesta nada.
La magia real sucede con el comando process. Es ahí cuando los agentes toman el control. Toman los hallazgos de la primera etapa y comienzan a desenredarlos. El agente determina si realmente hay una vulnerabilidad o si es una falsa alarma. Para proyectos masivos, la ejecución puede distribuirse entre workers.
Características que Me Gustaron
Deepsec tiene varias decisiones arquitectónicas que revelan ingenieros experimentados detrás de él.
Primero, el sistema puede reanudar desde donde lo dejó. Si tu internet se cae o te quedas sin saldo en tu balance de API de OpenAI/Anthropic, no necesitas empezar de nuevo. El estado se guarda localmente en la carpeta .deepsec.
Segundo, hay un mecanismo de revalidación. El comando revalidate revisa el historial de Git: si ya has corregido una vulnerabilidad, la herramienta lo notará y no la marcará de nuevo.
Tercero, hay conciencia contextual. En lugar de alimentar todo el repositorio al modelo (lo cual sería prohibitivamente costoso e ineficiente), deepsec te pide preparar un resumen condensado del proyecto—archivo INFO.md. Describes los detalles: cómo funciona la autorización, qué middleware se usa, dónde están las configuraciones. Esto ayuda al agente a evitar hacer preguntas obvias y reduce errores.
Cómo Ejecutarlo Tú Mismo
Para comenzar, un npx estándar es suficiente:
npx deepsec init
cd .deepsec
pnpm install
Luego, configura tus claves de acceso. El equipo recomienda usar Vercel AI Gateway, pero también puedes pasar tokens directos de Anthropic u OpenAI. La clave es tener en cuenta los límites. Una suscripción estándar de Claude Pro no cubrirá un escaneo completo—deberás presupuestar el acceso a la API desde el principio.
Para revisar cambios en un pull request específico, hay un indicador conveniente:
pnpm deepsec process --diff
Esto ahorra tiempo y dinero significativo ya que solo se analizan los archivos modificados.
Lado Técnico y Seguridad
Vale la pena señalar que deepsec en sí tiene acceso a shell. Ejecutas código que controla un agente con derechos de ejecución de comandos. Para evitar ser golpeado por código malicioso en las dependencias del proyecto, hay un modo Vercel Sandbox. En este caso, el trabajo ocurre en micro-VMs aisladas, y tus claves de API permanecen afuera y no pueden ser robadas.
Para Quién Es Esto
Para proyectos pequeños personales, deepsec es overkill. Pero si trabajas en empresa con bases de código legacy masivas donde la seguridad importa más que ahorrar unos pocos cientos de dólares en tokens, vale la pena probarlo. Es especialmente bueno encontrando fallas lógicas en autenticación o cadenas de vulnerabilidad complejas que un linter regular nunca detectaría.
¿Deberías apresurarte a implementar esto en cada pipeline de CI/CD? Probablemente no. Pero como herramienta para auditorías profundas periódicas de la base de código, parece un enfoque muy sensato para AppSec en 2024.
Proyectos relacionados