Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Outils/GitHubGitHub/arno0x/dbc2
Frameworks de Tests d'IntrusionGénération de PayloadsPost-ExploitationCommandement et ContrôleRed Teaming
GitHubarno0x/dbc2

DBC2

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.

Voir le dépôt
3269414il y a 8 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

DBC2

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) : Démonstration

Nouvelles fonctionnalités dans la version 0.2.x : Démonstration

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

Architecture

Architecture de DBC2

Fonctionnalités

Principales fonctionnalités de DBC2 :

  • Divers stagers (PowerShell one liner, fichier batch, macro MS-Office, javascript, DotNetToJScript, fichier msbuild, fichier SCT, ducky, d'autres à venir...)
  • Commandes CLI uniques (une à la fois, pas de persistance d'environnement)
  • Shell pseudo-interactif (persistance d'environnement) - basé sur une idée de 0xDEADBEEF00 [at] gmail.com
  • Envoi de fichier vers l'agent
  • Récupération de fichier depuis l'agent
  • Lancement de processus sur l'agent
  • Keylogger
  • Enregistrement du presse-papiers (surveillance/espionnage du presse-papiers)
  • Capture d'écran
  • Exécution et interaction avec des modules PowerShell (capacités illimitées : PowerSploit, Inveigh, Nishang, modules Empire, Powercat, etc.)
  • Envoi de frappes clavier à n'importe quel processus
  • Mise en place de la persistance via une tâche planifiée et instance unique via un Mutex
  • Peut s'exécuter dans (w|c)script.exe grâce au stager DotNetToJScript (javascript2)
  • Peut être injecté dans n'importe quel processus grâce à nativeWrapper et son shellcode indépendant de la position correspondant !

Dépendances et prérequis

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 :

  • Python 2.7 (non testé avec Python 3)
  • Les bibliothèques suivantes, qui peuvent être installées avec pip install -r requirements.txt :
    • requests>=2.11
    • tabulate
    • pyscrypt
    • pycrypto

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 :

  • .NET Framework >= 4.5 (testé avec succès sur Windows 7 et Windows 10)

Aspects de sécurité

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.

Installation et Configuration

L'installation est assez simple :

  • Clonez ce dépôt Git : git clone https://github.com/Arno0x/DBC2 dbc2
  • Placez-vous dans le dossier DBC2 : cd dbc2
  • Installez les dépendances avec pip install -r requirements.txt
  • Donnez les droits d'exécution au script principal : chmod +x dropboxC2.py

Pour démarrer le contrôleur, tapez simplement ./dropboxC2.py.

La configuration se fait via le fichier config.py :

  • Vous pouvez éventuellement spécifier votre jeton d'accès API Dropbox et la clé maître encodée en base64. Si vous le faites, le contrôleur ne vous les demandera pas au démarrage.

DBC2 est également disponible en tant que conteneur Docker, donc : Consultez DBC2 sur Docker hub. Ou faites simplement : docker pull arno0x0x/dbc2

Compilation de votre propre agent

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.

  • Copiez le dossier agent/source sur une machine Windows avec le framework .NET installé
  • Placez-vous dans le répertoire source
  • Utilisez le compilateur C# en ligne de commande .NET :
    • Pour obtenir l'exécutable standard de l'agent : C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /out:dbc2_agent.exe *.cs
    • Pour obtenir la version de débogage : C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /define:DEBUG /out:dbc2_agent_debug.exe *.cs

AVERTISSEMENT

Cet outil est destiné à être utilisé uniquement de manière légale et légitime :

  • soit sur vos propres systèmes comme moyen d'apprentissage, de démonstration de ce qui peut être fait et comment, ou pour tester vos mécanismes de défense et de détection
  • sur des systèmes pour lesquels vous avez été officiellement et légitimement autorisé à effectuer des évaluations de sécurité (pentest, audits de sécurité)

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.

Auteur

Arno0x0x - Vous pouvez me contacter sur ma page Twitter (@Arno0x0x).

TODO

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 :

  • Recueillir les informations système de base pour chaque agent au démarrage
  • Créer des événements de base côté agent, ainsi que l'abonnement aux événements et des actions automatiques côté contrôleur (ex : "machine verrouillée ou écran de veille démarré" permettrait une activité visible comme l'envoi de frappes clavier à certains processus, ou "un processus donné ou une connexion a été établi")
  • Ajouter une option pour que le stage se persiste automatiquement au premier démarrage
  • Possibilité de confier plus d'une tâche à un agent à la fois

À corriger :

  • Corriger le manque de chiffrement sur la fonction "sendFile" (par paresse de ma part : côté agent, je voulais utiliser la fonction WebClient->DownloadFile et je ne suis pas sûr de comment insérer ma routine de déchiffrement au milieu du flux sans devoir réécrire cette fonction manuellement). Ce sont les seules données qui ne sont pas chiffrées. Tout ce qui circule de l'agent vers le contrôleur via les serveurs Dropbox est correctement chiffré.
Télécharger l’outil