Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
holo — Rust-basierte Routing-Protocol-Suite, die BGP, OSPF, IS-IS, RIP und VRRP implementiert, mit YANG-modellierter Konfiguration, gNMI/gRPC-Automatisierung und integriertem Fuzzing für hochskalierbare, automatisierungsgetriebene Netzwerke. | Kitploit
Tools/GitHubGitHub/holo-routing/holo
NetzwerkkartierungKonfigurationsprüfungFuzzingNetzwerksicherheitDNS-Analyse
GitHubholo-routing/holo

holo

Rust-basierte Routing-Protocol-Suite, die BGP, OSPF, IS-IS, RIP und VRRP implementiert, mit YANG-modellierter Konfiguration, gNMI/gRPC-Automatisierung und integriertem Fuzzing für hochskalierbare, automatisierungsgetriebene Netzwerke.

Repository anzeigen
5354631vor 9 TagenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

MIT licensed Build Status codecov Discord

Holo ist eine Suite von Routing-Protokollen, die für hochskalierbare und automatisierungsgetriebene Netzwerke entwickelt wurde.

Eine Beschreibung dessen, was ein Routing-Protokoll ist, finden Sie auf dieser Wikipedia-Seite.

Sie können Holo in Ihrem Browser ausprobieren, ohne etwas zu installieren, unter Holo Lab.

Funktionen

Fokus auf Einfachheit und Korrektheit

Holos Hauptziel ist es, eine zuverlässige, einfach zu wartende und erweiterbare Codebasis zu schaffen. Angesichts der stetig zunehmenden Komplexität von Routing-Protokollen und ihren Erweiterungen ist es entscheidend, Routing-Protokoll-Implementierungen auf einem robusten Fundament aufzubauen. Zu diesem Zweck priorisiert Holos Codebasis Einfachheit, Modularität und gründliche Dokumentation. Dank der Strenge des Rust-Compilers und umfangreicher Unit-Tests wird erwartet, dass die meisten Regressionen früh im Entwicklungszyklus neuer Funktionen erkannt werden. Weitere Details finden Sie auf der Architecture-Seite.

Automatisierungsbereit

Holo wurde speziell für hochskalierbare, automatisierungsgetriebene Netzwerke entwickelt, die programmierbare Konfiguration und Überwachung mit strukturierten und modellierten Daten erfordern. Holo implementiert nativ Standard-YANG-Module von IETF und unterstützt mehrere Management-Schnittstellen, darunter natives gRPC und gNMI. Darüber hinaus bietet Holo eine eigenständige CLI, die Befehle dynamisch aus YANG-Modulen rendert und über gRPC mit dem Holo-Daemon kommuniziert.

Die an der Konfiguration vorgenommenen Änderungen werden als Transaktionen verarbeitet, wodurch garantiert wird, dass entweder alle Änderungen angewendet oder keine angewendet werden. Diese Funktion ist ein bedeutender Wegbereiter für Netzwerkautomatisierung, da sie die Notwendigkeit der Fehlerbehebung in Management-Anwendungen beseitigt. Holo unterstützt außerdem netzwerkweite Transaktionen über mehrere Netzwerkgeräte hinweg. Weitere Netzwerkautomatisierungsfunktionen umfassen bestätigte Commits und Unterstützung für Konfigurations-Rollback.

Sicherheit

Aufgrund der Tatsache, dass Holo in einer speichersicheren Sprache geschrieben ist, ist es immun gegen eine Vielzahl von speicherbezogenen Fehlern und Sicherheitslücken. Neben den Sicherheitsgarantien von Rust gibt der Holo-Daemon beim Start auch Privilegien ab. Für bestimmte Operationen, wie das Binden von Sockets, werden Linux-Capabilities verwendet, um die minimal erforderliche Berechtigung für den kürzest möglichen Zeitraum zu erhalten.

Holo bietet außerdem robusten Schutz gegen den häufigsten Angriffsvektor in Routing-Protokoll-Stacks: Denial-of-Service-Angriffe (DoS) durch bösartige Paketeingaben. Eingehende Pakete werden in isolierten, überwachten asynchronen Tasks dekodiert, wodurch die Protokollimplementierungen sich von Panics erholen können, beispielsweise durch Ignorieren fehlerhafter Pakete oder Schließen nur des betroffenen TCP-Streams, ohne die Stabilität des gesamten Daemons zu beeinträchtigen. Darüber hinaus wird dank Holos modularem Design und der integrierten Unterstützung für coverage-guided Fuzzing erwartet, dass die meisten Parsing-Fehler während der Entwicklung erkannt und behoben werden.

Integrierte Protokollimplementierungen

Einige Protokolle wie OSPF und RIP haben verschiedene Versionen, die weit verbreitet sind, typischerweise eine für IPv4 und eine für IPv6. Holo nutzt Rusts Generics, um versionsunabhängige Protokollimplementierungen zu ermöglichen, bei denen der größte Teil des Codes von den verschiedenen Protokollversionen gemeinsam genutzt wird. Dieser Ansatz reduziert die Wartungskosten dieser Protokolle und erleichtert die Bereitstellung neuer Funktionen, die allen Protokollversionen zugutekommen.

Parallelität

Holo macht umfangreichen Gebrauch von asynchronen Operationen und stützt sich auf die Tokio-Runtime, um Tasks zu planen und sie in einem Thread-Pool auszuführen. Um eine bessere Leistung zu erzielen, werden sowohl I/O-Anfragen als auch CPU-intensive Algorithmen auf separate Tasks ausgelagert, wodurch die Auslastung aller verfügbaren CPU-Kerne maximiert wird. Die Unterstützung für runtime-agnostischen Code ist für die Zukunft geplant, sobald die notwendigen Abstraktionen vom Rust-Sprachteam standardisiert wurden.

Strukturiertes Logging

Holo erzeugt Log-Nachrichten, die strukturierte Daten enthalten, welche in verschiedenen Formaten wie JSON, Text usw. dargestellt werden können. Da das Logging über die tracing-Fassade erfolgt, können verschiedene tracing-Subscriber genutzt werden, um unterschiedliche Benutzeranforderungen zu erfüllen. Beispielsweise kann das Logging in eine Datei, an journald, an einen zentralisierten OpenTelemetry-Collector oder an eine beliebige Kombination dieser Optionen mit potenziell unterschiedlichen Logging-Leveln geleitet werden.

Reproduzierbare Fehler

Holo bietet eine Record-and-Replay-Funktionalität, die eine einfache Reproduktion jedes vom Benutzer gemeldeten Fehlers ermöglicht. Der Holo-Daemon kann so eingerichtet werden, dass er die gesamte Lebensdauer einer Protokollinstanz in einer Datei aufzeichnet. Diese Datei kann dann auf einem anderen Rechner abgespielt werden, wodurch dieselbe Ereignisabfolge reproduziert wird. Während eine Aufzeichnungssitzung Stunden oder Tage dauern kann, sollte der Wiedergabeprozess nur wenige Sekunden dauern. Dies ist dank Holos modularer Architektur möglich, bei der alle zeitbezogenen und I/O-Operationen in separaten Tasks ausgeführt und als Ereignisnachrichten abstrahiert werden.

Installation

Detaillierte Anweisungen zur Installation finden Sie in der INSTALL.md-Datei.

Unterstützte Plattformen

Holo läuft unter Linux. Die Codebasis ist weitgehend plattformunabhängig, und die Teile, die mit dem Betriebssystem interagieren, wie Netzwerk-I/O, Schnittstellenverwaltung und Routeninstallation, sind an wenigen Stellen isoliert, sodass Holo mit geringem Aufwand auf andere Plattformen portiert werden kann. Es kann auch nach WebAssembly kompiliert werden, hauptsächlich um virtuelle Netzwerke im Browser auszuführen.

Erste Schritte

Der schnellste Weg, Holo auszuprobieren, ist Holo Lab, das Netzwerktopologien von Holo-Routern direkt im Browser ausführt.

Tool herunterladen