Skip to content

Commit

Permalink
version 1.4
Browse files Browse the repository at this point in the history
- changed webinterface design
- improved error handling
- can add clients manually
- added settings reset via console command "reset" and GPIO 4
- improved default settings for more stability
- added warning at the beginning
- added info page
  • Loading branch information
Stefan Kremser committed May 1, 2017
1 parent 9c88c6b commit 6cd3a46
Show file tree
Hide file tree
Showing 44 changed files with 1,824 additions and 1,315 deletions.
2 changes: 2 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

Any redistributing, advertising or selling of this project as "jammer" without clearly stating it as a pentesting device for testing purposes only, is prohibited!

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
Expand Down
37 changes: 25 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,30 @@ Deauthentication attack and other hacks using an ESP8266.

[![Donate](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RCHANSVSX9M8C)

**Any redistributing, advertising or selling of this project as "jammer" without clearly stating it as a pentesting device for testing purposes only, is prohibited!**

I disabled the issue section because of the flood of invalid questions, unrelated to this project.
All necessary information is described below. Do not open issues about this project on any other of my projects, otherwise you will be blocked immediately!

**This project is a proof of concept for testing and education.**
Neither the ESP8266, nor the SDK was meant and build for such purposes.
Bugs can occur!


## Contents
- [Introduction](#introduction)
- [What it is](#what-it-is)
- [How it works](#how-it-works)
- [What an ESP8266 is](#what-an-esp8266-is)
- [How to protect against it](#how-to-protect-against-it)
- [Disclaimer](#disclaimer)
- [Videos](#videos)
- [Installation](#installation)
- [Uploading the bin files](#uploading-the-bin-files)
- [Compiling the source with Arduino](#compiling-the-source-with-arduino)
- [Adding OLED display](#adding-oled-display)
- [How to use it](#how-to-use-it)
- [FAQ](#faq)
- [Videos](#videos)
- [License](#license)
- [Sources and additional links](#sources-and-additional-links)

Expand Down Expand Up @@ -62,10 +72,22 @@ I don't take any responsibility for what you do with this program.
Please check the legal regulations in your country before using it.
**It is not a jammer device as claimed falsely by many people.** Its attack, how it works and how to protect against it is described above. It uses valid Wi-Fi frames described in the official 802.11 standard and doesn't block any communications on any frequency.

Any redistributing, advertising or selling of this project as "jammer" without clearly stating it as a pentesting device for testing purposes only, is prohibited!

My intention with this project is to draw more attention to this issue.
This attack shows how vulnerable the 802.11 Wi-Fi standard is and that it has to be fixed.
**A solution is already there, why don’t we use it?**

## Videos

[![Cheap Wi-Fi 'Jammer' Device | NodeMCU](https://img.youtube.com/vi/oQQhBdCQOTM/0.jpg)](https://www.youtube.com/watch?v=oQQhBdCQOTM)

[![Wifi 'Jammer' Device V1.1 | Setup Tutorial](https://img.youtube.com/vi/r5aoV5AolNo/0.jpg)](https://www.youtube.com/watch?v=r5aoV5AolNo)

[![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)

[![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)

## Installation

The only thing you will need is a computer and an ESP8266.
Expand Down Expand Up @@ -235,21 +257,12 @@ If it can send packets but your target doesn't loose its connection, then the Wi

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

## Videos

[![Cheap Wi-Fi 'Jammer' Device | NodeMCU](https://img.youtube.com/vi/oQQhBdCQOTM/0.jpg)](https://www.youtube.com/watch?v=oQQhBdCQOTM)

[![Wifi 'Jammer' Device V1.1 | Setup Tutorial](https://img.youtube.com/vi/r5aoV5AolNo/0.jpg)](https://www.youtube.com/watch?v=r5aoV5AolNo)

[![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)

[![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)

## License

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

**The License file must be included in any redistributed version of this program!**
**The License file must be included in any redistributed version of this program!**
Any redistributing, advertising or selling of this project as "jammer" without clearly stating it as a pentesting device for testing purposes only, is prohibited!

## Sources and additional links

Expand Down
20 changes: 13 additions & 7 deletions esp8266_deauther/APScan.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -251,22 +251,28 @@ void APScan::sort() {
tmpC = selected[h];
selected[h] = selected[h + 1];
selected[h + 1] = tmpC;

Mac tmpMac = aps._get(h);
aps.set(h,aps._get(h+1));
aps.set(h+1,tmpMac);

} else Serial.println((String)rssi[h] + " < " + (String)rssi[h + 1]);
}
}
}

void APScan::select(int num) {
if (debug) Serial.println("select " + (String)num + " - " + !selected[num]);
if (selected[num]) {
selected[num] = false;
selectedSum--;
} else {
selected[num] = true;
selectedSum++;
if(!settings.multiAPs){
for (int i = 0; i < maxAPScanResults; i++){
if(i != num) selected[i] = false;
}
}
selected[num] = !selected[num];
if (selected[num]) selectedSum--;
else selectedSum++;
}

bool APScan::isSelected(int num) {
return selected[num];
}
}
Loading

1 comment on commit 6cd3a46

@nzzane
Copy link

@nzzane nzzane commented on 6cd3a46 May 10, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this support the D1 Mini Pro?

Please sign in to comment.