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.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+30-28Lines changed: 30 additions & 28 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
# ESP8266 Deauther
2
-
Build your own WiFi jammer with an ESP8266.
2
+
Deauthentication attack and other hacks using an ESP8266.
3
3
4
4

5
5
@@ -24,39 +24,40 @@ Build your own WiFi jammer with an ESP8266.
24
24
25
25
Basically it’s a device which performs a [deauth attack](https://en.wikipedia.org/wiki/Wi-Fi_deauthentication_attack).
26
26
You select the clients you want to disconnect from their network and start the attack. As long as the attack is running, the
27
-
selected devices are unable to connect to their network.
27
+
selected devices are unable to connect to their network.
28
+
Other attacks also have been implemented, such as beacon or probe request flooding.
28
29
29
30
### How it works
30
31
31
-
The 802.11 WiFi protocol contains a so called [deauthentication frame](https://mrncciew.com/2014/10/11/802-11-mgmt-deauth-disassociation-frames/). It is used to disconnect clients safely from a wireless
32
+
The 802.11 Wi-Fi protocol contains a so called [deauthentication frame](https://mrncciew.com/2014/10/11/802-11-mgmt-deauth-disassociation-frames/). It is used to disconnect clients safely from a wireless
32
33
network.
33
34
34
-
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.
35
+
Because these management packets are unencrypted, you just need the mac address of the Wi-Fi 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.
35
36
36
37
### What an ESP8266 is
37
38
38
-
The [ESP8266](https://de.wikipedia.org/wiki/ESP8266) is a very cheap micro controller with build in WiFi. It contains a powerfull 160 MHz processor and you can program it
39
-
with the [Arduino IDE](https://www.arduino.cc/en/Main/Software). This makes it perfect for this project.
39
+
The [ESP8266](https://de.wikipedia.org/wiki/ESP8266) is a cheap micro controller with built-in Wi-Fi. It contains a powerfull 160 MHz processor and it can be programmed using [Arduino](https://www.arduino.cc/en/Main/Software).
40
40
41
41
You can buy these chips for under $2 from China!
42
42
43
43
### How to protect against it
44
44
45
-
With [802.11w-2009](https://en.wikipedia.org/wiki/IEEE_802.11w-2009)WiFi got an update to encrypt management frames.
46
-
So make sure your router is up to date and has management frame protection enabled. But be sure that your client device
47
-
supports it too, both ends need to have it enabled!
45
+
With [802.11w-2009](https://en.wikipedia.org/wiki/IEEE_802.11w-2009)Wi-Fi got an update to encrypt management frames.
46
+
So make sure your router is up to date and has management frame protection enabled. But note that your client device needs to
47
+
support it too, both ends need to have it enabled!
48
48
49
-
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.
49
+
The only problem is that most devices don’t use it. I tested it with different Wi-Fi networks and devices, it worked every time! It seems that even newer devices which support frame protection don’t use it by default.
50
50
51
51
## Disclaimer
52
52
53
-
Use it only for testing purposes on your own devices!
53
+
Use it only for testing purposes on your own devices!
54
+
I don't take any responsibility for what you do with this program.
54
55
55
56
Please check the legal regulations in your country before using it. Jamming transmitters are illegal in most countries
56
57
and this device can fall into the same category (even if it’s technically not the same).
57
58
58
59
My intention with this project is to draw attention to this issue.
59
-
This attack shows how vulnerable the 802.11 WiFi standard is and that it has to be fixed.
60
+
This attack shows how vulnerable the 802.11 Wi-Fi standard is and that it has to be fixed.
60
61
**A solution is already there, why don’t we use it?**
61
62
62
63
## Installation
@@ -111,19 +112,19 @@ Make sure you select the right com-port, the right upload size of your ESP8266 a
111
112
**11** Scroll down and before `#endif` add following lines:
`int Wi-Fi_send_pkt_freedom(uint8 *buf, int len, bool sys_seq);`
117
118
118
119

119
120
120
121
**don't forget to save!**
121
122
122
123
**12** Go to the SDK_fix folder of this project
123
124
124
-
**13** Copy ESP8266WiFi.cpp and ESP8266WiFi.h
125
+
**13** Copy ESP8266Wi-Fi.cpp and ESP8266Wi-Fi.h
125
126
126
-
**14** Past these files here `packages` > `esp8266` > `hardware` > `esp8266` > `2.0.0` > `libraries` > `ESP8266WiFi` > `src`
127
+
**14** Past these files here `packages` > `esp8266` > `hardware` > `esp8266` > `2.0.0` > `libraries` > `ESP8266Wi-Fi` > `src`
127
128
128
129
**15** Open `esp8266_deauther` > `esp8266_deauther.ino` in Arduino
129
130
@@ -143,7 +144,7 @@ First start your ESP8266 by giving it power.
143
144
You can use your smartphone if you have a USB OTG cable.
144
145

145
146
146
-
Scan for WiFi networks and connect to `pwned`. The password is `deauther`.
147
+
Scan for Wi-Fi networks and connect to `pwned`. The password is `deauther`.
147
148
Once connected, you can open up your browser and go to `192.168.4.1`.
148
149
149
150
You can now scan for networks...
@@ -152,7 +153,7 @@ You can now scan for networks...
@@ -168,14 +169,14 @@ Yes, but I will not implement this 'feature' for ethical and legal reasons.
168
169
**Can it sniff handshakes?**
169
170
170
171
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.
171
-
Maybe someone will find a way around this barrier but I wasn't able to.
172
+
Maybe someone will find a way around this barrier.
172
173
173
174
**espcomm_sync failed/espcomm_open when uploading**
174
175
175
176
The ESP upload tool can't communicate with the chip, make sure the right port is selected!
176
177
You can also try out different USB ports and cables.
177
178
If this doesn't solve it you may have to install USB drivers.
178
-
Which drivers you need depends on the board, most boards use a cp2102, cp2104 or ch340.
179
+
Which drivers you need depends on the board, most boards use a cp2102 or ch340.
179
180
180
181
**AP scan doesn't work**
181
182
@@ -184,16 +185,16 @@ Try out switching the browser or open the website with another device.
184
185
185
186
**Deauth attack won't work**
186
187
187
-
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!
188
-
If it can send packets but your target don't loose its connection then the WiFi router uses [802.11w](#how-to-protect-against-it) and it's protected against such attacks or they communicate via 5 GHz WiFi, which the ESP8266 doesn't support.
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.
189
190
190
191
191
192
###If you have other questions or problems with the ESP8266 you can also check out the official [community forum](http://www.esp8266.com/).
192
193
193
194
194
195
## License
195
196
196
-
This project is licensed under the MIT License - see the [license file](LICENSE) file for details
197
+
This project is licensed under the MIT License - see the [license file](LICENSE) file for details.
0 commit comments