
yakit v1.4.8-0731
All-in-one-Plattform für Penetrationstests mit MITM-Proxy, Web-Fuzzer, Reverse-Connection-Handler und Plugin-System für automatisierte Sicherheitstests und Ausnutzung.
Yakit – Interaktive Plattform für Anwendungssicherheitstests
Whitepaper ansehen • Offizielle Dokumentation • Problem melden • Zur Website • Community beitreten • Projektarchitektur
Einführung in Yakit
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.
Projektarchitektur
Kerntechnologie: CDSL
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.
- Kann BurpSuites MITM‑Abfangplattform zu 100 % ersetzen;
- Schwer reproduzierbare MITM‑Passivscan‑GUI;
- Einbetten von Yaklang‑Skripten zur dynamischen Debugging‑Überwachung des Datenverkehrs; Code kann jederzeit dynamisch ausgeführt werden;
- Weltweit erstes visuelles Web‑Fuzzing‑Tool – Web Fuzzer;
- Yakit‑Plugin‑Store:
- Kann während jedes Penetrationstestschritts benutzerdefinierte Yaklang‑Skripte oder Plugins ausführen. … …
Übersicht der Sicherheitsfähigkeiten:
Besondere Technologien
MITM – Interaktives Abfangen
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.
Interaktiver HTTP‑Traffic‑Replay und Fuzz‑Test
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.
Fuzztag‑Technologie
Das Web‑Fuzzer‑Modul unterstützt durch Fuzz‑Tags die natürliche und perfekte Integration von Host‑Kollision, Intruder, Directory‑Brute‑Force usw. Für Szenarien mit einem Parameter (z. B. Benutzer‑ID bruteforcen) kann das Tag {{int(1-10)}} verwendet werden, um die zu bruteforcenden IDs automatisch zu generieren. Bei mehreren Parametern wird das kartesische Produkt als Bruteforce‑Parameter verwendet, was im Vergleich zum BurpSuite‑Intruder die Schritte der Auswahl der Bruteforce‑Methode und des Importierens von Wörterbüchern überflüssig macht, die Benutzeroperationen erheblich reduziert und den Gewohnheiten entspricht. Natürlich unterstützt das Web‑Fuzzer‑Modul auch das Importieren externer Wörterbücher, z. B. {{file(/tmp/username.txt)}}. Für komplexere Datenszenarien können Hot‑Reload‑Tags eingefügt werden, z. B. um Personalausweisnummern einer Region zu bruteforcen, kann ein Yak‑Skript eingefügt werden, das die Daten generiert. BurpSuites Intruder müsste für ein solches Szenario Code schreiben, um ein Wörterbuch zu erstellen und es dann zu importieren.
Weitere Informationen zu Fuzztag finden Sie unter: Fuzztag Überblick
Reverse‑Connection‑Technologie und Anwendungsprotokoll‑Multiplexing
Viele Exploit‑Szenarien erfordern Reverse‑Connections verschiedener Protokolldienste. Herkömmliche Exploit‑Tools müssen auf einem öffentlichen Server für jeden Dienst einen eigenen Port öffnen, z. B. LDAP‑Exploits erfordern das Starten eines HTTP‑Dienstes und eines LDAP‑Dienstes vor dem Angriff. Herkömmliche Dienste benötigen für jeden Dienst einen eindeutigen Port. Yaklangs Port‑Protokoll‑Multiplexing‑Technologie kann einen Port überwachen, das anfragende Protokoll erkennen und entsprechend antworten. Vorteile: Ressourcenersparnis, einfachere manuelle Tests, und da die Protokollheader manuell erkannt werden (basierend auf Protokollstandards), können flexible Protokoll‑Pakete erstellt werden, z. B. fehlerhafte Protokolle für Exploits oder Datenübertragung über DNS/ICMP‑Protokolle für Hintertür‑Persistenz oder Exploits in Umgebungen ohne ausgehende TCP‑Verbindungen.
Gleichzeitig implementiert Yakit auf Basis dieser Technologie ein Reverse‑Modul mit den Funktionen Reverse Shell, Reverse‑Connection‑Exploit und Reverse‑Connection‑Erkennung. Reverse Shell kann einen Port überwachen, um als Empfänger einer Reverse Shell zu dienen; nach Erhalt der Reverse Shell kann der entfernte Server wie mit SSH gesteuert werden. Herkömmliche Penetrationstests verwenden Nc zum Abhören eines Ports, aber Tasten wie Rücktaste oder Pfeiltasten verursachen häufig Zeichenfehler, und die Shell unterscheidet sich stark von einer nativen SSH. Yakis Reverse Shell bietet ein natives SSH‑ähnliches Erlebnis. Der Reverse‑Connection‑Exploit‑Teil kann auf einem einzelnen Port lauschen, für verschiedene Protokolle das Payload setzen, und nach Erhalt einer Anfrage das Protokoll automatisch erkennen und das entsprechende Payload zurückgeben, um den Exploit auszuführen. Die Reverse‑Connection‑Erkennung bietet TCP‑, DNSLog‑ und ICMP‑Reverse‑Erkennung, z. B. zur Erkennung von Befehlsinjektionen.
Verwendung
-
Sie können die App auf unserer Offiziellen Website herunterladen und installieren
-
Lesen Sie unsere Offizielle Dokumentation zum Lernen und Verwenden von Yakit
Weitere technische Inhalte finden Sie unter:
Community beitreten
Bei konstruktiven Vorschlägen oder Bug‑Meldungen erstellen Sie bitte ein Issue
Oder kontaktieren Sie uns über den offiziellen WeChat‑Account. Auch für kommerzielle Lizenzierungen und Kooperationen sind wir offen.
Treten Sie der Community bei oder wenden Sie sich bei Fragen an die Technik: Fügen Sie den Betriebs‑WeChat hinzu:
Betriebs‑WeChat:
QR‑Code des öffentlichen Accounts:
Stargazers over time
Haftungsausschluss
-
Dieses Tool richtet sich ausschließlich an rechtmäßig autorisierte Sicherheitsmaßnahmen von Unternehmen und persönliche Lernzwecke. Zum Testen der Funktionalität richten Sie bitte eine eigene Übungsumgebung ein.
-
Bei der Verwendung dieses Tools müssen Sie sicherstellen, dass die Handlungen den lokalen Gesetzen und Vorschriften entsprechen und Sie ausreichende Autorisierungen eingeholt haben. Scannen Sie keine nicht autorisierten Ziele.
-
Es ist verboten, Reverse Engineering, Dekompilierung, Versuche zur Quellcode‑Entschlüsselung, Einbettung von Hintertüren oder Verbreitung von Schadsoftware mit dieser Software durchzuführen.
-
Wenn Sie Yakit für kommerzielle Zwecke nutzen möchten, stellen Sie sicher, dass Sie die offizielle Autorisierung erhalten haben; andernfalls behalten wir uns das Recht vor, rechtliche Schritte einzuleiten.
Bei Verstößen gegen die oben genannten Verbote behalten wir uns das Recht vor, rechtliche Schritte gegen Sie einzuleiten.
Für jegliche rechtswidrigen Handlungen während der Nutzung dieses Tools übernehmen Sie selbst die Verantwortung; wir übernehmen keine Haftung.
Bevor Sie dieses Tool installieren und nutzen, lesen und verstehen Sie bitte alle Bedingungen sorgfältig
Einschränkungen, Haftungsausschlüsse oder andere Klauseln, die Ihre wichtigen Rechte betreffen, können durch Fettschrift oder Unterstreichung hervorgehoben werden.
Sofern Sie diese Bedingungen nicht vollständig gelesen, verstanden und akzeptiert haben, installieren und nutzen Sie dieses Tool bitte nicht. Ihre Nutzung oder jede andere ausdrückliche oder stillschweigende Annahme dieser Bedingungen gilt als Zustimmung.
