
oxo v2.9.2
Orquestador modular de escaneo de seguridad que combina agentes especializados para detección de vulnerabilidades, reconocimiento y huellas digitales en redes, aplicaciones web, aplicaciones móviles y APIs.
OXO Motor de Orquestación de Escaneos
OXO es un marco de escaneo de seguridad construido para modularidad, escalabilidad y simplicidad.
El motor OXO combina herramientas especializadas para trabajar de forma cohesionada para encontrar vulnerabilidades y realizar acciones como reconocimiento, enumeración y huellas digitales.

Características Principales
- Modular y Escalable: Combina fácilmente múltiples agentes especializados para realizar escaneos exhaustivos.
- Amplio Soporte de Activos: Escanea cualquier cosa, desde direcciones IP y dominios hasta aplicaciones móviles (Android, iOS, HarmonyOS) y esquemas de API.
- Tienda de Agentes: Accede a una creciente biblioteca de agentes comunitarios y oficiales para herramientas de seguridad populares.
- Extensible: Soporte integrado para crear y publicar tus propios agentes usando un marco simple basado en Python.
- API Primero: Cuenta con una API GraphQL para una fácil integración en tuberías CI/CD y otros flujos de trabajo automatizados.
Requisitos
Docker es necesario para ejecutar escaneos localmente. Para instalar Docker, sigue estas instrucciones.
Instalación
OXO se distribuye como un paquete de Python en PyPI. Para instalarlo, simplemente ejecuta el siguiente comando si tienes pip ya
instalado.
pip install -U ostorlab
Primeros Pasos
OXO incluye una tienda que cuenta con decenas de agentes, desde agentes de escaneo de red como Nmap, Nuclei o Tsunami, escáneres web como ZAP, herramientas de huellas digitales web como WhatWeb y Wappalyzer, herramientas de fuerza bruta DNS como Subfinder y Dnsx, escaneo de archivos maliciosos como VirusTotal, y mucho más.
Para ejecutar cualquiera de estas herramientas combinadas, simplemente ejecuta el siguiente comando:
La CLI de OXO es accesible mediante los comandos
oxooostorlab.
oxo scan run --install --agent agent/ostorlab/nmap --agent agent/ostorlab/tsunami --agent agent/ostorlab/nuclei ip 8.8.8.8
Este comando descargará e instalará los siguientes agentes de escaneo:
Escanneará la dirección IP objetivo 8.8.8.8.
Los agentes se distribuyen como imágenes Docker estándar.
Gestión de Escaneos
Para verificar el estado del escaneo, ejecuta:
oxo scan list
Una vez que el escaneo haya finalizado, para acceder a los resultados del escaneo, ejecuta:
oxo vulnz list --scan-id <scan-id>
oxo vulnz describe --vuln-id <vuln-id>
Para detener un escaneo en ejecución, ejecuta:
oxo scan stop --scan-id <scan-id>
Imagen Docker
Para ejecutar oxo en un contenedor, puedes usar la imagen disponible públicamente y ejecutar el siguiente comando:
docker run -v /var/run/docker.sock:/var/run/docker.sock ostorlab/oxo:latest scan run --install --agent agent/ostorlab/nmap ip 8.8.8.8
Notas:
- El comando comienza directamente con:
scan run, esto se debe a que la imagenostorlab/oxotieneoxocomoentrypoint. - Es importante montar el socket de Docker para que OXO pueda crear agentes en la máquina anfitriona.
Registros del Escáner Local
Al ejecutar OXO como un escáner local, usa --persist-logs para escribir los registros del escáner en el disco:
oxo scanner --scanner-id <scanner-uuid> --persist-logs
Por defecto, los registros se escriben en ~/.ostorlab/scanner.log. Para elegir otro archivo:
oxo scanner --scanner-id <scanner-uuid> --persist-logs --log-file /var/log/ostorlab/scanner.log
Para cambiar la verbosidad del registro persistido:
oxo scanner --scanner-id <scanner-uuid> --persist-logs --log-level DEBUG
Activos
OXO admite el escaneo de múltiples tipos de activos, lo que permite una cobertura de seguridad integral en diferentes plataformas y protocolos.
| Categoría | Activo | Descripción |
|---|---|---|
| Red | ip | Dirección IP o rango IP (v4 y v6). |
domain-name | Nombre de dominio. | |
| Web | link | Enlace web, acepta URL, método, cabeceras y cuerpo de solicitud. |
api-schema | Esquema de API (OpenAPI, GraphQL, etc.). | |
| Móvil | android-apk / android-aab | Archivos de paquete Android (.APK, .AAB). |
android-store | Aplicación Android en Google Play Store. | |
ios-ipa | Archivo de paquete iOS (.IPA). | |
ios-store | Aplicación iOS en Apple App Store. | |
ios-testflight | Aplicación iOS en TestFlight. | |
harmonyos-apk / harmonyos-hap | Archivos de paquete HarmonyOS. | |
| Otros | file | Archivo genérico. |
phone-number | Número de teléfono. | |
agent | Meta-escaneo de un agente. |
La Tienda
OXO lista todos los agentes en una tienda pública donde puedes buscar y también publicar tus propios agentes.

Publica tu Primer Agente
Para escribir tu primer agente, puedes consultar un tutorial completo aquí.
Los pasos son básicamente los siguientes:
- Clona un agente plantilla con todos los archivos ya configurados.
- Cambia el archivo
template_agent.pypara agregar tu lógica. - Cambia el
Dockerfileañadiendo cualquier paso de construcción adicional. - Cambia el
ostorlab.yamlañadiendo selectores, documentación, imagen y licencia. - Publícalo en la tienda.
Una vez que hayas escrito tu agente, puedes publicarlo en la tienda para que otros lo usen y lo descubran. La tienda se encargará de construir el agente y recogerá automáticamente las nuevas versiones de tu repositorio Git.

Ideas para Agentes a Construir
Implementaciones de herramientas populares como:
semgrep para escaneo de código fuente.- nbtscan: Escanea servidores de nombres NetBIOS abiertos en la red de tu objetivo.
- onesixtyone: Escáner rápido para encontrar servicios SNMP expuestos públicamente.
- Retire.js: Escáner que detecta el uso de bibliotecas JavaScript con vulnerabilidades conocidas.
snallygaster: Encuentra fugas de archivos y otros problemas de seguridad en servidores HTTP.- testssl.sh: Identifica varias debilidades TLS/SSL, incluyendo Heartbleed, CRIME y ROBOT.
TruffleHog: Busca en repositorios Git cadenas de alta entropíacadenas y secretos, profundizando en el historial de commits.- cve-bin-tool: Escanea binarios en busca de componentes vulnerables.
- XSStrike: Escáner de vulnerabilidades web XSS con carga generativa.
Subjack: Herramienta de escaneo de toma de control de subdominios.- DnsReaper: Herramienta de escaneo de toma de control de subdominios.
- Gitleaks: Herramienta SAST para detectar y prevenir secretos codificados.
- ffuf: Fuzzer web rápido escrito en Go.
- Gobuster: Herramienta utilizada para forzar URIs, subdominios DNS y más.
Créditos
Como proyecto de código abierto en un campo en rápido desarrollo, siempre estamos abiertos a contribuciones, ya sea en forma de una nueva característica, infraestructura mejorada o mejor documentación.
Nos gustaría agradecer a los siguientes contribuyentes por su ayuda en hacer de OXO una mejor herramienta: