CLI-Tool
yaklang/yakit avatar
yaklang/yakit

Yakit: Ein interaktiver Sicherheitstest-Client für die Yaklang-Engine

Yakit ist ein Cybersicherheits-Toolkit, das auf einem modularen Client basiert und das Scannen von Schwachstellen, die Bedrohungssuche, die Asset-Analyse und betriebliche Arbeitsabläufe für Sicherheitsteams unterstützt.

7.738 Sterne824 ForksTypeScriptAGPL-3.0
GitHub

Auf einen Blick

Was ist das?
Yakit ist ein grafischer Client, der über gRPC mit der Yaklang-Engine verbunden wird und Szenarien wie MITM-Abfangen, Web-Fuzzing und Reverse-Connections abdeckt.
Für wen ist es gedacht?
Geeignet ist yakit für Anwender, deren Aufgabe den in der README von yaklang/yakit beschriebenen Ablauf trifft. Nicht geeignet ist es als Beleg für unbeschriebene Funktionen.
Darf ich es kommerziell nutzen?
Ja, unter strengen Bedingungen. AGPL-3.0 ist eine Lizenz mit Netzwerk-Copyleft: Wenn andere eine veränderte Version über ein Netzwerk nutzen, etwa als gehosteten Dienst, müssen Sie ihnen den Quellcode unter derselben Lizenz anbieten.
Wird es noch gepflegt?
Ja. Die letzten Commits kamen vor 1 Tag.
In welcher Sprache ist es geschrieben?
Hauptsächlich TypeScript, laut der Sprachstatistik von GitHub.

Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 14. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.

TIEFGEHENDE OPEN-SOURCE-ANALYSE

yakit: Zweck und dokumentierter Umfang

Yakit is a cybersecurity toolkit built around a modular client that supports vulnerability scanning, threat hunting, asset analysis, and operational workflows for security teams. Die README von yaklang/yakit beschreibt den folgenden Projektumfang:

yaklang/yakit ist das Repository für das Yakit-Projekt, das als "Cyber Security ALL-IN-ONE Platform" beschrieben wird und TypeScript als primäre Sprache verwendet. Zum Zeitpunkt der Erstellung dieses Artikels hat das Repository auf GitHub 7.664 Sterne, 820 Forks und 138 offene Issues; es ist nicht archiviert. Die README ist hauptsächlich auf Chinesisch verfasst und bietet einen Link zu einer englischen Version, aber dieser englische Inhalt war nicht Teil des hier geprüften Materials. Es ist keine Homepage-URL angegeben, und das Repository nennt keine konkreten Release-Versionen oder Download-Zahlen; diese Details müssten separat von der GitHub-Releases-Seite bezogen werden.

Diese Aussagen sind als dokumentierte Fähigkeiten zu lesen. Sterne, Forks und Selbstdarstellungen belegen keine Leistung außerhalb der beschriebenen Beispiele.

yakit: Aufbau der bereitgestellten Lösung

Die technische Einordnung von yaklang/yakit ergibt sich aus den genannten Komponenten, Dateien und Schnittstellen.

Die README beschreibt Yakit als einen Client, der auf einem gRPC-Server für die Yaklang-Engine aufbaut. Das Team schrieb diesen Server, um die Sicherheitsfunktionen von Yaklang näher an die tatsächliche Nutzung zu bringen, und konstruierte dann Yakit als Client darauf. Benutzer bedienen die Engine über die GUI von Yakit, und der gRPC-Server wird als plattformunabhängig beschrieben, der sowohl Remote-Bereitstellung als auch lokalen Start auf dem Host unterstützt. Yaklang selbst wird als domänenspezifische Sprache für den Sicherheitsbereich dargestellt. Die README sagt, dass man damit hochwertige Ersatzlösungen für Tools schreiben kann, die nicht nativ integriert werden können, oder Produkte mit ausgereiftem Ökosystem nach Quellcode-Änderungen kompilieren und integrieren kann, geht aber nicht auf Sprachspezifikationen oder Kompilierungsdetails ein.

Wo die Quelle keine Laufzeitdetails, Lastgrenzen oder Kompatibilitätsmatrix nennt, bleibt dieser Punkt offen. Das verhindert, dass ein README-Beispiel als Zusage für jede Umgebung verstanden wird.

yakit: Arbeitsablauf mit konkreten Eingaben

Für den Einstieg ist der im Projektumfeld passende Prüfpunkt npm install && npm test in yaklang/yakit. Bei yaklang/yakit sollten dabei genau die in der README genannten Eingaben, Konfigurationsdateien und Ausgaben verfolgt werden.

Die README definiert CDSL als CyberSecurity Domain Specific Language, eine Programmiersprache speziell für den Cybersicherheitsbereich, und gibt an, dass eine stackbasierte virtuelle Maschine den Laufzeitzustand dieser Turing-vollständigen Sprache trägt. Ein Architekturdiagramm zeigt die Beziehung zwischen der Yaklang-Engine und dem Yakit-Client, obwohl das Bild hier nicht reproduziert werden kann. Die README sagt, das Ziel von CDSL sei die Integration von Sicherheitsfunktionen und die Vereinheitlichung der zugrunde liegenden Plattform. Sie listet mehrere Yakit-Fähigkeiten auf, darunter eine MITM-Abfangplattform, eine passive Scan-GUI, das Einbetten von Yaklang-Skripten für dynamisches Verkehrs-Debugging, ein visuelles Web-Fuzzing-Tool und einen Plugin-Store. Diese werden als Liste präsentiert, ohne Benchmarks oder Vergleiche mit anderen Produkten.

Relevant sind die tatsächlich erzeugten Dateien, Logs, UI-Zustände oder Testergebnisse. Nicht dokumentierte Defaults werden nicht ergänzt.

yakit: Grenzen im praktischen Betrieb

Das MITM-Modul wird als Ersatz für BurpSuite bei Vorgängen wie dem Herunterladen und Installieren von Zertifikaten, dem Abfangen von Anfragen und Antworten und dem Bearbeiten erfasster Pakete beschrieben. Es bietet einen Arbeitsablauf von Abfangen über History zu Repeater/Intruder. Das Prinzip ist, dass Yakit einen HTTP-Proxy startet und Verkehr automatisch weiterleitet; wenn manuelles Abfangen aktiviert ist, stoppt es die Weiterleitung, blockiert die Anfrage und verarbeitet sie durch Gzip-Dekomprimierung, Chunk-Behandlung und Dekodierung, sodass die Anfrage menschenlesbar wird. Benutzer können Anfragen anzeigen, ändern oder erneut abspielen, und beim erneuten Abspielen repariert Yakit das HTTP-Anfragepaket, um es gültig zu halten. Die README weist ausdrücklich darauf hin, dass die Yak-Engine die HTTP-Bibliothek manuell implementiert, sodass Benutzer fehlerhafte Anfrage- und Antwortpakete für die Ausnutzung von Schwachstellen in besonderen Szenarien erstellen können.

Für yaklang/yakit bedeutet das eine klare Grenze zwischen dokumentierter Funktion und eigener Betriebsannahme. Netzwerkzugriff, Rechte, Abhängigkeiten und Ressourcenbedarf müssen zum genannten Ablauf passen; die Quelle verspricht keine allgemeine Produktionsreife.

yakit: Lizenz und Verantwortungsbereich

Das Material nennt für yaklang/yakit die Lizenz AGPL-3.0. Für diesen konkreten Einsatz sind vor Verteilung, Änderung oder Einbettung die Pflichten dieser Lizenz zu prüfen.

Das Web-Fuzzer-Modul ermöglicht es Benutzern, rohe HTTP-Anfragen zu senden, wobei das Backend automatisch Details wie CRLF, Content-Type, Chunked-Transfer, Boundary und Content-Length korrigiert. Die Fuzztag-Technologie generiert Brute-Force-Parameter über Tags; zum Beispiel erzeugt {{int(1-10)}} eine ID-Sequenz. Bei Brute-Force mit mehreren Parametern wird das kartesische Produkt der Parameter verwendet. Externe Wörterbücher können mit Tags wie {{file(/tmp/username.txt)}} importiert werden. Für komplexere Datenszenarien können Hot-Load-Tags eingefügt werden, um Yak-Skripte auszuführen, die Daten direkt im Web Fuzzer generieren. Die README vergleicht Fuzztag mit BurpSuites Intruder und behauptet, dass es Schritte wie die Auswahl eines Brute-Force-Modus und das Importieren von Wörterbüchern überflüssig macht.

Sicherheitsprüfung, Abhängigkeitspflege und die Entscheidung über Zugangsdaten bleiben beim betreibenden Team, soweit die Quelle dafür keine Zusage macht.

yakit: Eignung und erster Nachweis

Für Schwachstellenausnutzung, die Rückverbindungen benötigt, implementiert Yaklang Port-Protokoll-Multiplexing: Ein Port kann lauschen, das Protokoll eingehender Anfragen identifizieren und entsprechend antworten. Die README sagt, diese Technik könne fehlerhafte Protokollpakete konstruieren oder Daten über DNS- und ICMP-Protokolle transportieren, was für Rechteerhalt oder Ausnutzung verwendet werden kann, wenn TCP nicht verfügbar ist. Yakit baut auf dieser Technik ein Reverse-Connection-Modul auf, einschließlich Reverse Shell, Reverse-Connection-Ausnutzung und Reverse-Connection-Erkennung. Reverse Shell lauscht auf einem Port, um eine Reverse-Shell zu empfangen; die README behauptet, die Erfahrung sei nahe an nativem SSH, während traditionelle Netcat-Listener oft Rückschritt- und Pfeiltasten verstümmeln. Ausnutzung erlaubt es, Payloads für verschiedene Protokolle auf einem Port zu setzen, und Erkennung bietet TCP-, DNSLog- und ICMP-Prüfungen.

Geeignet ist yakit für ein Team, dessen Aufgabe den beschriebenen Ablauf trifft und das npm install && npm test in yaklang/yakit mit einem kleinen, projekttypischen Beispiel ausführen kann. Nicht geeignet ist das Repository als Beleg für Funktionen, Formate oder Integrationen, die die README nicht nennt. Bei der Entscheidung sind die konkrete Ausgabe, Fehlermeldungen und die AGPL-3.0-Lizenz gemeinsam zu bewerten.

Redaktionelles Fazit

Geeignet ist yakit für Anwender, deren Aufgabe den in der README von yaklang/yakit beschriebenen Ablauf trifft. Nicht geeignet ist es als Beleg für unbeschriebene Funktionen. Vor der Einführung sollte npm install && npm test in yaklang/yakit mit einem kleinen Beispiel ausgeführt werden; maßgeblich sind die konkrete Ausgabe, die genannten Konfigurationsdateien und die Pflichten der AGPL-3.0-Lizenz.

Offizielle Quellen

  1. Official README
  2. Project repository
  3. Release notes
Community-Notizen

Community-Notizen