All-in-one-Plattform für Penetrationstests mit MITM-Proxy, Web-Fuzzer, Reverse-Connection-Handler und Plugin-System für automatisierte Sicherheitstests und Ausnutzung.
Whitepaper ansehen • Offizielle Dokumentation • Problem melden • Zur Website • Community beitreten • Projektarchitektur
Sicherheitsintegration ist eine Reform der Sicherheitsabläufe und des Sicherheitsmanagements für Unternehmen unter den neuen Normalbedingungen und eine dringende Notwendigkeit.
Basierend auf dem Konzept der Sicherheitsintegration hat das Yaklang.io‑Team die vertikale Sicherheitssprache Yaklang entwickelt. Für Produkte/Werkzeuge, die nicht nativ in die Yak‑Plattform integriert werden können, können mit Yaklang „hochwertige Alternativen“ neu geschrieben werden. Für Produkte mit vollständigem Ökosystem und hoher Anerkennung kann Yaklang direkt kompilieren, integrieren und den Quellcode notwendigerweise ändern, um ihn besser an die Yaklang‑Sprache anzupassen. Für Sicherheitsexperten, die keinen Code schreiben möchten, bietet Yakit für alle Fähigkeiten in Yaklang geeignete GUIs; mit den Versionen wird die GUI ausgereifter.
Um die Sicherheitsfähigkeiten von Yaklang näher an die tatsächliche Nutzung zu bringen, haben wir einen gRPC‑Server für Yak geschrieben und mit diesem Server einen Client erstellt: Yakit.
CDSL steht für „CyberSecurity Domain Specific Language“, eine domänenspezifische Programmiersprache für die Cybersicherheit. Wir haben einen Stack‑VM geschrieben, die den Laufzeitzustand dieser Turing‑vollständigen Sprache verwaltet. Wir hoffen, durch „CDSL“ die Integration von Sicherheitsfähigkeiten und die große Vereinheitlichung der zugrunde liegenden Plattform zu erreichen.
Um die selbst entwickelte CDSL für den Sicherheitsbereich näher an reale Anwendungsszenarien zu bringen, haben wir einen gRPC‑Server für Yaklang geschrieben und darauf den Client Yakit aufgebaut. Im Grunde wird die Engine über die GUI von Yakit gesteuert. Der gRPC‑Server von Yakit macht die Bereitstellung für Benutzer einfacher und schneller, plattformunabhängig; er kann remote oder direkt lokal auf dem Host eingesetzt werden.
Übersicht der Sicherheitsfähigkeiten:
Die MITM‑Konsole kann alle Operationen von BurpSuite zu 100 % ersetzen (Zertifikate herunterladen und installieren, Anfragen und Antworten abfangen, abgefangene Pakete bearbeiten usw.). Sie bietet einen reibungslosen Workflow: Abfangen → History → Repeater/Intruder. Daten abfangen, in History die historischen Daten anzeigen, die zu analysierenden Pakete auswählen und an Web Fuzzer zur Repeater/Intruder‑Operation senden. Neben diesen typischen Szenarien bietet MITM auch flexiblere Funktionen wie Plugin‑Passivscan, Hot‑Reload, Paketersetzung und Markierung.
Das Prinzip des MITM‑Moduls in Yakit ist, einen HTTP‑Proxy zu starten, der Verkehr automatisch weiterleitet. Wenn der Benutzer manuelles Abfangen aktiviert, wird der automatische Verkehr gestoppt, die Anfrage blockiert und die Anfrage aus der Warteschlange genommen, um Gzip zu dekomprimieren, Chunks zu verarbeiten, zu decodieren usw., sodass die Anfrage für Menschen lesbar wird und auf der Benutzeroberfläche angezeigt wird. Der Benutzer kann die Anfrage anzeigen, ändern oder wiedergeben. Beim Wiederholen wird das vom Benutzer erstellte HTTP‑Anfragepaket repariert, um seine Gültigkeit sicherzustellen. Die Yak‑Engine implementiert die HTTP‑Bibliothek manuell, sodass Benutzer fehlerhafte Anfrage‑/Antwortpakete für besondere Exploit‑Szenarien erstellen können.
Das Web‑Fuzzer‑Modul unterstützt das Senden benutzerdefinierter HTTP‑Rohdaten. Um die Bedienung intuitiv zu halten und den Benutzer nur mit den Daten betreffen zu müssen, leistet das Yakit‑Backend viel Arbeit. Informationen, die für die Datenübertragung und -analyse im HTTP‑Rohformat notwendig sind, werden vom Backend repariert und ergänzt, z. B. CRLF reparieren, Content‑Type ergänzen, Chunk‑Übertragung, Boundary‑Ergänzung, Content‑Length‑Reparatur usw.