Skip to content

Commit 8e45631

Browse files
author
Stefan Kremser
committed
Merge branch 'testing'
2 parents b99a5d2 + 442534d commit 8e45631

24 files changed

+24440
-23652
lines changed

README.md

Lines changed: 62 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,10 @@ Deauthentication attack and other hacks using an ESP8266.
1313
- [Installation](#installation)
1414
- [Uploading the bin files](#uploading-the-bin-files)
1515
- [Compiling the source with Arduino](#compiling-the-source-with-arduino)
16+
- [Adding OLED display](#adding-oled-display)
1617
- [How to use it](#how-to-use-it)
1718
- [FAQ](#faq)
19+
- [Videos](#videos)
1820
- [License](#license)
1921
- [Sources and additional links](#sources-and-additional-links)
2022

@@ -68,10 +70,12 @@ I recommend you to buy a USB breakout/developer board, because they have 4Mb fla
6870
It doesn’t matter which board you use, as long as it has an ESP8266 on it.
6971

7072
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.
73+
**YOU ONLY NEED TO DO ONE OF THE INSTALLATION METHODS!**
7174

7275
### Uploading the bin files
7376

7477
**Note:** the 512kb version won't have the full MAC vendor list.
78+
The NodeMCU and every other board which uses the ESP-12 has 4mb flash on it.
7579

7680
**0** Download the current release from [here](https://github.com/spacehuhn/esp8266_deauther/releases)
7781

@@ -81,6 +85,8 @@ You have 2 choices here. Uploading the bin files is easier but not as good for d
8185

8286
Make sure you select the right com-port, the right upload size of your ESP8266 and the right bin file.
8387

88+
If flashing the bin files with a flash tool is not working, try flashing the esp8266 with the Arduino IDE as shown below.
89+
8490
### Compiling the source with Arduino
8591

8692
**0** Download the source code of this project.
@@ -112,9 +118,9 @@ Make sure you select the right com-port, the right upload size of your ESP8266 a
112118
**11** Scroll down and before `#endif` add following lines:
113119

114120
`typedef void (*freedom_outside_cb_t)(uint8 status);`
115-
`int Wi-Fi_register_send_pkt_freedom_cb(freedom_outside_cb_t cb);`
116-
`void Wi-Fi_unregister_send_pkt_freedom_cb(void);`
117-
`int Wi-Fi_send_pkt_freedom(uint8 *buf, int len, bool sys_seq);`
121+
`int wifi_register_send_pkt_freedom_cb(freedom_outside_cb_t cb);`
122+
`void wifi_unregister_send_pkt_freedom_cb(void);`
123+
`int wifi_send_pkt_freedom(uint8 *buf, int len, bool sys_seq);`
118124

119125
![screenshot of notepad, copy paste the right code](https://raw.githubusercontent.com/spacehuhn/esp8266_deauther/master/screenshots/notepad_screenshot_1.JPG)
120126

@@ -124,19 +130,54 @@ Make sure you select the right com-port, the right upload size of your ESP8266 a
124130

125131
**13** Copy ESP8266Wi-Fi.cpp and ESP8266Wi-Fi.h
126132

127-
**14** Past these files here `packages` > `esp8266` > `hardware` > `esp8266` > `2.0.0` > `libraries` > `ESP8266Wi-Fi` > `src`
133+
**14** Paste these files here `packages` > `esp8266` > `hardware` > `esp8266` > `2.0.0` > `libraries` > `ESP8266WiFi` > `src`
128134

129135
**15** Open `esp8266_deauther` > `esp8266_deauther.ino` in Arduino
130136

131137
**16** Select your ESP8266 board at `Tools` > `Board` and the right port at `Tools` > `Port`
132138
If no port shows up you may have to reinstall the drivers.
133139

134-
**17** Upload!
140+
**17** Depending on your board you may have to adjust the `Tools` > `Board` > `Flash Frequency` and the `Tools` > `Board` > `Flash Size`. In my case i had to use a `80MHz` Flash Frequency, and a `4M (1M SPIFFS)` Flash Size
141+
142+
**18** Upload!
135143

136144
**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.
137145

138146
**Your ESP8266 Deauther is now ready!**
139147

148+
149+
### Adding OLED display
150+
151+
![image of the esp8266 deauther with an OLED and three buttons](https://raw.githubusercontent.com/spacehuhn/esp8266_deauther/master/screenshots/esp8266_with_oled.jpg)
152+
153+
**0** Follow the steps [above](#compiling-the-source-with-arduino) to get your Arduino environment ready.
154+
155+
**1** Install this OLED driver library: https://github.com/squix78/esp8266-oled-ssd1306
156+
157+
**2** Custimize the code for your wiring.
158+
In `esp8266_deauther.ino` uncomment `#define USE_DISPLAY`.
159+
Then scroll down and custimize these lines depending on your setup.
160+
I used a Wemos d1 mini with a SSD1306 128x64 OLED and 3 push buttons.
161+
162+
//include the library you need
163+
#include "SSD1306.h"
164+
//#include "SH1106.h"
165+
166+
//button pins
167+
#define upBtn D6
168+
#define downBtn D7
169+
#define selectBtn D5
170+
171+
#define buttonDelay 180 //delay in ms
172+
173+
//render settings
174+
#define fontSize 8
175+
#define rowsPerSite 8
176+
177+
//create display(Adr, SDA-pin, SCL-pin)
178+
SSD1306 display(0x3c, D2, D1);
179+
//SH1106 display(0x3c, D2, D1);
180+
140181
## How to use it
141182

142183
First start your ESP8266 by giving it power.
@@ -169,7 +210,7 @@ Yes, but I will not implement this 'feature' for ethical and legal reasons.
169210
**Can it sniff handshakes?**
170211

171212
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.
172-
Maybe someone will find a way around this barrier.
213+
Maybe someone will find a way around this barrier in the future.
173214

174215
**espcomm_sync failed/espcomm_open when uploading**
175216

@@ -181,21 +222,31 @@ Which drivers you need depends on the board, most boards use a cp2102 or ch340.
181222
**AP scan doesn't work**
182223

183224
There is a reported issue on this: https://github.com/spacehuhn/esp8266_deauther/issues/5
184-
Try out switching the browser or open the website with another device.
225+
Try switching the browser or opening the website with another device.
185226

186227
**Deauth attack won't work**
187228

188-
If you see 0 pkts/s on the website you've 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!
189-
If it can send packets but your target don't loose its connection then the Wi-Fi router uses [802.11w](#how-to-protect-against-it) and it's protected against such attacks or they communicate via 5 GHz Wi-Fi, which the ESP8266 doesn't support.
190-
229+
If you see 0 pkts/s on the website then you've made a mistake. Check that have followed the the installation steps correctly and that the right SDK installed, it must be version 2.0.0!
230+
If it can send packets but your target doesn't loose its connection, then the Wi-Fi router either uses [802.11w](#how-to-protect-against-it) and it's protected against such attacks, or it communicates on the 5GHz band, which the ESP8266 doesn't support because of its 2.4GHz antenna.
191231

192-
###If you have other questions or problems with the ESP8266 you can also check out the official [community forum](http://www.esp8266.com/).
232+
### If you have other questions or problems with the ESP8266 you can also check out the official [community forum](http://www.esp8266.com/).
193233

234+
## Videos
235+
236+
[![Cheap Wi-Fi 'Jammer' Device | NodeMCU](https://img.youtube.com/vi/oQQhBdCQOTM/0.jpg)](https://www.youtube.com/watch?v=oQQhBdCQOTM)
237+
238+
[![Wifi 'Jammer' Device V1.1 | Setup Tutorial](https://img.youtube.com/vi/r5aoV5AolNo/0.jpg)](https://www.youtube.com/watch?v=r5aoV5AolNo)
239+
240+
[![WiFi Jamming Tutorial "Deauthing Made Simple" ](https://img.youtube.com/vi/SswI-J-M2SE/0.jpg)](https://www.youtube.com/watch?v=SswI-J-M2SE)
241+
242+
[![NodeMCU ESP8266 Tutorial 02: WiFi Hack with ESP8266 (NodeMCU WiFi Jammer)](https://img.youtube.com/vi/MOscKnm8IcY/0.jpg)](https://www.youtube.com/watch?v=MOscKnm8IcY)
194243

195244
## License
196245

197246
This project is licensed under the MIT License - see the [license file](LICENSE) file for details.
198247

248+
**The License file must be included in any redistributed version of this program!**
249+
199250
## Sources and additional links
200251

201252
deauth attack: https://en.wikipedia.org/wiki/Wi-Fi_deauthentication_attack
@@ -214,9 +265,3 @@ packet injection with ESP8266:
214265
802.11w-2009: https://en.wikipedia.org/wiki/IEEE_802.11w-2009
215266

216267
Wi-Fi_send_pkt_freedom function limitations: http://esp32.com/viewtopic.php?f=13&t=586&p=2648&hilit=Wi-Fi_send_pkt_freedom#p2648
217-
218-
esp32 esp_Wi-Fi_internal function limitations: http://esp32.com/viewtopic.php?f=13&t=586&p=2648&hilit=Wi-Fi_send_pkt_freedom#p2648
219-
220-
Videos:
221-
[![Cheap Wi-Fi 'Jammer' Device | NodeMCU](https://img.youtube.com/vi/oQQhBdCQOTM/0.jpg)](https://www.youtube.com/watch?v=oQQhBdCQOTM)
222-
[![Wifi 'Jammer' Device V1.1 | Setup Tutorial](https://img.youtube.com/vi/r5aoV5AolNo/0.jpg)](https://www.youtube.com/watch?v=r5aoV5AolNo)

0 commit comments

Comments
 (0)