PyBeacon
PyBeacon ist eine Sammlung von Skripten zur Handhabung von Cobalt Strikes verschlüsseltem Datenverkehr.
Sie kann Beacon-Metadaten ver- und entschlüsseln sowie symmetrisch verschlüsselte Taskings analysieren.
Enthaltene Skripte
Es gibt eine kleine Bibliothek, die Verschlüsselungs- und Decodierungsmethoden enthält, jedoch sind einige Beispielskripte beigefügt.
- stager-decode.py - Dieses Tool dekodiert einfach ein Beacon-DLL von einer Stager-URL (Sie können es verwenden, um den öffentlichen Schlüssel zu extrahieren).
- register.py - Dieses Tool befasst sich mit RSA-verschlüsselten Metadaten und kann ein neues (gefälschtes) Beacon auf einem Ziel-Teamserver registrieren.
- tasktool.py - Dieses Tool befasst sich mit AES-verschlüsselten Taskings zum/vom Teamserver. Verwenden Sie es, um Callbacks an den Teamserver zu senden oder Taskings von einem Teamserver zum Beacon zu dekodieren.
cs-3-5-rce.py - Dies ist eine Implementierung des Exploits, der zum Ausnutzen von CS < 3.5-hf1 verwendet wurde und in freier Wildbahn zum Hacken von Cobalt Strike-Servern eingesetzt wurde. Es funktioniert, indem ein Beacon mit einem Directory Traversal im IP-Adressfeld registriert wird. Anschließend wird ein Download-Callback registriert, der bewirkt, dass der "Download" an beliebiger Stelle im Ziel-Dateisystem hochgeladen wird. Der ITW-Exploit nutzte einen Cronjob, um RCE zu erreichen.
TODO
- Weitere Aufgabenarten zur Aufgaben-Dekodierungslogik hinzufügen
- Dekodierung für Beacon-Taskings hinzufügen. Derzeit wird eine gewisse "generische" Logik verwendet, die jedoch nicht wirklich hilfreich ist