
DBC2 (DropboxC2) est un outil modulaire de post-exploitation, composé d'un agent s'exécutant sur la machine de la victime, d'un contrôleur s'exécutant sur n'importe quelle machine, de modules PowerShell, et de serveurs Dropbox comme moyen de communication.
DERNIÈRE/VERSION ACTUELLE : 0.2.6
Auteur : Arno0x0x - @Arno0x0x
DBC2 (DropboxC2) est un outil modulaire de post-exploitation, composé d'un agent tournant sur la machine de la victime, d'un contrôleur tournant sur n'importe quelle machine, de modules PowerShell et des serveurs Dropbox comme moyen de communication.
Ce projet a été initialement inspiré par l'incroyable framework Empire, mais aussi avec l'objectif d'apprendre Python.
Découvrez cette introduction et démonstration des fonctionnalités de base (v0.0.1) :

Nouvelles fonctionnalités dans la version 0.2.x :

L'application est distribuée sous les termes de la licence GPLv3.

Principales fonctionnalités de DBC2 :
(w|c)script.exe grâce au stager DotNetToJScript (javascript2)DBC2 nécessite la création d'une application Dropbox (un "dossier d'application" suffit) dans votre compte Dropbox et la génération d'un jeton d'accès pour cette application, afin de pouvoir effectuer des appels API. Regardez la vidéo d'introduction pour savoir comment faire si vous n'êtes pas sûr.
Côté contrôleur, DBC2 nécessite :
pip install -r requirements.txt :
Le contrôleur DBC2 a été testé et utilisé avec succès sur Linux Kali et Mac OS X.
Côté agent, DBC2 nécessite :
Le contrôleur DBC2 demande un mot de passe maître au démarrage. Ce mot de passe est ensuite dérivé en une clé maître de 128 bits à l'aide de la fonction PBKDF de la bibliothèque pyscrypt. La clé maître est ensuite encodée en base64 et peut (optionnellement) être sauvegardée dans le fichier de configuration.
DBC2 assure un chiffrement de bout en bout des données en utilisant la clé maître avec le mode AES-128/CBC. Les données échangées entre l'agent et le contrôleur transitent par les serveurs Dropbox ; donc, bien que le transfert lui-même soit chiffré grâce à HTTPS, les données doivent être chiffrées de bout en bout pour les protéger au repos sur les serveurs Dropbox.
DBC2 effectue également un obscurcissement des stages et des modules par l'utilisation du chiffrement XOR, ce qui est un chiffrement simple mais suffisant pour obscurcir certains codes bien connus et disponibles publiquement. La clé utilisée pour le chiffrement XOR est un hash SHA256 de la clé maître.
L'installation est assez simple :
git clone https://github.com/Arno0x/DBC2 dbc2cd dbc2pip install -r requirements.txtchmod +x dropboxC2.pyPour démarrer le contrôleur, tapez simplement ./dropboxC2.py.
La configuration se fait via le fichier config.py :
DBC2 est également disponible en tant que conteneur Docker, donc :
Consultez DBC2 sur Docker hub.
Ou faites simplement : docker pull arno0x0x/dbc2
Vous pouvez très facilement compiler vos propres exécutables de l'agent à partir du code source fourni. Vous n'avez pas besoin d'installer Visual Studio.
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /out:dbc2_agent.exe *.csC:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /define:DEBUG /out:dbc2_agent_debug.exe *.csCet outil est destiné à être utilisé uniquement de manière légale et légitime :
Pour citer les auteurs d'Empire : Il n'existe aucun moyen de construire des outils offensifs utiles à l'industrie légitime de la sécurité de l'information tout en empêchant simultanément les acteurs malveillants d'en abuser.
Arno0x0x - Vous pouvez me contacter sur ma page Twitter (@Arno0x0x).
Il s'agit encore d'une version bêta de cet outil, et de mon premier projet développé avec Python et C#. Il est donc probablement plein de bugs, et n'est pas écrit de la manière la plus Pythonic ou CSharp'ish. Les corrections de bugs et les améliorations viendront avec le temps à mesure que je recevrai des retours sur cet outil.
À ajouter dans les prochaines versions :
À corriger :