
CLI-Tool für die Horizon3.ai-API
Der NodeZero MCP-Server ist jetzt verfügbar und ermöglicht es Ihnen, einen lokal gehosteten MCP-Server auszuführen und zu verwalten, der die Find-, Fix-, Verify-Funktionen (FFV) von NodeZero direkt in Ihre Entwicklungs- und Sicherheits-Workflows bringt.
h3-cli ist ein praktisches CLI (Kommandozeilen-Tool) für den Zugriff auf die Horizon3.ai-API. Die Horizon3.ai-API bietet programmatischen Zugriff auf eine Teilmenge der Funktionen, die über das Horizon3.ai-Portal verfügbar sind. Auf hoher Ebene ermöglicht Ihnen die API:
Die API kann für verschiedene Anwendungsfälle genutzt werden, z. B. für die Planung regelmäßiger Bewertungen Ihrer Umgebung oder den Start eines Pentests als Teil einer Continuous-Integration-Build-Pipeline.
Die folgenden Schritte bringen Sie schnell mit h3-cli zum Laufen. Diese Anweisungen wurden auf macOS- und Linux-Rechnern getestet und sollten im Allgemeinen auf jedem POSIX-kompatiblen System mit Bash-Unterstützung funktionieren.
Wenn Sie planen, interne Pentests mit h3-cli durchzuführen, sollten Sie h3-cli auf demselben Docker-Host installieren, auf dem Sie NodeZero starten.
Es wird davon ausgegangen, dass Sie bereits ein Konto bei Horizon3.ai haben. Wenn nicht, registrieren Sie sich unter https://portal.horizon3ai.com/.
Für den Zugriff auf die H3-API ist ein API-Schlüssel erforderlich. Sie können einen im Portal unter dem Menü Benutzer -> Kontoeinstellungen erstellen.
Beim Erstellen eines API-Schlüssels müssen Sie ihm eine Rolle zuweisen, die seine Berechtigungen steuert. Die verfügbaren Rollen sind:
Wir empfehlen die Rolle User, wenn Sie h3-cli testen und alle Funktionen ausprobieren möchten. Danach möchten Sie je nach Anwendungsfall möglicherweise restriktivere Berechtigungen verwenden. Wenn Sie h3-cli beispielsweise nur zum Einrichten eines NodeZero Runners verwenden möchten, empfehlen wir die Rolle NodeZero Runner.
Sie können mehrere API-Schlüssel innerhalb derselben h3-cli-Installation problemlos verwalten. Erfahren Sie mehr hier.
❗ Bewahren Sie Ihren API-Schlüssel sicher auf, denn jeder, der Ihren API-Schlüssel besitzt, kann auf Ihr H3-Konto zugreifen. Betrachten Sie einen API-Schlüssel als Benutzername + Passwort in einem. Jeder mit dem API-Schlüssel kann von überall auf Ihr Konto zugreifen. h3-cli speichert Ihren API-Schlüssel im Verzeichnis $HOME/.h3. Dieses Verzeichnis wird während der Installation erstellt und mit Berechtigungen konfiguriert, sodass nur Sie es lesen oder beschreiben können.
Installieren Sie das h3-cli-Git-Repository auf Ihrem Rechner, indem Sie den folgenden Git-Befehl in einer Shell-/Terminal-Sitzung ausführen.
git clone https://github.com/horizon3ai/h3-cli
Dadurch wird ein neues Verzeichnis h3-cli erstellt und der Inhalt des Repositorys dorthin heruntergeladen. Das Verzeichnis h3-cli wird in dem Verzeichnis erstellt, in dem Sie den Git-Befehl ausführen. Sie können h3-cli überall im Dateisystem installieren.
Wenn Sie kein Git haben, können Sie das Repository über das obige Menü als ZIP-Archiv herunterladen und es überall im Dateisystem entpacken.
Führen Sie die folgenden Befehle aus, um h3-cli zu installieren und zu konfigurieren. Ersetzen Sie your-api-key-here durch Ihren tatsächlichen API-Schlüssel.
cd h3-cli
bash install.sh your-api-key-here
Das Installationsskript installiert Abhängigkeiten (jq) und erstellt Ihr Standard-h3-cli-Profil im Verzeichnis $HOME/.h3. Ihr API-Schlüssel wird in Ihrem h3-cli-Profil gespeichert. Die Berechtigungen für Verzeichnis und Profil sind so eingeschränkt, dass keine anderen Benutzer (außer Ihnen selbst) sie lesen oder beschreiben können.
Das Installationsskript fordert Sie auf, Ihr Shell-Profil ($HOME/.bash_profile oder $HOME/.bash_login oder $HOME/.profile, je nach Betriebssystem) zu bearbeiten, um die folgenden Umgebungsvariablen festzulegen:
H3_CLI_HOME: Diese Umgebungsvariable wird von h3-cli verwendet, um sich selbst und seine unterstützenden Dateien zu finden.PATH: Diese Umgebungsvariable gibt die Verzeichnisse an, die durchsucht werden, um einen Shell-Befehl zu finden.Melden Sie sich nach der Aktualisierung Ihres Shell-Profils neu an oder starten Sie Ihre Shell-Sitzung neu, um die Profiländerungen zu übernehmen. Überprüfen Sie dann, ob Sie h3 aufrufen können, indem Sie es an der Eingabeaufforderung ausführen:
h3
Wenn alles korrekt installiert ist, sollten Sie den h3-cli-Hilfetext sehen.
Wir veröffentlichen jeden Monat neue Funktionen, Fehlerbehebungen und andere Aktualisierungen für h3-cli. Aktualisieren Sie Ihre Installation mit einer der folgenden Methoden.
h3 upgrade (empfohlen)Seit Juni 2023 können Sie den Befehl h3 upgrade verwenden, um auf die neueste Version von h3-cli zu aktualisieren.
Wenn Sie eine Fehlermeldung ERROR: unrecognized command: "upgrade" erhalten, verwenden Sie eine ältere Version von h3-cli, die den Upgrade-Befehl nicht unterstützt. Verwenden Sie eine der folgenden Methoden, um h3-cli zu aktualisieren.
easy_install.sh (empfohlen, wenn h3 upgrade nicht verfügbar ist)Führen Sie diesen Befehl aus dem übergeordneten Verzeichnis von h3-cli aus (d. h. dem Verzeichnis, das das Verzeichnis h3-cli/ enthält):
curl https://raw.githubusercontent.com/horizon3ai/h3-cli/public/easy_install.sh | bash
Wenn Sie git clone zur Installation des Repositorys verwendet haben, führen Sie einfach git pull aus, um die neueste Version zu installieren.
Wenn Sie das Repository als ZIP-Datei heruntergeladen haben, laden Sie die ZIP-Datei erneut herunter und entpacken Sie sie am selben Ort (mit anderen Worten: Ersetzen Sie Ihre vorhandene h3-cli-Installation durch die neue ZIP-Datei).
Seit Juni 2023 können Sie Ihre aktuelle Version von h3-cli wie folgt anzeigen:
h3 version
Die vollständige Versionshistorie und die Versionshinweise können Sie wie folgt anzeigen:
h3 version -v
Führen Sie den folgenden Befehl aus, um die Konnektivität mit der API zu überprüfen.
h3 hello-world
Sie sollten die folgende Antwort sehen:
{
"data": {
"hello": "world!"
}
}
❗️ Wenn Sie eine Fehlerantwort erhalten, kontaktieren Sie H3 bitte über das Chat-Symbol im Horizon3.ai-Portal.
Der folgende Befehl gibt die Liste der Pentests in Ihrem Konto zurück, die neuesten zuerst.
h3 pentests
Um nach Pentests zu filtern, die einem bestimmten Suchbegriff entsprechen, übergeben Sie den Suchbegriff als Parameter:
h3 pentests sample