Strix - Hoja de Referencia del Agente de Pruebas de Penetración con IA
Strix es una herramienta de código abierto de pruebas de penetración con IA que opera como un investigador de seguridad en lugar de un escáner estático. En vez de buscar patrones en el código fuente, ejecuta dinámicamente la aplicación objetivo, interactúa con ella, sondea en busca de vulnerabilidades y valida cada hallazgo con un exploit de prueba de concepto. Ese paso de validación es el diferenciador: los hallazgos llegan con evidencia de que son realmente explotables, lo que reduce el ruido de falsos positivos que encarece el triaje de la salida de los escáneres tradicionales.
Solo pruebas autorizadas. Strix ataca activamente el objetivo y genera exploits funcionales. Ejecútalo exclusivamente contra sistemas que poseas o para los que tengas permiso explícito por escrito. El uso no autorizado es ilegal.
Instalación
| Método | Comando |
|---|
| pip | pip install strix-agent |
| Docker | docker run -it strixagent/strix |
| Desde el código fuente | git clone https://github.com/usestrix/strix && pip install -e . |
| Clave de LLM | export OPENAI_API_KEY=... (u otro proveedor) |
| Verificar | strix --version |
Uso Principal
| Comando | Descripción |
|---|
strix --target ./repo | Probar un código base local |
strix --target https://staging.example.com | Probar una aplicación en ejecución |
strix --target ./repo --instruction "focus on auth" | Dirigir al agente |
strix --help | Lista completa de opciones |
Cómo Funciona
| Fase | Lo que hace el agente |
|---|
| Reconocimiento | Mapea la app: rutas, entradas, superficies de autenticación |
| Hipótesis | Razona sobre las clases de vulnerabilidad probables |
| Explotación | Crea y envía cargas útiles reales |
| Validación | Confirma el impacto con una PoC funcional |
| Informe | Documenta el hallazgo y los pasos de reproducción |
La fase de validación es lo que separa a Strix de un escáner: un hallazgo solo aparece si el agente pudo activarlo realmente.
Clases de Vulnerabilidad
| Clase | Ejemplos |
|---|
| Inyección | SQLi, inyección de comandos, SSTI |
| XSS | Reflejado, almacenado, basado en DOM |
| Control de acceso | IDOR, escalada de privilegios, autorización rota |
| SSRF | Acceso a servicios internos |
| Lógica de negocio | Abuso de flujos que un escáner no puede modelar |
| Autenticación | Manejo de sesiones, fallos de tokens |
Controles de Alcance y Seguridad
| Control | Propósito |
|---|
| Objetivo explícito | Solo se prueba el objetivo declarado |
| Ejecución en sandbox | Ejecuta el agente en un contenedor aislado |
| Modos de solo lectura | Limita las acciones destructivas donde sea compatible |
| Limitación de tasa | Evita saturar el objetivo |
| Revisar las PoC | Inspecciona siempre los exploits generados antes de reutilizarlos |
Ejecuta Strix contra staging, no producción, y limita la salida de red del contenedor.
Flujos de Trabajo Comunes
# Evaluar un despliegue de staging que te pertenece
strix --target https://staging.internal.example.com
# Revisión enfocada de un módulo de autenticación
strix --target ./app --instruction "audit the login and session handling"
# Ejecutar dentro de un contenedor para aislamiento
docker run --rm -it -e OPENAI_API_KEY strixagent/strix \
--target https://staging.example.com
Interpretando la Salida
| Campo | Significado |
|---|
| Hallazgo | La clase de vulnerabilidad y su ubicación |
| PoC | La solicitud/carga concreta que lo activó |
| Impacto | Lo que gana un atacante |
| Reproducción | Pasos para confirmarlo manualmente |
Como cada hallazgo incluye una PoC, el triaje se convierte en verificación en lugar de investigación.
Strix frente a las Herramientas Tradicionales
| Aspecto | Strix | SAST (Semgrep) | DAST (ZAP) |
|---|
| Método | Agente de IA, dinámico + validado | Coincidencia de patrones estática | Rastreo + ataque |
| Falsos positivos | Bajos (validados con PoC) | Más altos | Medios |
| Lógica de negocio | Sí (razona sobre la intención) | No | Limitada |
| Velocidad | Más lenta (agéntica) | Rápida | Media |
| Mejor para | Evaluación validada en profundidad | Amplia cobertura de código | DAST de toda la app |
Complementa en lugar de reemplazar: usa Semgrep para amplitud, ZAP para DAST con rastreo, y Strix para profundidad validada.
Recursos