
oxo v2.9.8
Modularer Sicherheits-Scanning-Orchestrator, der spezialisierte Agenten für Schwachstellenerkennung, Aufklärung und Fingerprinting in Netzwerken, Web-Apps, mobilen Apps und APIs kombiniert.
OXO Scan Orchestration Engine
OXO ist ein Sicherheitsscan-Framework, das auf Modularität, Skalierbarkeit und Einfachheit ausgelegt ist. Es ist Open Source und wird von Ostorlab gepflegt.
Die OXO Engine kombiniert spezialisierte Tools, die koordiniert zusammenarbeiten, um Schwachstellen zu finden und Aktionen wie Recon, Enumeration und Fingerprinting durchzuführen.

Hauptmerkmale
- Modular & Skalierbar: Kombinieren Sie mühelos mehrere spezialisierte Agenten, um umfassende Scans durchzuführen.
- Breite Asset-Unterstützung: Scannen Sie alles von IP-Adressen und Domains bis hin zu mobilen Anwendungen (Android, iOS, HarmonyOS) und API-Schemas.
- Agenten-Store: Greifen Sie auf eine wachsende Bibliothek von Community- und offiziellen Agenten für gängige Sicherheitstools zu.
- Erweiterbar: Integrierte Unterstützung für die Erstellung und Veröffentlichung eigener Agenten mithilfe eines einfachen Python-basierten Frameworks.
- API First: Verfügt über eine GraphQL-API zur einfachen Integration in CI/CD-Pipelines und andere automatisierte Workflows.
Anforderungen
Docker ist erforderlich, um Scans lokal auszuführen. Um Docker zu installieren, folgen Sie bitte diesen Anweisungen.
Installation
OXO wird als Python-Paket auf PyPI bereitgestellt. Um es zu installieren, führen Sie einfach den folgenden Befehl aus, wenn Sie pip bereits
installiert haben.
pip install -U ostorlab
Erste Schritte
OXO wird mit einem Store geliefert, der Dutzende von Agenten bietet, von Netzwerk-Scanning-Agenten wie Nmap, Nuclei oder Tsunami, Web-Scannern wie ZAP, Web-Fingerprinting-Tools wie WhatWeb und Wappalyzer, DNS-Brute-Forcing-Tools wie Subfinder und Dnsx, Malware-Dateiscannern wie VirusTotal und vielem mehr.
Um eines dieser Tools kombiniert auszuführen, führen Sie einfach den folgenden Befehl aus:
Die OXO CLI ist über die Befehle
oxooderostorlabzugänglich.
oxo scan run --install --agent agent/ostorlab/nmap --agent agent/ostorlab/tsunami --agent agent/ostorlab/nuclei ip 8.8.8.8
Dieser Befehl lädt die folgenden Scanning-Agenten herunter und installiert sie:
Er scannt die Ziel-IP-Adresse 8.8.8.8.
Agenten werden als Standard-Docker-Images bereitgestellt.
Scan-Verwaltung
Um den Scan-Status zu überprüfen, führen Sie aus:
oxo scan list
Sobald der Scan abgeschlossen ist, führen Sie Folgendes aus, um auf die Scan-Ergebnisse zuzugreifen:
oxo vulnz list --scan-id <scan-id>
oxo vulnz describe --vuln-id <vuln-id>
Um einen laufenden Scan zu stoppen, führen Sie aus:
oxo scan stop --scan-id <scan-id>
Docker-Image
Um oxo in einem Container auszuführen, können Sie das öffentlich verfügbare Image verwenden und den folgenden Befehl ausführen:
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
Hinweise:
- Der Befehl beginnt direkt mit:
scan run, da das Imageostorlab/oxooxoalsentrypointverwendet. - Es ist wichtig, den Docker-Socket einzubinden, damit OXO Agenten auf dem Host-Rechner erstellen kann.
On-Prem-Scanner-Protokolle
Wenn Sie OXO als On-Prem-Scanner ausführen, verwenden Sie --persist-logs, um Scanner-Protokolle auf die Festplatte zu schreiben:
oxo scanner --scanner-id <scanner-uuid> --persist-logs
Standardmäßig werden die Protokolle in ~/.ostorlab/scanner.log geschrieben. Um eine andere Datei zu wählen:
oxo scanner --scanner-id <scanner-uuid> --persist-logs --log-file /var/log/ostorlab/scanner.log
Um die Ausführlichkeit der persistierten Protokolle zu ändern:
oxo scanner --scanner-id <scanner-uuid> --persist-logs --log-level DEBUG
Assets
OXO unterstützt das Scannen mehrerer Asset-Typen und ermöglicht so eine umfassende Sicherheitsabdeckung über verschiedene Plattformen und Protokolle hinweg.
| Kategorie | Asset | Beschreibung |
|---|---|---|
| Netzwerk | ip | IP-Adresse oder IP-Bereich (v4 und v6). |
domain-name | Domainname. | |
| Web | link | Weblink, akzeptiert eine URL, Methode, Header und Request-Body. |
api-schema | API-Schema (OpenAPI, GraphQL usw.). | |
| Mobil | android-apk / android-aab | Android-Paketdateien (.APK, .AAB). |
android-store | Android-App im Google Play Store. | |
ios-ipa | iOS-Paketdatei (.IPA). | |
ios-store | iOS-App im Apple App Store. | |
ios-testflight | iOS-App in TestFlight. | |
harmonyos-apk / harmonyos-hap | HarmonyOS-Paketdateien. | |
| Sonstiges | file | Generische Datei. |
phone-number | Telefonnummer. | |
agent | Meta-Scanning eines Agenten. |
Der Store
OXO listet alle Agenten in einem öffentlichen Store auf, in dem Sie suchen und auch Ihre eigenen Agenten veröffentlichen können.

Veröffentlichen Sie Ihren ersten Agenten
Um Ihren ersten Agenten zu schreiben, können Sie sich ein vollständiges Tutorial hier ansehen.
Die Schritte sind im Wesentlichen wie folgt:
- Klonen Sie einen Vorlagen-Agenten mit allen bereits eingerichteten Dateien.
- Ändern Sie die Datei
template_agent.py, um Ihre Logik hinzuzufügen. - Ändern Sie das
Dockerfile, indem Sie zusätzliche Build-Schritte hinzufügen. - Ändern Sie die
ostorlab.yaml, indem Sie Selektoren, Dokumentation, Image und Lizenz hinzufügen. - Veröffentlichen Sie ihn im Store.
Sobald Sie Ihren Agenten geschrieben haben, können Sie ihn im Store veröffentlichen, damit andere ihn nutzen und entdecken können. Der Store übernimmt den Agenten-Build und erkennt automatisch neue Releases aus Ihrem Git-Repo.

Ideen für zu erstellende Agenten
Implementierungen beliebter Tools wie: