
Une implémentation aggressor Cobalt Strike chiffrée par XOR en .NET pour chisel afin d'utiliser un proxy plus rapide et des capacités socks5 avancées.
Une implémentation d'agresseur Cobalt Strike en .NET, chiffrée par XOR, pour chisel afin d'utiliser un proxy plus rapide et des capacités socks5 avancées.
Dans mon expérience, j'ai trouvé que les proxies socks4/socks4a étaient assez lents comparés à leurs homologues socks5 et qu'il y avait un manque d'implémentation de socks5 dans la plupart des frameworks C2. Il existe un wrapper C# autour de la version go de chisel appelé SharpChisel. Ce wrapper a quelques problèmes et n'est pas maintenu à la dernière version de son homologue go. SharpChisel ne produisait pas de shellcode compatible avec donut, les méthodes de réflexion ou execute-assembly. Une correction a été trouvée en utilisant le projet SharpChisel-NG : https://github.com/latortuga71/SharpChisel-NG.
Étant donné que l'assembly SharpChisel-NG fait environ 16.7 Mo, execute-assembly (qui a une limitation de taille cachée de 1 Mo) et les méthodes similaires en mémoire ne fonctionneraient pas. Pour maintenir la majeure partie de l'exécution en mémoire, le projet NetLoader est incorporé et exécuté via execute-assembly pour héberger de manière réflexive et charger une version chiffrée par XOR de SharpChisel-NG avec des arguments base64 en mémoire.
En alternative, il est également possible d'implémenter des proxies C# similaires comme SharpSocks en remplaçant les binaires chisel appropriés du projet.
Remarque : Si vous utilisez un teamserver Windows, ignorez les étapes 2 et 3.
Clonez / téléchargez le dépôt : git clone https://github.com/m3rcer/Chisel-Strike.git
Rendez tous les binaires exécutables :
cd Chisel-Strikechmod +x -R chisel-moduleschmod +x -R toolsMingw-w64 et mono :sudo apt-get install mingw-w64sudo apt install mono-completeChiselStrike.cna dans Cobalt Strike en utilisant le Script ManagerRecompilez et remplacez les binaires mis à jour depuis le dossier src si nécessaire.
chisel peut être exécuté à la fois sur le client teamserver CS (windows / linux) et sur le beacon. L'un ou l'autre peut agir comme serveur/client. Un flux d'exécution normal consisterait à configurer un serveur chisel sur le teamserver CS, puis à créer un client sur le beacon pour se reconnecter au teamserver.
chisel <client/server> <command> : Exécute chisel sur un beaconchisel-tms <client/server> <command> : Exécute chisel sur votre teamserver CSchisel-enc : Chiffre SharpChisel-NG avec un mot de passe de votre choix via XORchisel-jobs : Liste les tâches chisel actives sur le teamserver CS et le beaconchisel-kill : Tue les tâches chisel actives sur un beaconchisel-tms-kill : Tue les tâches chisel actives sur votre client teamserver CS
SharpChisel-NG dépose une DLL sur le disque en raison de l'utilisation des packages Costura / Fody à un emplacement similaire à : C:\Users\m3rcer\AppData\Local\Temp\Costura\CB9433C24E75EC539BF34CD1AA12B236\64\main.dll qui est détectée par Defender. Il est conseillé d'obfusquer et de mettre à jour les DLL chisel et SharpChisel-NG dans le projet.
chisel-tms.load-assembly : SharpChisel-NG