Volver a actualizaciones
Nuevo releaseJul 19, 2026

oxo v2.9.3

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.

Compartir

PyPI version Downloads Ostorlab blog Twitter Follow

OXO Scan Orchestration Engine

OXO es un framework de escaneo de seguridad diseñado para la modularidad, la escalabilidad y la simplicidad. Es de código abierto y está mantenido por Ostorlab.

OXO Engine combina herramientas especializadas para trabajar de forma cohesionada con el fin de encontrar vulnerabilidades y realizar acciones como reconocimiento, enumeración y fingerprinting.

Main oxo

Características principales

  • Modular y escalable: Combina fácilmente múltiples agentes especializados para realizar escaneos exhaustivos.
  • Amplio soporte de activos: Escanea desde direcciones IP y dominios hasta aplicaciones móviles (Android, iOS, HarmonyOS) y esquemas de API.
  • Tienda de agentes: Accede a una biblioteca en crecimiento de agentes oficiales y de la comunidad para herramientas de seguridad populares.
  • Extensible: Soporte integrado para crear y publicar tus propios agentes usando un framework simple basado en Python.
  • API First: Incluye una API GraphQL para una fácil integración en pipelines de CI/CD y otros flujos de trabajo automatizados.

Requisitos

Se requiere Docker 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 ya tienes pip instalado.

pip install -U ostorlab

Primeros pasos

OXO incluye una tienda que cuenta con docenas de agentes, desde agentes de escaneo de red como Nmap, Nuclei o Tsunami, escáneres web como ZAP, herramientas de fingerprinting web como WhatWeb y Wappalyzer, herramientas de fuerza bruta de 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:

Se puede acceder a la CLI de OXO usando los comandos oxo o ostorlab.

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:

Escaneará la dirección IP objetivo 8.8.8.8.

Los agentes se distribuyen como imágenes Docker estándar.

Gestión de escaneos

Para comprobar el estado del escaneo, ejecuta:

oxo scan list

Una vez completado el escaneo, 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 imagen ostorlab/oxo tiene oxo como entrypoint.
  • Es importante montar el socket de Docker para que OXO pueda crear agentes en la máquina host.

Registros del escáner On-Prem

Al ejecutar OXO como un escáner on-prem, usa --persist-logs para escribir los registros del escáner en 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 de los registros persistidos:

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 exhaustiva en diferentes plataformas y protocolos.

CategoríaActivoDescripción
RedipDirección IP o rango de IP (v4 y v6).
domain-nameNombre de dominio.
WeblinkEnlace web, que acepta una URL, método, cabeceras y cuerpo de la petición.
api-schemaEsquema de API (OpenAPI, GraphQL, etc.).
Móvilandroid-apk / android-aabArchivos de paquete de Android (.APK, .AAB).
android-storeAplicación de Android en Google Play Store.
ios-ipaArchivo de paquete de iOS (.IPA).
ios-storeAplicación de iOS en la Apple App Store.
ios-testflightAplicación de iOS en TestFlight.
harmonyos-apk / harmonyos-hapArchivos de paquete de HarmonyOS.
OtrosfileArchivo genérico.
phone-numberNúmero de teléfono.
agentMetaescaneo 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.

Store

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.
  • Modifica el archivo template_agent.py para añadir tu lógica.
  • Modifica el Dockerfile añadiendo cualquier paso de compilación adicional.
  • Modifica el ostorlab.yaml añ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 la compilación del agente y recogerá automáticamente las nuevas versiones de tu repositorio Git.

Build

Ideas de agentes para construir

Implementaciones de herramientas populares como:

Categorías