Before you start installing anything, you need to choose the best hardware platform for your particular needs - this choice determines both possible operating systems, and installation method:
Choosing Raspberry Pi platform, you have to choose between Raspbian and Ubuntu. Differences:
If your chosen hardware has 3 GB RAM or less, we advise that you choose 32-bit version (if you have 32-bit and 64-bit version to choose). Also, if you choosed specialized hardware like Raspberry Pi, it is better to use a specialized distribution (eg. Raspbian), with dedicated kernel version and additional userland tools, than generic Ubuntu for ARM.
If you choose Kali Linux, you have 2 options:
Download install image for your chosen hardware architecture, and install it as primary OS on your computer.
Download live image and do everything just like in stage 2 of Drive Badger installation:
The second option gives you additional capabilities: Kali Linux works exactly the same as it would be installed on your computer, allowing also to encrypt the target partition (which is not possible on Raspberry Pi). On the other hand, booting Kali Linux in this mode (even without encryption) requires having a screen and keyboard, to manually choose 4th or 5th option at each boot. So this mode is suitable mainly for laptops.
Boot into your new Linux, make sure that you have working Internet connection, open the terminal, execute sudo su -
to become root, and execute:
apt update
apt install git
git clone https://github.com/drivebadger/drivebadger /opt/drivebadger
git clone https://github.com/drivebadger/compat /opt/drivebadger/external/compat
git clone https://github.com/drivebadger/ext-veracrypt /opt/drivebadger/external/ext-veracrypt
git clone https://github.com/drivebadger/ignore-known /opt/drivebadger/config/ignore-known
The above set of 4 repositories is a bare minimum - enough to run the exfiltration process, but not enough to achieve optimal performance, handle encrypted drives or network shares. Now you need to clone all chosen configuration repositories and hooks into respectively /opt/drivebadger/config
and /opt/drivebadger/hooks
directories:
Mobile Badger supports 4 most important drive encryption methods: Apple FileVault, Bitlocker, LUKS and VeraCrypt. Of course, decryption is possible only when you obtained and installed encryption keys (either assigned to drives, or not).
For security reasons, in most cases you should keep your encryption keys in a private repository. See how to install private repositories.
While Mobile Badger's main functionality is data exfiltration, it is also able to make changes to the copied filesystem: create files or directories, write data into them, rename, delete etc. This feature is called filesystem injection and is done by "injectors". See injectors-playground repository for example scripts.
After you create your own injector repositories, you need to clone them into /opt/drivebadger/injectors
directory.
Make sure that you cloned everything that you want to use. Then open the terminal, execute sudo su -
to become root, and execute:
cd /opt/drivebadger/setup/mobile && ./install.sh
This will "arm" your computer by enabling custom systemd
rules that intercept events of plugging in USB devices.
You can find the example install script here - just remember, that it's an example, not a complete script.