About autodeauth
autodeauth is a powerful automated Deauth penetration testing tool that helps researchers execute Deauth penetration tests on local networks in an automated manner or enumerate public networks. The current version of autodeauth has been tested on Raspberry Pi OS and Kali Linux platforms, and future versions will add features like EAPOL packet capture and routing information extraction.
Tool Download & Installation
Since this tool is developed based on Python, we first need to install and configure the Python environment on the local device. Next, use the following command to clone the project source code locally:
git clone https://github.com/Drew-Alleman/autodeauth.git
(Swipe right to view more)
Next, use the following command to give executable permissions to the tool's installation script and then execute the setup.sh script:
$ chmod +x setup.sh
$ sudo ./setup.sh
[*] This can be changed by editing /etc/systemd/system/autodeauth.service
[?] Enter your WiFi interface to use with the autodeauth service: wlan0
[*] Installed!, you can use sudo autodeauth -h to see available options.
[*] Check the README for more information about configuring/starting the service
(Swipe right to view more)
Tool Options
$ sudo autodeauth -h
_ _ ___ _ _
/_\ _ _| |_ ___| \ ___ __ _ _ _| |_| |_
/ _ \ || | _/ _ \ |) / -_) _` | || | _| ' \
/_/ \_\_,_|\__\___/___/\___\__,_|\_,_|\__|_||_|
usage: autodeauth [-h] --interface INTERFACE [--blacklist BLACKLIST] [--whitelist WHITELIST] [--led LED] [--time TIME] [--random] [--ignore] [--count COUNT] [--verbose VERBOSE]
Auto Deauth Tool
options:
-h, --help Show the tool's help information and exit
--interface INTERFACE, -i INTERFACE
Interface to fetch WiFi network and send Deauth packets
--blacklist BLACKLIST, -b BLACKLIST
List of SSIDs/MAC addresses of networks to block (comma-separated)
--whitelist WHITELIST, -w WHITELIST
List of target network SSIDs/MAC addresses (comma-separated)
--led LED, -l LED Number of LED pins
--time TIME, -t TIME Time interval between two Deauth packet transmissions, in seconds, default is 0
--random, -r Randomize MAC address before performing Deauth test
--ignore Ignore errors encountered during MAC address randomization
--count COUNT, -c COUNT
Number of packets to be sent, default is 5000
--verbose VERBOSE, -v VERBOSE
Enable Verbose mode, default is 0
(Swipe right to view more)
Tool Usage
After running the tool’s installation script, we can directly run the autodeauth script from any path.
Command Line
We can use the MAC address of the target network to represent the network to be tested:
$ sudo autodeauth -i wlan0 --blacklist FreeWiFi,E1:DB:12:2F:C1:57 -c 10000
(Swipe right to view more)
Service
$ sudo systemctl start autodeauth
Data Storage
When autodeauth detects a target network, if the target meets the configured blacklist/whitelist settings, the tool will store information about the target network in JSON format under the /var/log/autodeauth/ path:
{
"ssid": "MyWiFiNetwork",
"mac_address": "10:0B:21:2E:C1:11",
"channel": 1,
"network.frequency": "2.412 GHz",
"mode": "Master",
"bitrates": [
"6 Mb/s",
"9 Mb/s",
"12 Mb/s",
"18 Mb/s",
"24 Mb/s",
"36 Mb/s",
"48 Mb/s",
"54 Mb/s"
],
"encryption_type": "wpa2",
"encrypted": true,
"quality": "70/70",
"signal": -35
}
Log Files
$ cat /var/log/autodeauth/log
2022-08-20 21:01:31 - Scanning for local networks
2022-08-20 21:20:29 - Sending 5000 deauth frames to network: A0:63:91:D5:B8:76 -- MyWiFiNetwork
2022-08-20 21:21:00 - Exiting/Cleaning up
(Swipe right to view more)
Edit Service Configuration
To modify the configuration of the autodeauth service, you can directly edit /etc/systemd/system/autodeauth.service. Suppose we need to set up the following configuration as a service:
$ sudo autodeauth -i wlan0 --blacklist FreeWiFi,myWifi -c 10000
$ vim /etc/systemd/system/autodeauth.service
Then we just need to modify the value of ExecStart as follows:
ExecStart=/usr/bin/python3 /usr/local/bin/autodeauth -i wlan0 --blacklist FreeWiFi,myWifi -c 10000
(Swipe right to view more)
License Agreement
The development and release of this project adhere to the MIT open source license agreement.
Project Address
autodeauth: https://github.com/Drew-Alleman/autodeauth