Ein kollaboratives, plattformübergreifendes Red-Teaming-Framework
Ein plattformübergreifendes Post-Exploit-Framework für Red Teaming, das mit GoLang, Docker, Docker-Compose und einer Web-Browser-Oberfläche erstellt wurde. Es bietet eine kollaborative und benutzerfreundliche Oberfläche für Operateure, Manager und die Berichterstattung während des gesamten Red-Tearming-Prozesses.
Mythic wird über die mythic-cli-Binärdatei gesteuert. Um die Binärdatei zu generieren, führen Sie sudo make im Hauptverzeichnis von Mythic aus.
Von dort aus können Sie sudo ./mythic-cli start ausführen, um alle Standard-Mythic-Container zu starten.
Detailliertere Einrichtungsanleitungen, Konfigurationen, Beispiele, Screenshots und mehr finden Sie auf der Mythic-Dokumentationswebsite.
Das Mythic-Repository selbst hostet keine Payload-Typen oder C2-Profile. Stattdessen bietet Mythic einen Befehl, ./mythic-cli install github <url> [-b Branchname] [-f], mit dem Agents in eine laufende Mythic-Instanz installiert werden können.
Payload-Typen und C2-Profile finden Sie auf der Übersichtsseite.
Um einen Agent zu installieren, führen Sie einfach das Skript aus und geben Sie als Argument den Pfad zum Agent auf GitHub an:
sudo ./mythic-cli install github https://github.com/MythicAgents/apfell
Das Gleiche gilt für die Installation von C2-Profilen:
sudo ./mythic-cli install github https://github.com/MythicC2Profiles/http
Dies ermöglicht es, Agents und C2-Profile in einem viel regelmäßigeren Tempo zu aktualisieren und die Mythic-Kernkomponenten vom Rest von Mythic zu trennen.
Verwenden Sie den Befehl ./mythic-cli update, um nach verfügbaren Updates für mythic-cli, mythic_server und die mythic_react-Benutzeroberfläche zu suchen.
Dies wird das Update nicht für Sie durchführen, sondern Sie nur darüber informieren, ob ein Update vorhanden ist. Um nach Updates für einen bestimmten Branch zu suchen, verwenden Sie ./mythic-cli update -b [Branchname].
Mythic verwendet Docker und Docker-Compose für alle seine Komponenten, was es Mythic ermöglicht, eine breite Palette von Komponenten und Funktionen bereitzustellen, ohne dass Anforderungen auf dem Host bestehen. Es kann jedoch hilfreich sein, Einblicke in die Konfiguration der Container zu haben. Alle Docker-Container von Mythic werden auf DockerHub unter itsafeaturemythic gehostet.
Darüber hinaus verwendet Mythic ein benutzerdefiniertes PyPi-Paket (mythic_container) und ein benutzerdefiniertes Golang-Paket (https://github.com/MythicMeta/MythicContainer), um die Steuerung und Synchronisation von Informationen zwischen allen Containern zu unterstützen und eine einfache Möglichkeit zu bieten, Skriptzugriff auf den Server zu erhalten.
Dockerfiles für jedes dieser Docker-Images finden Sie auf MythicMeta.
Der Quellcode des mythic-container PyPi-Pakets ist auf MythicMeta verfügbar und wird automatisch auf allen mythic_python_*-Docker-Images installiert.
Dieses PyPi-Paket ist verantwortlich für die Verbindung zu RabbitMQ, die Synchronisation Ihrer Daten mit Mythic und die Reaktion auf Dinge wie Tasking, Webhooks und Konfigurationsaktualisierungen.
Der Quellcode des github.com/MythicMeta/MythicContainer Golang-Pakets ist auf MythicMeta verfügbar.
Dieses Golang-Paket ist verantwortlich für die Verbindung zu RabbitMQ, die Synchronisation Ihrer Daten mit Mythic und die Reaktion auf Dinge wie Tasking, Webhooks und Konfigurationsaktualisierungen.
Die gesamte Dokumentation für das Mythic-Projekt wird auf der Website docs.mythic-c2.net gepflegt. Der zugrundeliegende Code für die Dokumentation befindet sich im Repository Mintlify_Dcumentation in MythicMeta.
Eine ganze Reihe von Leuten haben Bug Reports, Änderungen und Korrekturen durchgemacht, um dieses Projekt zu verbessern. Vielen Dank!
Die folgenden Personen haben viel zum Projekt beigetragen. Wenn Sie ihre Handles im Projekt bei Payload-Typen und C2-Profilen sehen, zögern Sie nicht, sie um Hilfe und Beiträge zu bitten:
Dies ist ein Open-Source-Projekt, das mit Autorisierung zur Bewertung des Sicherheitsstatus und für Forschungszwecke verwendet werden soll.