Commit Graph

358 Commits

Author SHA1 Message Date
Stefan Kremser ea85d45af0 Improved Accesspoints class 2018-03-29 12:43:47 +02:00
Stefan Kremser 94258712cf Better File error message
Also improved the write command
2018-03-29 12:08:23 +02:00
Stefan Kremser 73b4640ce5 Fixed Errors in serial parser
Sorry seems like I skipped testing when I commited the changes earlier
2018-03-28 19:35:30 +02:00
Stefan Kremser 617b0d5676 Improved Serial command parser 2018-03-28 12:53:02 +02:00
Stefan Kremser 01d62dda2a Added display config: FLIP_DISPLAY 2018-03-28 09:47:30 +02:00
Stefan Kremser 485bfd1085 Updated font type 2018-03-28 09:37:06 +02:00
Stefan Kremser 0f07fe5eab Updated web files 2018-03-27 11:25:29 +02:00
Stefan Kremser f38adaa0dd Revert "Changed font type to "unsigned char""
This reverts commit 4d80706aed.
2018-03-27 11:10:37 +02:00
Stefan Kremser f259497b6b Access web interface using deauth.me 2018-03-27 10:59:56 +02:00
Stefan Kremser 4d80706aed Changed font type to "unsigned char"
In the hope to fix some compiler issues
2018-03-27 10:05:20 +02:00
Stefan Kremser 19dcf097b7 Init display before copying spiffs + shorter startscreen 2018-03-25 17:38:11 +02:00
Stefan Kremser df3769615e Reorganized configs 2018-03-25 16:06:35 +02:00
Stefan Kremser f9a4ee006b Updated web files 2018-03-25 11:30:50 +02:00
Stefan Kremser b39fd87191 Imrpoved web copying
- better output
- fixed default ssids.json
- auto replace of old website when the version number is different
- saved RAM by putting spiffs file names in progmem
- updated web converter
2018-03-25 11:29:28 +02:00
Stefan Kremser e494d95c15 Improved attack routine
- less count() calls
- fixed the deauth station crash (hopefully)
- sort targets after channel for better performance
- increment counter in deauth/beacon/probe function and not in sendPacket() that was stupid anyway
2018-03-25 10:26:55 +02:00
Stefan Kremser 24d9043988 Version 2.0 2018-03-24 18:15:59 +01:00
Aurélien Hernandez 3b1528f3af Improved APScan UI (Halloween easter egg)
Display an icon when the SSID is hidden. Useful to difference an hidden AP and an AP named "* Hidden SSID *"
2017-10-24 13:46:20 +02:00
Aurélien Hernandez dc23c6494f Improved Json sanitization
It was important to fix this bug. It can let someone to prevent the esp8266 from scanning for APs just by sending beacons containing specifics characters in AP name.
Those characters will make the browser to misunderstand the json result of APScan.
For exemple if you put an anti-slash at the end of an AP name, you're browser will think that the " character of json delimitation is escaped and will interpret it as a ascii character.

-Created a sanitize method. APScan::sanitizeJson(String) to escape specific characters.

-SanitizeJson is used each time the result of getAPName is sent using Json data format.

- Removed _ssid.replace("\"", "\\\"")
It's important to not sanitize Ap names before saving them into a limited 33 chararacters array. Sanitize an AP name increase his size and so it can potentially decrease his final size when casted to a 33 chars array.
2017-10-24 09:42:12 +02:00
tobozo 581b3e2adb post-l10n fixes 2017-10-14 13:19:21 +02:00
tobozo 3cbccc07bd added favicon.ico to prevent more 404 2017-10-14 11:59:43 +02:00
tobozo 2853aad2d0 backported ##584 screensaver 2017-10-14 10:26:44 +02:00
tobozo bb6a2d8751 Merge branch 'spiffs' of github.com:spacehuhn/esp8266_deauther into spiffs 2017-10-14 10:05:14 +02:00
tobozo 4b7ef2bc70 backporting @rubfi #638 PR vendorlist 2017-10-14 10:02:59 +02:00
Jokin b546206d89 implemented l10n 2017-10-13 15:20:26 +08:00
tobozo 81df4f1c52 now serve any file from SPIFFS 2017-10-12 18:07:34 +02:00
tobozo a93863f8d2 implemented l10n 2017-10-12 16:32:43 +02:00
tobozo ddcbd2f991 moved web_server to /data folder, now use the ESP8266 Sketch Data Upload to manage web UI 2017-10-11 21:34:21 +02:00
tobozo 6c671efad2 Extract logs from deauther
Implemented on request from @crystalg21 #624, logs can now be extracted from the web UI by accessing http://192.168.4.1/log.txt

Some TODOs if this PR is accepted:
  - Output log to serial
  - Add links to the web UI
2017-09-29 10:38:03 +02:00
Stefan Kremser 8fee403b17 Merge pull request #352 from samdenty99/patch-1
Add Cache-control headers to Javascript & CSS
2017-08-09 22:49:39 +02:00
samdenty99 6de99a6a1d Removed if statement 2017-08-09 21:43:24 +01:00
samdenty99 952b467a41 Added changes to Data.h 2017-08-09 21:36:48 +01:00
Sam Denty 5c9edbd23d Removed changes from .ino 2017-08-09 21:22:44 +01:00
Stefan Kremser b2c8b810bf Cleaned up sendFile() function 2017-08-09 20:24:57 +02:00
Sam Denty 973189a127 Add Cache-control headers to Javascript & CSS
Every time a page is (re)loaded, the ESP8266 has to send the stylesheet and javascript before the page loads. Although this is minimal (20ms in dev tools Networks pane), it can improve page load speeds when the client device is spamming network connectivity check requests.

Adding the `Cache-Control` headers makes the browser store these files in memory (for 300 seconds, could be increased). The same could be done for the HTML files, but that would allow the pages to load even when not connected to the ESP8266.
2017-08-09 17:36:13 +01:00
Stefan Kremser 05e55eb803 Improved Deuth function
Most people use broadcast instead of a selected client and sending a packet to the AP with FF:FF:FF:FF:FF:FF as sender wouldn't make much sense.
2017-08-09 00:00:09 +02:00
Stefan Kremser 458cacc2e0 fixed small bug on APscan 2017-08-08 23:58:16 +02:00
Stefan Kremser be11bdc0a9 Fixed default settings
Sorry for the clusterfuck before. Sometimes me and git have these days...
2017-07-31 16:24:06 +02:00
Stefan Kremser a89769fd71 Mades USE_LED16 default 2017-07-31 16:18:01 +02:00
Stefan Kremser fa035ada52 updated a few colors 2017-07-21 17:42:34 +02:00
Stefan Kremser c9e1c8c1b4 Added Contact Infos to Info Page 2017-07-21 16:06:04 +02:00
Stefan Kremser 9fe9fa2459 Updated JS to prevent XSS using SSIDs 2017-07-21 15:03:46 +02:00
Stefan Kremser f3c9fefe33 commented out USE_DISPLAY 2017-07-20 15:49:24 +02:00
Stefan Kremser de952ba1f7 Added beacon flood to OLED 2017-07-20 15:48:57 +02:00
Stefan Kremser d842c76a4f New Web Interface
Completly reworked design!
I also improved the way you add/clone SSIDs to the list
2017-07-20 15:11:08 +02:00
Stefan Kremser 6f2c99aa42 Added a few comments 2017-07-17 20:03:56 +02:00
Stefan Kremser e9946d81ca Changed sendHeader() to setContentLength() 2017-07-17 14:09:40 +02:00
Stefan Kremser 3ace436dab Merge remote-tracking branch 'ericktedeschi/master' into testing 2017-07-08 11:38:39 +02:00
Erick Tedeschi 6e4b490494 - Added the script convert_all.sh to help the process of minify, convert to hex and generate constant name automatically.
- Updated the readme.md inside the web_server folder
- updated the data.h to the automatically generated constants name.
2017-07-04 18:55:13 -03:00
Stefan Kremser 83c1db67c0 Merge remote-tracking branch 'origin/testing' into testing 2017-06-21 12:09:57 +02:00
Stefan Kremser 406d624892 Fixing APScan Display Bug
When you scan for a second time and find less APs then before, there was the possibility that the last of the old APs was still shown on the display.
2017-06-21 12:09:53 +02:00
N0vaPixel fd7c7ac650 Forgotten to delete some things 2017-06-19 00:38:29 +02:00
N0vaPixel d4e3f9c2df Dynamic ledPin switching 2017-06-19 00:32:20 +02:00
N0vaPixel 6a67919fb2 Prevent mac addr leak
Added delay in order to prevent the leaking of the default mac addr
2017-06-18 18:04:26 +02:00
N0vaPixel 3ae0a10961 Increase stealth - Change the bssid of AP + random mode
+++ Ability to set the bssid
+++ Ability to randomize the bssid at load time
++ Updated settings.html

++ Added Mac::randomize()
+ Updated Attack::generate to use Mac::randomize()

+ removed Mac::setMac() and overloaded Mac::set() with new parameters
void set(uint8_t* mac);
void set(Mac adr);
2017-06-18 15:37:18 +02:00
Stefan Kremser 7158361c4a Updated webserver files 2017-06-14 19:02:47 +02:00
Stefan Kremser 4c88a3eac5 Zero width char in SSID clone 2017-06-06 10:56:07 +02:00
Stefan Kremser 75676167fa Fixed little SSID list bugs 2017-06-05 15:14:53 +02:00
Stefan Kremser 0710955a07 Added LED option for pocket ESP8266 2017-05-31 16:07:25 +02:00
Stefan Kremser 2b7d03f2f7 Added copyright notice on display version 2017-05-31 15:55:47 +02:00
Stefan Kremser 02ce8266de Fixed station.js bug
wrong file was loaded
2017-05-31 14:47:53 +02:00
Stefan Kremser 2e9282d03e small adjustments
small adjustments for the release / merge
2017-05-31 12:26:32 +02:00
Stefan Kremser 177e08c8dc Added LedPin Setting to HTML 2017-05-31 12:14:25 +02:00
Stefan Kremser eda0036d23 changed checkNum for update 2017-05-31 10:55:42 +02:00
Stefan Kremser b63e564562 Added ledPin to settings 2017-05-31 10:55:22 +02:00
Stefan Kremser 29a86b1a83 Added display on/off button 2017-05-31 10:54:40 +02:00
Stefan Kremser d6dddcfa03 optimized buttons 2017-05-31 10:38:20 +02:00
Stefan Kremser f2a70bb026 Fixed 2 little bugs
- Attack.js error "data undefined"
- Display compiler error "drawInterface() not found"
2017-05-26 21:34:48 +02:00
Stefan Kremser 3e44cf86b8 Updated disclaimer & version notice 2017-05-20 15:59:17 +02:00
Stefan Kremser 0513fa2cd2 Optimized attack.json 2017-05-20 11:48:36 +02:00
Stefan Kremser fd044767b7 Design improvements on stations.html 2017-05-20 10:55:27 +02:00
Stefan Kremser e33758cc16 Added Random-SSID Mode
also fixed the attack stati
2017-05-20 10:30:39 +02:00
Stefan Kremser 64cb0a6f2a Added Mac-change & Beacon Interval Setting 2017-05-19 18:02:59 +02:00
Stefan Kremser ff745f6870 Enabled Multiple attacks + Improved Probe Request 2017-05-16 17:06:14 +02:00
Stefan Kremser 3128dbe83f Fixed APScan select bug + Attack status bug
- fixed: APScan select wasn't working when Multiple AP selection was disbaled.
- fixed: Attack stati wasn't shown
- improved: design of select,deselect all buttons
2017-05-15 19:36:44 +02:00
N0vaPixel 98deeb503b Prevent ClientScan to pick the broadcast address as a client
+ Clarified nameList
2017-05-14 19:26:52 +02:00
N0vaPixel acc0cf83c2 Added a list of the contributors in the "info" web page 2017-05-14 03:08:44 +02:00
N0vaPixel a1b7a0640d NameList fix 2017-05-14 02:24:47 +02:00
N0vaPixel ec0d4fb2f2 Fixed NameList bug
This change the NameList class in order to fix the bug when you try to
edit the name of sniffed clients.

Now NameList::get  return the id of the namelist when receiving a mac
adress (return -1 if the mac adress is not found)

Now NameList::getName return the name when received an id (return
nothing if the id is not found)
2017-05-14 01:54:38 +02:00
N0vaPixel 4c069a53bd Add select / deselect all functionality
Add select / deselect all functionality for appscan and client scan

Pass -1 to the "select" methods to pick all the results.
Pass any other negative number (in the range of a signed int) to
deselect all.

+ Added "select all" and "deselect all" buttons to apscan.html and
stations.html
2017-05-13 22:30:56 +02:00
Stefan Kremser 6cd3a46144 version 1.4
- 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
2017-05-01 20:05:41 +02:00
Veritas 174247e5a9 Better OLED-Display-Menu and spelling error fix
Capital letter in menu for difference between menu and APs
Fix spelling error in APScan.cpp ("seect" -> "select")
Format files with Strg+T in Arduino-IDE - looks better ;-)
2017-04-13 11:23:53 +02:00
SaltyViper 3ede6c663e Add files via upload 2017-04-09 11:47:36 -07:00
Stefan Kremser 63314b57d7 Fixed clientScan bug 2017-04-08 12:23:01 +02:00
Stefan Kremser cb03c3eac3 Added copyright infos and fixed oled scan bug 2017-04-07 15:55:31 +02:00
Stefan Kremser 0caac2698d fixed spelling error 2017-04-01 23:06:08 +02:00
Stefan Kremser 9072a560c4 Added option to use an OLED display 2017-04-01 22:54:39 +02:00
Stefan Kremser ea17fa423c little html file changes 2017-03-31 20:57:18 +02:00
Stefan Kremser 3378f2fc63 fixed settings timeout bug and improved deauth attack 2017-03-31 20:25:26 +02:00
Stefan Kremser 529fc76a3a hopefully fixed clientscan bug 2017-03-25 10:50:56 +01:00
Stefan Kremser e1b5f135bb Fixed loop bug in Mac library
@N0vaPixel never change a running system! This caused a bug in the beacon flood attack.
2017-03-16 23:06:25 +01:00
Stefan Kremser a71946d09a added buffer functions and fixed APScan issue 2017-03-16 22:36:34 +01:00
N0vaPixel 1d13f78215 Minor improvements 2017-03-13 20:58:53 +01:00
N0vaPixel 4613963e3c Moved setup() and loop() to avoid the problem of missing declarations when compiling on linux based OS 2017-03-13 16:46:23 +01:00
N0vaPixel c09da5fa8a Code visibility 2017-03-13 16:25:55 +01:00
N0vaPixel ae30634abd Removed useless listener 2017-03-13 01:14:00 +01:00
N0vaPixel 6a52e70ea7 Splitted JS part of the HTML files 2017-03-12 23:31:16 +01:00
Stefan Kremser 1e90af1bba marked position to comment out the mac vendor list 2017-03-12 11:44:02 +01:00
Stefan Kremser 485c1ac219 Merge-fixes 2017-03-12 11:08:30 +01:00
Stefan Kremser 6704606977 Merge remote-tracking branch 'H1ghTech/testing' into testing 2017-03-12 10:58:58 +01:00
Stefan Kremser 25a9dfe73c Added channel hopping option 2017-03-12 10:56:48 +01:00
H1ghTech dd046d76d2 All CSS in 1 file 2017-03-12 10:22:55 +01:00
Stefan Kremser 141c9f17a3 Added Probe Request Attack 2017-03-10 20:24:32 +01:00
Stefan Kremser 42058cf872 changed "connected to" to "AP" in clients.html
better for small screens where every character counts!
2017-03-08 20:28:06 +01:00
N0vaPixel e0c35b62da Added the ability to view the AP of sniffed clients 2017-03-08 02:44:45 +01:00
N0vaPixel dcdec41066 Javascript compatibility with old browser. Thanks to @benjenq 2017-03-08 01:43:09 +01:00
Stefan Kremser 62cbd546b5 marked the position to comment out the vendor list
for the 512kb version
2017-03-07 21:38:39 +01:00
N0vaPixel 7a0d367900 FIX Allow the user to set an empty password in order to make an open AP 2017-03-06 23:10:24 +01:00
N0vaPixel 6d13ebac0c Now use GPIO2 to blink the ESP LED 2017-03-06 22:13:37 +01:00
N0vaPixel 2b1527e78f Minified all html files to avoid memory problems 2017-03-06 01:01:28 +01:00
Stefan Kremser da71127156 LED debug info bugfix 2017-03-05 11:04:35 +01:00
N0vaPixel 4e9e4c2356 Bug fix: minified settings.html to free the flash memory
Around 7000 bytes for a web page, the server seems to be buggy and
return blank pages.
2017-03-05 03:15:07 +01:00
N0vaPixel 58964ed989 Using built-in LED when an attack is running. (+ options) 2017-03-05 02:24:14 +01:00
N0vaPixel 8c33c191ee Added restart button in the web interface 2017-03-05 02:23:11 +01:00
Stefan Kremser f2b13a56ae Merged branch testing into testing 2017-03-04 13:42:23 +01:00
tobozo fcb0e0dc49 implemented sendAPResults by AP id 2017-03-04 13:01:13 +01:00
Stefan Kremser aedbd2013d changed settings html "beacon encrypted" to "WPA2 beacons"" 2017-03-04 11:07:41 +01:00
Stefan Kremser 2e5656cfba NameList bugfig 2017-03-04 11:01:09 +01:00
Stefan Kremser 00ec81abd9 added manifest file 2017-03-04 10:35:33 +01:00
N0vaPixel 44934180b0 Updated scanNetworks to carry settings 2017-03-04 00:02:22 +01:00
N0vaPixel be158e3954 Enhanced SoftAP with channel and hide parameters 2017-03-04 00:01:23 +01:00
N0vaPixel 3d36cb3f3c Added setting options to scan hidden APs and to hide your own 2017-03-03 23:55:52 +01:00
Stefan Kremser 73390c68bc continuous*
because english thats why
2017-03-03 15:47:44 +01:00
Stefan Kremser d63c97f06a Added continous AP scan 2017-03-03 15:41:45 +01:00
Stefan Kremser c13619bdca more debug infos
because yey bugs!
2017-03-03 14:05:06 +01:00
N0vaPixel cfdda59f5a Prevent user to clone the beacons of a hidden APs. 2017-03-03 00:40:11 +01:00
N0vaPixel f53795edb6 Implement hidden APs
Now APscan is compatible with the new scanNetworks method

+ added bool hidden[] and bool getAPName(int num) to save and retrieve
the "visibility" status of a network.

+ If the ssid of a given network is hidden, getAPName() will return "*
Hidden SSID *"
hidden[] will stay empty.

+ Added debug infos
2017-03-03 00:38:09 +01:00
Stefan Kremser 37172d4b1d Added custom clone SSID option 2017-02-28 14:06:16 +01:00
Stefan Kremser fc1893521f Reduced the AP scan max results 2017-02-27 21:20:15 +01:00
Stefan Kremser 5aa2fcf2ff Readme changes & new images 2017-02-27 19:06:54 +01:00
Stefan Kremser 7e2dfcbf5a Implemented beacon list attack
and improved the json string generation
2017-02-27 12:41:59 +01:00
Stefan Kremser c8cee47355 Fixed APScan select bug 2017-02-26 23:16:39 +01:00
Stefan Kremser 297ec34e85 Reduced JSON file size (Fix for AP scan timeout) 2017-02-26 23:11:10 +01:00
Stefan Kremser 868d459c11 changed APScan debug that it shows the json string 2017-02-26 18:20:41 +01:00
Stefan Kremser 5718ba1abf Added SSID List 2017-02-26 18:11:49 +01:00
Stefan Kremser 1ee13c516c functional settings site 2017-02-26 12:18:08 +01:00
Stefan Kremser 8a5b3d3357 Added Settings HTML 2017-02-25 19:08:11 +01:00
Stefan Kremser 75087e12f6 minor improvements 2017-02-25 15:07:57 +01:00
Stefan Kremser 1bccb3e99f Added Settings 2017-02-25 14:32:58 +01:00
Stefan Kremser e7ab2f9881 cleaned up
cleaned up my failed merges
2017-02-24 19:07:42 +01:00
Stefan Kremser 9e605927c0 Merge remote-tracking branch 'refs/remotes/origin/testing'
Conflicts:
	esp8266_deauther/APScan.cpp
	esp8266_deauther/esp8266_deauther.ino
2017-02-24 18:54:05 +01:00
Stefan Kremser 38b3f97375 Revert "Merge remote-tracking branch 'refs/remotes/tobozo/master'"
This reverts commit 8dbef86da1.
2017-02-24 18:51:19 +01:00
Stefan Kremser 986558856d Revert "Merge remote-tracking branch 'refs/remotes/tobozo/master'"
This reverts commit 8dbef86da1.
2017-02-24 18:41:37 +01:00
Stefan Kremser 8dbef86da1 Merge remote-tracking branch 'refs/remotes/tobozo/master'
Conflicts:
	esp8266_deauther/APScan.cpp
	esp8266_deauther/APScan.h
	esp8266_deauther/esp8266_deauther.ino
2017-02-24 18:38:35 +01:00
Stefan Kremser b2907561c3 Fixed beacon attack
works now, but unfornatly only in broadcast. An targeted beacon flood attack on a specific client  is mostly dropped (maybe because of the SDK?).
2017-02-24 18:24:44 +01:00
Stefan Kremser 725f0eb18c clientscan crash bug fix
also readme and screenshot changes
2017-02-24 14:14:33 +01:00
Stefan Kremser a791101d32 Improved beacon attack
Both attacks should work now
2017-02-24 13:34:20 +01:00
Stefan Kremser 0f3742b6bf Multi APs
select, scan and attack multiple APs
2017-02-24 11:28:58 +01:00
tobozo c6037127cb merged serial peering logic 2017-02-23 21:43:43 +01:00
Stefan Kremser 46e3a0fcfc fixed bug in the beacon packet declaration
I'm an idiot and forgot to change the mac adress back to broadcast...
2017-02-20 15:30:11 +01:00
Stefan Kremser 7be4d742ac fix for invalid Json bug
JSON bug episode 2 - attack of the json bugs :D no? Ok.. :(
2017-02-20 15:26:17 +01:00
Stefan Kremser cf2789e235 resolved CSS error
changed button border color to a valid hex code
2017-02-20 12:17:25 +01:00
Stefan Kremser db264ad1b6 mobile optimization
- set maxResults to 80 (for APScan & ClientScan)
- updated HTML & CSS files
- set EEPROM size to 4096
- set namelist length to 50
2017-02-20 12:03:54 +01:00
Stefan Kremser c948676fff little improvements
- start beacon spam without a selected AP (not necessary).
- added beaconChannel definition to Attack.h
2017-02-18 13:51:08 +01:00
andrbmgi 37b98f3879 5 second timeout instead of 3 2017-02-18 08:02:33 +01:00
andrbmgi 0b66f101b0 fix for APs > maxResults creating invalid json resulting in empty AP list 2017-02-18 07:59:28 +01:00
Stefan Kremser efed544fb9 Add files via upload 2017-01-13 20:22:25 +01:00
Stefan Kremser 1915513136 Add files via upload 2017-01-13 20:00:07 +01:00
Stefan Kremser ecc8539659 Add files via upload 2017-01-07 14:40:44 +01:00