Coder Social home page Coder Social logo

hkssy / drone-hacking-tool Goto Github PK

View Code? Open in Web Editor NEW
443.0 12.0 83.0 12.68 MB

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

License: MIT License

Makefile 0.55% C 33.16% Python 66.28%
wifi ros hacking wireless python

drone-hacking-tool's Introduction

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

drone-hacking-tool's People

Contributors

bbqhk avatar hkssy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

drone-hacking-tool's Issues

How do I figure out the communication between an android app and a drone to reproduce it with python and a wifi adapter?

My goal is to figure out the communication protocol between my drone and my android phone so I can control it with another device using unprotected wifi.

Unfortunately, apps for android that work between the drone and the app to capture wifi data prevent me from being able to control the drone. In other words, I cannot capture the movement data with it.

How do I figure out the communication to reproduce it with python and a wifi adapter?

Pentest Magazine Collaboration

Hi HKSSY,

My name is Kuba from Pentest Magazine. We create a publication for pentesting enthusiasts, and we are currently looking for contributors who would like to write about drone pentesting. I came across your [Drone Hacking Tool] repository and was very impressed.

Would you be interested in collaborating with us to write an article on any topic related to drone pentesting? The choice of topic is entirely up to you.

You can check out more about us at https://pentestmag.com.

You can reach me via LinkedIn: https://www.linkedin.com/in/jakub-kapu%C5%9Bci%C5%84ski/

Looking forward to your response :)

Best regards,
Jakub

Ubuntu 16.04 Python 3.8

im finding it difficult to install python 3.8 on Ubuntu 16.04, ive tried adding sudo add-apt-repository ppa:deadsnakes/ppa with no luck.
Can anyone help me with this?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.