Corrección de vulnerabilidades detectadas con Factory AI y Snyk Studio
Programar con los Droids de Factory AI se siente genial. Es cohesivo, fluido, sabroso; se siente como si estuvieras jugando un videojuego. Uno puede percibir su compromiso con este ideal no solo en la interfaz de usuario, sino también en sus asociaciones; se destaca una integración clave con Linear (el competidor más joven de Jira, conocido por su experiencia de usuario enriquecida mediante animaciones reactivas en aplicaciones web y atajos de teclado). Si herramientas como Claude Code, OpenAI Codex y Gemini CLI son el equivalente a un documento de Word sin conexión, la propuesta de Factory AI es como Google Drive, diseñada desde cero con equipos colaborativos en mente.

Su recorrido para desarrolladores incluye un excelente tutorial integrado en su sitio web, que te guía paso a paso para:
Descargar Factory CLI.
Agregar la extensión Droid IDE a VS Code o al editor de tu preferencia (por ejemplo, Cursor o WindSurf).
Asignar la primera tarea a tu Droid (los agentes de IA especializados de Factory AI), ya sea en el navegador o dentro del IDE.
Si usas Linux, puedes instalar Factory CLI con el siguiente comando:
curl -fsSL https://app.factory.ai/cli | shLa extensión para VS Code está disponible aquí. Una vez instalada, puedes usar `Ctrl + Shift + P` para abrir la paleta de comandos y seleccionar Run Factory Droid.

¿Qué es un Droid?
Factory AI ofrece agentes de inteligencia artificial especializados para una amplia variedad de tareas comunes en el desarrollo de software. Estos agentes se conocen como Droids.

Code Droid:pasa de la idea a lis cambios de código listos para fusionar. Redacta nuevas funciones o componentes con requisitos claros, aprovechando la capacidad de Code Droid para comprender tu código base e implementar funcionalidades que sigan los patrones y las prácticas recomendadas de tu proyecto. Mejora el código existente mediante la identificación de patrones complejos o ineficientes y la transformación en soluciones más limpias y fáciles de mantener a fin de preservar la funcionalidad y mejorar el rendimiento. Analiza registros de errores, identifica las causas raíz y desarrolla correcciones para los fallos en tu código base. Crea pruebas unitarias integrales para garantizar la fiabilidad del código y prevenir regresiones en tus aplicaciones.
Knowledge Droid:investigación en ingeniería, documentación técnica y guías de incorporación. Genera documentación completa para tu código base, que incluya referencias de API, descripciones de arquitectura y relaciones entre componentes para mejorar la comprensión del equipo y la incorporación de nuevos miembros. Ofrece explicaciones claras sobre sistemas complejos, decisiones arquitectónicas y detalles de implementación dentro de tus proyectos a fin de ayudar a los miembros del equipo a entender cómo interactúan los distintos componentes. Encuentra y extrae rápidamente información específica de tu código base y documentación para ahorrar tiempo al buscar detalles de implementación o comprender determinadas funciones.
Reliability Droid:investiga incidentes, redacta RCA y depura sistemas multiservicio complejos. Analiza incidentes en producción mediante el examen de registros de errores, métricas y el comportamiento del sistema para identificar rápidamente patrones y posibles causas de interrupciones o degradación del rendimiento. Crea documentos completos de análisis de causa raíz que incluyan la línea de tiempo, evaluación del impacto, identificación de la causa raíz y medidas preventivas para compartir con las partes interesadas. Desarrolla mecanismos sólidos de manejo de errores, incluidos disyuntores, lógica de reintentos y patrones de degradación controlada, para mejorar la resiliencia del sistema y evitar fallos en cascada.
Product Droid:planifica funciones, crea PRD y gestiona tus proyectos. Genera documentos detallados de requisitos de producto con resúmenes de funciones, historias de usuario, criterios de aceptación, consideraciones técnicas y fases de implementación para nuevas características. Crea historias de usuario completas con criterios de aceptación detallados para distintos tipos de usuarios y escenarios, lo que ayuda a los equipos de desarrollo a comprender los requisitos desde la perspectiva del usuario. Analiza solicitudes de funciones y desarrolla marcos de priorización con evaluaciones del impacto frente al esfuerzo, lo que ayuda a los equipos de producto a tomar decisiones informadas sobre el orden de implementación.
Este enfoque contemporáneo frente a los agentes de IA, es decir, ofrecer una biblioteca de agentes especializados y preconstruidos, permite a los usuarios aprovechar al máximo las limitadas ventanas de contexto de los LLM. Si bien el agente único ofrecido por herramientas como Claude Code, OpenAI Codex y Gemini CLI puede aplicarse de forma versátil a una variedad similar de tareas, Factory AI ha dedicado tiempo a proporcionar a los desarrolladores un agente capaz de gestionarlas con un dominio experto de su contexto y con un propósito muy específico. Esto no excluye al Droid de propósito general incluido en su biblioteca, en el que puedes confiar para cualquier tarea no cubierta por el conjunto especializado de Droids.
Afortunadamente, Factory AI no te bloquea en un solo proveedor de LLM. Los proveedores más conocidos están disponibles (ver más abajo). Y para los LLM con variantes únicas, por ejemplo, aquellas centradas en el razonamiento, puedes elegir fácilmente tu opción en el mismo cuadro de diálogo de la interfaz.

Compatibilidad con MCP
Al igual que otras interfaces de línea de comandos (CLI) para agentes de IA, Droid CLI ofrece una excelente compatibilidad con el Model Context Protocol (MCP). Agregar tu servidor MCP favorito es muy sencillo:
█████████ █████████ ████████ ███ █████████
███ ███ ███ ███ ███ ███ ███ ███ ███
███ ███ ███ ███ ███ ███ ███ ███ ███
███ ███ █████████ ███ ███ ███ ███ ███
███ ███ ███ ███ ███ ███ ███ ███ ███
███ ███ ███ ███ ███ ███ ███ ███ ███
█████████ ███ ███ ████████ ███ █████████
v0.19.9
You are standing in an open terminal. An AI awaits your commands.
ENTER to send • \ + ENTER for a new line • @ to mention files
Current folder: /home/owler/Documents/Snyk/snyk-mcp-demos/pygoat
Auto (Low) - edits and read-only commands shift+tab cycles Sonnet 4
╭─────────────────────────────────────────────────────────────────────╮
│ > Try "Search the documentation for this library" │
╰─────────────────────────────────────────────────────────────────────╯
? for help IDE ◌ | MCP ✓
● Usage: mcp add [options] <name> <command>
Add a new MCP server to the configuration
Arguments:
name Server name
command Command to start the server
Options:
-e, --env <key=value...> Environment variables (can be used multiple
times)
--transport <type> Transport type (defaults to "stdio") (default:
"stdio")
-h, --help display help for command
shift+tab to cycle modes Sonnet 4
╭────────────────────────────────────────────────────────────────────────────────╮
│ > /mcp add -h │
╰────────────────────────────────────────────────────────────────────────────────╯
? for help IDE ◌
Por ejemplo, el servidor oficial de Snyk MCP puede añadirse fácilmente desde la Droid CLI, suponiendo que ya esté instalado en tu equipo:
/mcp add SNYK "snyk mcp -t stdio"
● Starting MCP server "SNYK"...
Command: snyk
Args: ["mcp","-t","stdio"]
Environment variables: nonePero ¿qué podemos hacer con esto? ¿Cuál sería el beneficio de ampliar el conjunto de herramientas disponible para un Droid que ya es tan capaz? La compatibilidad para ejecutar comandos de shell, leer, escribir y editar archivos ya está incorporada.
Usar agentes de IA (Droids) para corregir vulnerabilidades automáticamente
Para este ejemplo, cloné el repositorio pyGoat del líder del proyecto OWASPadeyosemanputra. Este proyecto incluye intencionalmente una serie de vulnerabilidades bien documentadas con fines educativos. Aquí se muestran algunas de las vulnerabilidades destacadas por la propia extensión de IDE de Snyk:

También podemos pedirle al Droid que use el servidor MCP para enumerar algunas de esas mismas vulnerabilidades. Mira:
> Please run a code scan on the codebase with Snyk.
⛬ I'll help you run a Snyk code scan on the pygoat codebase. Let me first check the
authentication status and then perform the scan.
PLAN Updated: 3 total (2 pending, 1 in progress, 0 completed)
○ Check Snyk authentication status
○ Run Snyk code scan on pygoat codebase
○ Review and report scan results
[MCP] SNYK:SNYK_AUTH_STATUS
↳stephen.thoemmes
⛬ Great! You're authenticated as stephen.thoemmes. Now I'll run the Snyk code scan on
the pygoat codebase to identify security vulnerabilities.
PLAN Updated: 3 total (1 pending, 1 in progress, 1 completed)
○ Check Snyk authentication status
○ Run Snyk code scan on pygoat codebase
○ Review and report scan results
[MCP] SNYK:SNYK_CODE_SCAN (/home/owler/Documents/Snyk/factory/pygoat)
↳
Testing /home/owler/Documents/Snyk/factory/pygoat ...
✗ [Low] Use of Hardcoded Credentials
Path: introduction/playground/A9/api.py, line 17
Info: Do not hardcode credentials in code. Found hardcoded credential used in a
condition.
…
✗ [High] SQL Injection
Path: introduction/views.py, line 871
Info: Unsanitized input from an HTTP parameter flows into
introduction.models.sql_lab_table.objects.raw, where it is used in an SQL query. This
may result in an SQL Injection vulnerability.
…
✔ Test completed
Organization: stephen.thoemmes
Test type: Static code analysis
Project path: /home/owler/Documents/Snyk/factory/pygoat
Summary:
101 Code issues found
15 [High] 44 [Medium] 42 [Low]
PLAN Updated: 3 total (0 pending, 0 in progress, 3 completed)
○ Check Snyk authentication status
○ Run Snyk code scan on pygoat codebase
○ Review and report scan results
⛬ The Snyk code scan has completed successfully! Here's a summary of the security
findings:
Scan Results Summary
Total Issues Found: 101
• 15 High severity vulnerabilities
• 44 Medium severity vulnerabilities
• 42 Low severity vulnerabilities
Key High-Severity Issues Found:
1. SQL Injection - Multiple instances in views.py
2. Code Injection - eval() usage with unsanitized input
3. Command Injection - subprocess.Popen with unsanitized input
4. Path Traversal - File operations with unsanitized paths
5. XML External Entity (XXE) Injection - Insecure XML parsing
6. Deserialization vulnerabilities - pickle.loads and yaml.load with untrusted data
7. Hardcoded cryptographic keys - JWT keys hardcoded in source
8. Hardcoded secrets - Non-cryptographic secrets in code
Medium/Low Severity Issues:
• Hardcoded passwords and credentials
• CSRF protection disabled on multiple endpoints
• Insecure cookie configurations (missing HttpOnly/Secure flags)
• Weak hashing algorithms (MD5)
• Debug mode enabled in production
• SSRF vulnerabilities
This is a comprehensive security assessment showing that pygoat (being a
deliberately vulnerable application for educational purposes) contains numerous
intentional security flaws across all severity levels, making it an excellent
training platform for learning about web application security vulnerabilities.Esto demuestra el potencial de un nuevo paradigma en los flujos de trabajo de DevSecOps. En lugar de que la seguridad sea una preocupación separada y, con frecuencia, postergada, ahora podemos integrar la detección y la corrección de vulnerabilidades directamente en el proceso de desarrollo. La combinación de los agentes especializados de Factory AI con servidores MCP como el de Snyk permite no solo identificar los problemas de seguridad, sino también corregirlos y volver a verificarlos de inmediato, todo dentro de la misma interfaz en la que los desarrolladores ya están trabajando.
Próximos pasos con Factory AI y Snyk Studio
A medida que crece la adopción del MCP y más herramientas de seguridad desarrollan sus propios servidores MCP, podemos imaginar Droids que no solo corrijan vulnerabilidades, sino que también generen pruebas de seguridad, actualicen la documentación para reflejar las correcciones e incluso creen tickets para revisión manual de problemas complejos. La naturaleza modular tanto del sistema Droid de Factory como del protocolo MCP significa que estas capacidades pueden evolucionar de manera independiente y, aun así, seguir siendo interoperables.
Para los equipos que deseen implementar flujos de trabajo similares, la configuración es sencilla: instala el Factory CLI, agrega tus servidores MCP preferidos y comienza a corregir las vulnerabilidades para generar confianza en el proceso de corrección automatizado. La clave está en tratar a los agentes de IA como multiplicadores de fuerza para tu equipo de seguridad, no como reemplazos: sobresalen al encargarse de las correcciones rutinarias y bien comprendidas, mientras que los humanos pueden concentrarse en los desafíos de seguridad nuevos que requieren resolución creativa de problemas.
¿Quieres obtener más información sobre cómo proteger el ecosistema de MCP Servers? Descarga nuestro libro electrónico hoy mismo.
LIBRO ELECTRÓNICO
Protección del ecosistema de servidores MCP
Explora las nuevas rutas de ataque y analiza incidentes reales para aprender cómo defenderte de ellos mediante estrategias prácticas y conscientes del flujo de trabajo.