/Drone-Hacking-Tool

Drone Hacking Tool is a GUI tool that works with a USB Wifi adapter and HackRF One for hacking drones.

Primary LanguagePythonMIT LicenseMIT

Drone Hacking Tool

Drone Hacking Tool is a GUI tool that works with a USB Wifi adapter and HackRF One for hacking drones.

License

Overview

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.

Install ROS

Before you start using this tool, you must install Robot Operating System (ROS) Kinetic on your Ubuntu. For more information, please click here.

Install ROS driver

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.

Install Aircrack–ng suite

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.

Install hackrf utility

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.

USB Wifi adapter

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.

The Remote server (optional)

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. Please click https://youtu.be/GhxaEewu4V8.

To better understand what's going on, please turn on the CC subtitle.

User interface

Development team

Special thanks with