
DBC2 (DropboxC2) is a modular post-exploitation tool, composed of an agent running on the victim's machine, a controler, running on any machine, powershell modules, and Dropbox servers as a means of communication.
LAST/CURRENT VERSION: 0.2.6
Author: Arno0x0x - @Arno0x0x
DBC2 (DropboxC2) is a modular post-exploitation tool, composed of an agent running on the victim's machine, a controler, running on any machine, powershell modules, and Dropbox servers as a means of communication.
This project was initially inspired by the fantastic Empire framework, but also as an objective to learn Python.
Check out this introduction and demo of basic functionnalities (v0.0.1) :

New features in version 0.2.x :

The app is distributed under the terms of the GPLv3 licence.

DBC2 main features:
(w|c)script.exe thanks to the DotNetToJScript stager (javascript2)DBC2 requires a Dropbox application ("App folder" only is sufficient) to be created within your Dropbox account and an access token generated for this application, in order to be able to perform API calls. Look at the intoduction video on how to do this if you're unsure.
On the controller side, DBC2 requires:
pip install -r requirements.txt:
DBC2 controller has been successfully tested and used on Linux Kali and Mac OSX.
On the agent side, DBC2 requires:
DBC2 controller asks for a master password when it starts. This password is then derived into a 128 bits master key by the use of the PBKDF function from the pyscrypt library. The master key is then base64 encoded and can (optionnally) be saved in the config file.
DBC2 performs end-to-end encryption of data using the master key with AES-128/CBC mode. Data exchanged between the agent and the controller flows through the Dropbox servers so while the transfer itself is encrypted, thanks to HTTPS, data has to be end-to-end encrypted to protect the data while at rest on the Dropbox servers.
DBC2 also performs obfuscation of the stages and the modules by the use of XOR encryption, which is dumb encryption but is enough to simply obfuscate some well known and publically available piece of codes. The key used to perform XOR encryption is a SHA256 hash of the master key.
Installation is pretty straight forward:
git clone https://github.com/Arno0x/DBC2 dbc2cd dbc2pip install -r requirements.txtchmod +x dropboxC2.pyTo start the controller, simply type ./dropboxC2.py.
Configuration is done through the config.py file:
DBC2 is also available as a Docker container so it's:
Check DBC2 on Docker hub.
Or simply do: docker pull arno0x0x/dbc2
You can very easily compile your own executables of the agent stage, from the source code provided. You don't need Visual Studio installed.
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 *.csThis tool is intended to be used in a legal and legitimate way only:
Quoting Empire's authors: There is no way to build offensive tools useful to the legitimate infosec industry while simultaneously preventing malicious actors from abusing them.
Arno0x0x - You can contact me on my twitter page (@Arno0x0x).
This is still version beta of this tool, and my first project developped with Python and C#. So it is probably full of bugs, not written in the most Pythonic of CSharp'ish way. Bugs fixes and improvements will come over time as I'll be getting feedback on this tool.
To be added in the next releases:
To be fixed: