GithubHelp home page GithubHelp logo

spacehuhntech / deauthdetector Goto Github PK

View Code? Open in Web Editor NEW
752.0 50.0 191.0 1.91 MB

Detect deauthentication frames using an ESP8266

License: MIT License

C++ 100.00%
arduino esp8266 deauth attack deauthentication disassociation detect detector prevention wifi

deauthdetector's Introduction

DeauthDetector

Detect deauthentication frames using an ESP8266

esp8266 deauth detector custom build

Buy

Maltronics is selling a Deauth Detector based on this project:

🛒 https://maltronics.com/products/deauth-detector

Support us

Hey, do you like this kind of project?

To make sure we can keep working on free and open-source projects like this,
please consider becoming a ❤️ Sponsor or support us via ☕ Ko-fi.

Visit spacehuhn.com to learn more about us. 🐔

Buy Me a Coffee at ko-fi.com

How it works

If the ESP8266 detects deauthentication or disassociation frames it will turn on its LED. That's all ¯\ (ツ)/¯.

blinky esp8266 deauth detector

So this is a good and cheap way to detect a Wi-Fi deauthentication attack.

How to install it

You will only need to follow one of the installation methods!

Uploading the .bin file

Upload the deauth_detector.bin using the nodemcu-flasher or the esptool from Espressif.

Using Arduino

1 Install Arduino
2 Install the ESP8266 SDK
3 Download this project and open it with Arduino 4 Maybe customize the code:

#define channel 1 //the channel it should scan on (1-14)
#define channelHopping true //scan on all channels
#define maxChannel 13 //US = 11, EU = 13, Japan = 14
#define ledPin 2 //led pin ( 2 = built-in LED)
#define inverted true // invert HIGH/LOW for the LED
#define packetRate 3 //min. packets before it gets recognized as an attack

#define scanTime 500 //scan time per channel in ms

5 Upload the code to your ESP8266 (don't forget to set it to the right upload settings!)

Done

deauthdetector's People

Contributors

spacehuhn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

deauthdetector's Issues

Update README.md for better description of the different variants

I bought a DSTIKE WiFi Deauth Detector.
When I wanted to flash the stick myself, it was difficult for me to understand which of the configuration (code) provided here was the right one for me, because I could not / would not open the usb stick and in the sales description was nothing specific.

It would be very helpful if more or at least the following information was documented:
There are different code examples, which are for different boards with different hardware (RGB LED, NeoPixel RGB LED, Buzzzer, ...).
For all variants of the DSTIKE WiFi Deauth Detector "deauth_detector_buzzer", "deauth_detector_buzzer_neopixel" and "deauth_detector_neopixel" are appropriate. Depending on the desired function e.g. "LED only" please use "deauth_detector_neopixel".

arduino compilation

hey there
i want to test your project and and found some problems in arduino compilation -

exit status 1
missing terminating ' character

i have 1.8.1 version and last esp8266 SDK.
im not changed anything in sketch. module is esp-12. arduino nano.
here full error - https://pastebin.com/6CjRVcP6

After a period of normal work, it suddenly crashed

screenshot
Before and after the change of the two use ch340 chip, esp8266 the size of the 4M NodeMCU development board, after the successful flashing deauth_detector.bin really work for some time, but less than 24 hours, two development boards have appeared on the board The onboard LED continuously blinks continuously after power on, unable to connect to the serial port

Update

if the previous problem can be updated via the internet, is there a tutorial, please help me

Packet RSSI

Is it possible to modify the code to show each packet's RSSI for locating physical deauth sources?

add MQTT publish

Wouldn't it be a nice improvement to add a function that publishes the channel number where an deauth attack has been identified (LED on) to a pre-configured MQTT broker?

The broker would implicitly record the UTC for the event for later deep analysis.

More ideas on this proposed enhancement welcome...

Buzzer Not work with Led

Buzzer not work with my Nodemcu v3. In Buzzer version not switch on the Led on board nodemcu...please fix

wemos d1 Exception 3 crash

i am setting up my first deauther device and i keep getting the same error. i have tried the reset sketch, i have installed the exception decoder and this is the result i am getting

Exception 3: LoadStoreError: Processor internal physical address or data error during load or store
PC: 0x4000bf64
EXCVADDR: 0x40270281

Decoding stack results
0x4022581b: String::String(char const*) at C:\Users\gordo\OneDrive\Documents\ArduinoData\packages\deauther\hardware\esp8266\2.7.2\cores\esp8266\WString.cpp line 34
0x4021284c: jsonFlag(String&, char const*, bool) at C:\Users\gordo\OneDrive\Documents\ArduinoData\packages\deauther\hardware\esp8266\2.7.2\cores\esp8266/WString.h line 124
0x4022581b: String::String(char const*) at C:\Users\gordo\OneDrive\Documents\ArduinoData\packages\deauther\hardware\esp8266\2.7.2\cores\esp8266\WString.cpp line 34
0x40212ae4: Settings::getJsonStr() at C:\Users\gordo\AppData\Local\Temp\arduino_build_176660\sketch\Settings.cpp line 101
0x40212f3d: Settings::save(bool) at C:\Users\gordo\AppData\Local\Temp\arduino_build_176660\sketch\Settings.cpp line 193
0x4021a75c: loop() at C:\Users\gordo\OneDrive\Desktop\esp8266_deauther-2\esp8266_deauther/esp8266_deauther.ino line 186
0x40226a70: loop_wrapper() at C:\Users\gordo\OneDrive\Documents\ArduinoData\packages\deauther\hardware\esp8266\2.7.2\cores\esp8266\core_esp8266_main.cpp line 197
OK
Formatting EEPROM...OK
Loading settings...Invalid Hash - reseted to default
Device names loaded from /names.json
SSIDs loaded from /ssids.json
Scan results saved in /scan.json
Serial interface enabled
Started AP
[WiFi] Path: '/web', Mode: 'AP', SSID: 'pwned', password: 'deauther', channel: '1', hidden: false, captive-portal: true
STARTED! \o/
2.2.0
# scan -t 5s
Stopped scan
Scan results saved in /scan.json
Removed all APs
Cleared station list
Starting scan for access points (Wi-Fi networks)...

--------------- CUT HERE FOR EXCEPTION DECODER ---------------

Exception (3):
epc1=0x4000bf64 epc2=0x00000000 epc3=0x00000000 excvaddr=0x40270281 depc=0x00000000

>>>stack>>>

ctx: cont
sp: 3ffffcd0 end: 3fffffc0 offset: 0190
3ffffe60:  3ffe0022 3ffffe80 40270281 4022581b  
3ffffe70:  3ffe8898 40270281 3fffff70 4021284c  
3ffffe80:  2e322e00 006e0030 80000000 4022581b  
3ffffe90:  3fff11e9 3ffeec68 3fffff70 40212ae4  
3ffffea0:  3fff11e9 3ffeec68 3ffeed1c 40212f3d  
3ffffeb0:  00000202 00000001 0000003c 00000000  
3ffffec0:  00000258 00000119 00000001 00000001  
3ffffed0:  87080001 0070da2c 7ca2bd0a 00c800df  
3ffffee0:  77700003 0064656e 00000000 00000000  
3ffffef0:  00000000 00000000 00000000 00000000  
3fffff00:  64000000 74756165 00726568 00000000  
3fffff10:  00000000 00000000 00000000 00000000  
3fffff20:  00000000 00000000 00000000 00000000  
3fffff30:  00000000 00000000 00000000 00000000  
3fffff40:  00000000 04a8c000 00010101 01006e65  
3fffff50:  00000101 00000001 00000258 65cfa797  
3fffff60:  bbeb2053 4878e08e 7fc6f27d 4b7a0a11  
3fffff70:  3fff43c4 0014025f 00fee8c8 3ffee750  
3fffff80:  00000478 3ffee74c 3ffeec68 4021a75c  
3fffff90:  feefeffe feefeffe feefeffe 3ffef068  
3fffffa0:  3fffdad0 00000000 3ffef028 40226a70  
3fffffb0:  feefeffe feefeffe 3ffe853c 40101111  
<<<stack<<<

--------------- CUT HERE FOR EXCEPTION DECODER ---------------

crash with Exception (3)

It used to work, and then one day I powered it up and it kept resetting with cause:4 (watch dog?).
After I reflashed it, it just crashed with Exception (3) upon WiFi.disconnect() command.
Then I found this suggestion:
http://blog.flynnmetrics.com/uncategorized/esp8266-exception-3/

here is the patch:

@@ -46,7 +46,8 @@ void setup() {
 
   wifi_set_opmode(STATION_MODE);
   wifi_promiscuous_enable(0);
-  WiFi.disconnect();
+  WiFi.persistent(false); 
+  WiFi.disconnect(true);
   wifi_set_promiscuous_rx_cb(sniffer);
   wifi_set_channel(curChannel);
   wifi_promiscuous_enable(1);

I still don't understand what's going on, but it works, perhaps there is a bug in the library.
I use Arduino IDE version 1.8.2 and esp8266 library version 2.3.0.

Adaptation for ESP32 Dev Board

As the ESP32 Dev Board Wroom32 has the power socket, power conversion and a nice Blue OLED can there be a release to suit? Maybe an additional buzzer, LCD and LED for additional features as builders gain confidence.

The project is amazing. Counter detection of Pwnagotchi or Flippers is super fun not to mention useful. Having a buzzer and OLED warning so anyone can easily monitor wardrobes would be a dream come true for the paranoid, also would stop the router getting the blame for bad WiFi.

The deauth_detector.bin file isn't available

As I already mentioned on the title, the deauth_detector.bin file isn't available for download. So I unfortunately cannot flash my device and check the software out. It would be really nice, if you would upload the file.
Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.