Cod3dDOT / air-gui

Python3 gui for aircrack-ng using gtk3.0
22 stars 5 forks source link
aircrack-ng gui pygobject python3

Update before archiving:

This was a fun first adventure into the world of python. One day I will rewrite it (the dev brach was supposed to be just that). Unfortunately (or, who knows, maybe fortunately), I do not have the time to write and support something that is worthy of calling itself aircrack-gui (it shouldn't have a name like that in the first place). For now, I will rename the project to air-gui and archive the repo as a reminder of how not do things in the future.

aircrack-gui

Aircrack-gui is a python gui for aircrack-ng using gtk3.0.

The priority was to make every step intuitive and easy)

IMPORTANT

You must use aircrack-gui only on networks you have permission to.

Requirements

Installation

pip3:

Install:

pip3 install aircrack-gui

Run: (anywhere)

aircrack-gui.py

Github:

Install:

git clone https://github.com/Cod3dDOT/aircrack-gui
cd aircrack-gui
pip install -r requirements.txt

Run: (make sure you are in right directory)

python3 aircrack-gui.py

Usage

If any interface will be found, a window will open with the option to choose an interface, scan, start airmon-ng or open aircrack-ng.

Step 1: Set path (default: /home/SUDO_USER/Desktop/aircrack-ng/wifi/)

main window

Step 2: Press 'Scan for networks', wait for ~5 seconds (the main window can become unresponsive, that's normal). A new window will show up with a network list. Choose desired network, check that it has WPA2 encryption (right now WEP/WPA1 are not implemented), hit 'Start Airmon-ng on BSSID: NETWORK_BSSID'.

scanning window

Step 3: Aireplay-ng window will show up. Set amount of deauth packets to send (default: 10) and wait for station to appear (you can choose if several are found or type in a station mac address manually (format: xx-xx, xx:xx, xxxx)). Hit 'Run deauth (aireplay-ng)'. If you see 'Success' on top of the window, then a handshake was received successfully. If not, try changing the station or amount of packets.

P.S: If no stations are found, your signal strength is probably too low. Signal strength can be checked when you select your network in Step 2 and is measured from 0 to 100, higher being better.

aireplay-ng window

Step 4: Now, you can close aireplay-ng window. In the main window, press 'Open aircrack-ng', select .cap file (capture file located wherever you set it to in Step 1). Select a wordlist, hit 'Start aircrack-ng / hashcat' and hope for the best ;)

P.S If you want to convert your .cap to .22000 manually, visit official hashcat conversion website. Or, you can install hcxtools and .22000 files will be generated automatically.

aireplay-ng window

Command line arguments

Can be found by typing python3 aircrack-gui.py -h.

Application Options:
  --nokill                   Do not run 'airmon-ng check kill'. Will retain internet connection on other devices, but is probably a bad idea.
  --noclean                  Do not clean .csv files generated by airodump-ng when scanning for clients.
  --nolog                    Do not print anything to console.
  --display=DISPLAY          X display to use

Todo

Changelog

Changelog - 0.0.7 --- Code formatting, pip3 package sync, finally made working custom station selector. - 0.0.6 --- Added command line arguments. Files, generated by airodump-ng (.csv, .netxml) are now automatically deleted. Minor log improvements and code formatting. - 0.0.5 --- Added automatic .cap to .22000 conversion when selecting hashcat and [hcxtools](https://github.com/ZerBea/hcxtools) are installed. Minor ui updates. - 0.0.4 --- Removed xterm windows (except for aircrack-ng/hashcat), fixed selected station deselecting/changing when updated. - 0.0.3 --- Hashcat support. - 0.0.2 --- README.md changes, etc. - 0.0.1 --- Initial commit.