
oxo v2.9.3
Orquestrador modular de varredura de segurança que combina agentes especializados para detecção de vulnerabilidades, reconhecimento e fingerprinting em redes, aplicativos web, aplicativos móveis e APIs.
OXO Scan Orchestration Engine
OXO é um framework de varredura de segurança criado para modularidade, escalabilidade e simplicidade. É de código aberto e mantido pela Ostorlab.
O OXO Engine combina ferramentas especializadas para trabalhar de forma coesa na descoberta de vulnerabilidades e na execução de ações como reconhecimento, enumeração e fingerprinting.

Principais Recursos
- Modular e Escalável: Combine facilmente vários agentes especializados para realizar varreduras abrangentes.
- Amplo Suporte a Ativos: Faça a varredura de qualquer coisa, desde endereços IP e domínios até aplicações móveis (Android, iOS, HarmonyOS) e esquemas de API.
- Loja de Agentes: Acesse uma biblioteca crescente de agentes da comunidade e oficiais para ferramentas de segurança populares.
- Extensível: Suporte integrado para criar e publicar seus próprios agentes usando um framework simples baseado em Python.
- API First: Possui uma API GraphQL para fácil integração em pipelines de CI/CD e outros fluxos de trabalho automatizados.
Requisitos
O Docker é necessário para executar varreduras localmente. Para instalar o Docker, siga estas instruções.
Instalação
O OXO é distribuído como um pacote Python no PyPI. Para instalá-lo, basta executar o seguinte comando se você já tiver o pip
instalado.
pip install -U ostorlab
Primeiros Passos
O OXO vem com uma loja que possui dezenas de agentes, desde agentes de varredura de rede como Nmap, Nuclei ou Tsunami, scanners web como ZAP, ferramentas de fingerprinting web como WhatWeb e Wappalyzer, ferramentas de força bruta de DNS como Subfinder e Dnsx, varredura de arquivos maliciosos como VirusTotal, e muito mais.
Para executar qualquer uma dessas ferramentas combinadas, basta executar o seguinte comando:
A CLI do OXO é acessível usando os comandos
oxoouostorlab.
oxo scan run --install --agent agent/ostorlab/nmap --agent agent/ostorlab/tsunami --agent agent/ostorlab/nuclei ip 8.8.8.8
Este comando irá baixar e instalar os seguintes agentes de varredura:
Ele irá escanear o endereço IP de destino 8.8.8.8.
Os agentes são distribuídos como imagens Docker padrão.
Gerenciamento de Varreduras
Para verificar o status da varredura, execute:
oxo scan list
Depois que a varredura for concluída, para acessar os resultados da varredura, execute:
oxo vulnz list --scan-id <scan-id>
oxo vulnz describe --vuln-id <vuln-id>
Para parar uma varredura em execução, execute:
oxo scan stop --scan-id <scan-id>
Imagem Docker
Para executar o oxo em um contêiner, você pode usar a imagem disponível publicamente e executar o seguinte 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
Observações:
- O comando começa diretamente com:
scan run, isso ocorre porque a imagemostorlab/oxotemoxocomoentrypoint. - É importante montar o socket do Docker para que o OXO possa criar agentes na máquina host.
Logs do Scanner On-Prem
Ao executar o OXO como um scanner on-prem, use --persist-logs para gravar os logs do scanner em disco:
oxo scanner --scanner-id <scanner-uuid> --persist-logs
Por padrão, os logs são gravados em ~/.ostorlab/scanner.log. Para escolher outro arquivo:
oxo scanner --scanner-id <scanner-uuid> --persist-logs --log-file /var/log/ostorlab/scanner.log
Para alterar a verbosidade dos logs persistidos:
oxo scanner --scanner-id <scanner-uuid> --persist-logs --log-level DEBUG
Ativos
O OXO suporta a varredura de vários tipos de ativos, permitindo uma cobertura de segurança abrangente em diferentes plataformas e protocolos.
| Categoria | Ativo | Descrição |
|---|---|---|
| Rede | ip | Endereço IP ou faixa de IP (v4 e v6). |
domain-name | Nome de domínio. | |
| Web | link | Link web, aceitando uma URL, método, cabeçalhos e corpo da requisição. |
api-schema | Esquema de API (OpenAPI, GraphQL, etc.). | |
| Móvel | android-apk / android-aab | Arquivos de pacote Android (.APK, .AAB). |
android-store | Aplicativo Android na Google Play Store. | |
ios-ipa | Arquivo de pacote iOS (.IPA). | |
ios-store | Aplicativo iOS na Apple App Store. | |
ios-testflight | Aplicativo iOS no TestFlight. | |
harmonyos-apk / harmonyos-hap | Arquivos de pacote HarmonyOS. | |
| Outros | file | Arquivo genérico. |
phone-number | Número de telefone. | |
agent | Meta-varredura de um agente. |
A Loja
O OXO lista todos os agentes em uma loja pública onde você pode pesquisar e também publicar seus próprios agentes.

Publique Seu Primeiro Agente
Para escrever seu primeiro agente, você pode conferir um tutorial completo aqui.
Os passos são basicamente os seguintes:
- Clone um agente template com todos os arquivos já configurados.
- Altere o arquivo
template_agent.pypara adicionar sua lógica. - Altere o
Dockerfileadicionando quaisquer etapas extras de build. - Altere o
ostorlab.yamladicionando seletores, documentação, imagem e licença. - Publique-o na loja.
Depois de escrever seu agente, você pode publicá-lo na loja para que outros possam usá-lo e descobri-lo. A loja cuidará do build do agente e automaticamente capturará novas versões do seu repositório Git.

Ideias de Agentes para Construir
Implementações de ferramentas populares como: