- Saved searches
- Use saved searches to filter your results more quickly
- License
- DerNadel/ESP8266_DEAUTH
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- Saved searches
- Use saved searches to filter your results more quickly
- License
- gmh5225/WIFI-esp8266_deauther
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- About
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
License
DerNadel/ESP8266_DEAUTH
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
Build your own WiFi jammer with an ESP8266.
Basically it’s a device which performs a deauth attack.
You select the clients you want to disconnect from their network and start the attack. As long as the attack is running, the selected devices are unable to connect to their network.
The 802.11 WiFi protocol contains a so called deauthentication frame. It is used to disconnect clients safely from a wireless network.
Because these packets are unencrypted, you just need the mac address of the WiFi router and of the client device which you want to disconnect from the network. You don’t need to be in the network or know the password, it’s enough to be in its range.
The ESP8266 is a very cheap micro controller with build in WiFi. It contains a powerfull 160 MHz processor and you can program it with the Arduino IDE. This makes it perfect for this project.
You can buy these chips for under $2 from China!
How to protect against it
With 802.11w-2009 WiFi got an update to encrypt management frames. So make sure your router is up to date and has management frame protection enabled. But be sure that your client device supports it too, both ends need to have it enabled!
The only problem is that most devices don’t use it. I tested it with different WiFi networks and devices, it worked every time! It seems that even newer devices which support frame protection don’t use it by default.
Use it only for testing purposes on your own devices!
Please check the legal regulations in your country before using it. Jamming transmitters are illegal in most countries and this device can fall into the same category (even if it’s technically not the same).
My intention with this project is to draw attention to this issue. This attack shows how vulnerable the 802.11 WiFi standard is and that it has to be fixed. A solution is already there, why don’t we use it?
The only thing you will need is a computer and an ESP8266.
I recommend you to buy a USB breakout/developer board, because they have 4Mb flash and are very simple to use. It doesn’t matter which board you use, as long as it has an ESP8266 on it.
You have 2 choices here. Uploading the bin files is easier but not as good for debugging, so keep that in mind in case you want to open an new issue.
Note: the 512kb version won’t have the full MAC vendor list.
0 Download the current release from here
1 Upload using the ESP8266 flash tool of your choice. I recommend using the nodemcu-flasher.
Make sure you select the right com-port, the right upload size of your ESP8266 and the right bin file.
Compiling the source with Arduino
0 Download the source code of this project.
1 Install Arduino and open it.
2 Go to File > Preferences
3 Add http://arduino.esp8266.com/stable/package_esp8266com_index.json to the Additional Boards Manager URLs. (source: https://github.com/esp8266/Arduino)
4 Go to Tools > Board > Boards Manager
5 Type in esp8266
6 Select version 2.0.0 and click on Install (must be version 2.0.0!)
7 Go to File > Preferences
8 Open the folder path under More preferences can be edited directly in the file
9 Go to packages > esp8266 > hardware > esp8266 > 2.0.0 > tools > sdk > include
10 Open user_interface.h with a text editor
11 Scroll down and before #endif add following lines:
typedef void (*freedom_outside_cb_t)(uint8 status);
int wifi_register_send_pkt_freedom_cb(freedom_outside_cb_t cb);
void wifi_unregister_send_pkt_freedom_cb(void);
int wifi_send_pkt_freedom(uint8 *buf, int len, bool sys_seq);
don’t forget to save!
12 Go to the SDK_fix folder of this project
13 Copy ESP8266WiFi.cpp and ESP8266WiFi.h
14 Past these files here packages > esp8266 > hardware > esp8266 > 2.0.0 > libraries > ESP8266WiFi > src
15 Open esp8266_deauther > esp8266_deauther.ino in Arduino
16 Select your ESP8266 board at Tools > Board and the right port at Tools > Port
If no port shows up you may have to reinstall the drivers.
Note: If you use a 512kb version of the ESP8266, you need to comment out a part of the mac vendor list in data.h.
Your ESP8266 Deauther is now ready!
First start your ESP8266 by giving it power.
You can use your smartphone if you have a USB OTG cable.
Scan for WiFi networks and connect to pwned . The password is deauther .
Once connected, you can open up your browser and go to 192.168.4.1 .
You can now scan for networks.
Note: While scanning the ESP8266 will shut down its access point, so you may have to go to your settings and reconnect to the WiFi network manually.
. and start different attacks.
Could it auto-deauth all APs in the range?
Yes, but I will not implement this ‘feature’ for ethical and legal reasons.
Can it sniff handshakes?
The ESP8266 has a promiscuous mode in which you can sniff packets, but handshake packets are dropped and there is no other way to get them with the functions provided by the SDK.
Maybe someone will find a way around this barrier but I wasn’t able to.
espcomm_sync failed/espcomm_open when uploading
The ESP upload tool can’t communicate with the chip, make sure the right port is selected!
You can also try out different USB ports and cables.
If this doesn’t solve it you may have to install USB drivers.
Which drivers you need depends on the board, most boards use a cp2102, cp2104 or ch340.
AP scan doesn’t work
There is a reported issue on this: SpacehuhnTech/esp8266_deauther#5
Try out switching the browser or open the website with another device.
Deauth attack won’t work
If you see 0 pkts/s on the website you have made a mistake. Check if you have followed the the installation steps correctly and that the right SDK installed, it must be version 2.0.0!
If it can send packets but your target don’t loose its connection then the WiFi router uses 802.11w and it’s protected against such attacks or they communicate via 5 GHz WiFi, which the ESP8266 doesn’t support.
###If you have other questions or problems with the ESP8266 you can also check out the official community forum.
This project is licensed under the MIT License — see the license file file for details
Sources and additional links
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
Affordable WiFi hacking platform for testing and learning
License
gmh5225/WIFI-esp8266_deauther
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
ESP8266 Deauther Version 2
Scan for WiFi devices, block selected connections, create dozens of networks and confuse WiFi scanners!
Version 3 is in development. It is stable to use, but it is very different.
It is command line based, which allows it to offer not just more features, but make them more customizable.
Feature | Version 2 | Version 3 |
---|---|---|
Web Interface | ✅ | |
Display support | ✅ | |
Serial Command Line | ✅ | ✅ |
Scanner | ✅ | ✅ |
Deauth attack | ✅ | ✅ |
Beacon attack | ✅ | ✅ |
Probe attack | ✅ | ✅ |
Huhnitor support | ✅ | |
Signal strength scanner | ✅ | |
Authentication scanner | ✅ | |
Rogue AP | ✅ |
Please refer to the installation guide in our wiki.
If you’re just looking for the .bin files, go to releases.
This software allows you to easily perform a variety of actions to test 802.11 wireless networks by using an inexpensive ESP8266 WiFi SoC (System On A Chip).
The main feature, the deauthentication attack, is used to disconnect devices from their WiFi network.
No one seems to care about this huge vulnerability in the official 802.11 WiFi standard, so I took action and enabled everyone who has less than 10 USD to spare to recreate this project.
I hope it raises more attention on the issue. In 2009 the WiFi Alliance actually fixed the problem (see 802.11w), but only a few companies implemented it into their devices and software.
To effectively prevent a deauthentication attack, both client and access point must support the 802.11w standard with protected management frames (PMF).
While most client devices seem to support it when the access point forces it, basically no WiFi access point has it enabled.
Feel free to test your hardware out, annoy these companies with the problem, share this project and push for a fix! This project is also a great way to learn more about WiFi, micro controllers, Arduino, hacking and electronics/programming in general.
But please use this tool responsibly and do not use it against others without their permission!
Many refer to this project as a WiFi jammer. This is problematic, because this firmware is not turning your ESP8266 into a radio or frequency jammer. But this is how most people imagine it without further explaination.
So if you like to learn more about the difference, we made a whole video about it:
Supported Development Boards
This firmware can run on any ESP8266, not however on the ESP32!
The most popular development boards, the NodeMCU and Wemos d1 mini , work great for this project.
If you like to support our work, you can buy get a boards made with this project in mind.
They come preflashed with the firmware, so you can start right away.
You can chose between:
Spacehuhn Store:
Our very own store where all revenue goes directly to us and towards the development of new and exciting projects 🙂
We manufacture and ship from Germany.
Maltronics:
We partnered with Maltronics to bring you high quality hacking gadgets.
They are based in the UK.
DSTIKE:
DSTIKE was our first partner. They manufactured the first official deauther boards.
They offer a wide range of deauthers in a variety of form factors, including a smart watch.
They are based in China, but their products are available through a variety of stores:
This project is a proof of concept for testing and educational purposes.
Neither the ESP8266, nor its SDK was meant or built for such purposes. Bugs can occur!
Use it only against your own networks and devices!
Please check the legal regulations in your country before using it.
We don’t take any responsibility for what you do with this program.
for helping out with various things regarding this project and keeping it alive!
Also thanks to everyone working on the libraries used for this project:
We also thank Espressif and their community for this awesome chip and all the software and hardware projects around it and the countless tutorials you can find online!
This software is licensed under the MIT License. See the license file for details.
About
Affordable WiFi hacking platform for testing and learning