Drones, as a high mobility item that can be carried around easily and launched, are becoming cheaper and more popular among the public, they can be seen almost anywhere nowadays.
However, the drone built-in flying cameras could use for illegal usage like candid photos on private property. This shows drones clearly present risks to public safety and personal privacy.
Therefore, we are working on using wireless connection methods (Wi-Fi, GPS) to hack it and take over. In this project, our goal is to capture drones to stop users with malicious intent for proof of concept and a sense of accomplishment.
Before to start
Software
Operating System selection
Due to Robot Operating System (ROS) Kinetic primarily targeting Ubuntu 16.04, so we advise using Ubuntu 16.04 for running this tool.
Before you start using this tool, you must install Robot Operating System (ROS) Kinetic on your Ubuntu. For more information, please click here.
Please install the driver for ROS to communicate with the drone. The driver called tello_driver and bebop_autonomy. In this tool, we tested DJI Tello and Parrot Bebop 2 works with this tool, users can use this tool for takeoff, landing and viewing the live camera content.
You may also install another ROS driver for hacking other drones, but you need to edit the source code and we cannot promise it can work with this tool.
Aircrack-ng is a security software related to 802.11 standard wireless network analysis. Our tool relies on the Aircrack-ng suite for wireless network detection, capturing four-way handshake packets, and implementing a Wi-Fi deauthentication attack.
This utility is used to communicate with your HackRF One.
Python version and installed modules
This tool is built on Python 3.8 and works with the following modules:
- Tkinter – GUI interface
- pandas – analysis CVS data
- paramiko – SSH connection
- ipaddress – checking whether or not a string represents a valid IP address
Hardware
HackRF One
HackRF One from Great Scott Gadgets is a Software Defined Radio peripheral capable of transmission or reception of radio signals from 1 MHz to 6 GHz. For more information, please visit the official website.
In this tool, we are using HackRF One to perform a fake GPS attack to force the drone to land or fly away from the fake GPS signal covered area.
NOT all Wi-Fi adapter is compatible with the Aircrack-ng suite. Please read this tutorial to help you select a compatible Wi-Fi adapter.
You may be using a laptop or virtual machine to run this tool, but the performance of most of the laptops is not enough for cracking WiFi passwords. So, this tool can use an SSH connection to the remote server with the powerful GPU performance and use hashcat to reduce the time for cracking passwords.
Launch the tool
For launching the tool, please type in the following command on the terminal:
python3 drone_hacking_tool.py
Video demonstration
The video demonstration only included no-password WiFi drones. However, this tool provides other methods for drone hacking, not included in this video.
To better understand what’s going on, please turn on the CC subtitle.
User interface
Drone-Hacking-Tool (this link opens in a new window) by HKSSY (this link opens in a new window)
Drone Hacking Tool is a GUI tool that works with a USB Wifi adapter and HackRF One for hacking drones.