Commit Graph
100 Commits
Author SHA1 Message Date
derv82 f641ea53c4 Fix but when cracking with John, small fixes.
* --crack commands printed consistently (same color/format).
* Only warn about PMKID -> hashcat once if any selected handshakes are PMKIDs
2018-08-21 13:55:22 -07:00
derv82 d01470a8e4 Bringing back Wifite.py
Because why not.
2018-08-21 00:16:15 -07:00
derv82 dd0e44cf53 --crack: Dependency management, avoid dupes in cracked.txt
* Dupes are skipped if everything *except* date matches (same bssid/ssid/type/key)
* John: Detect and use OpenCL or CUDA using `john --list=formats`
* Removed `wifite.py` as it's no longer used & is confusing.
2018-08-21 00:04:21 -07:00
derv82 4173ef46e5 --crack supports hashcat, aircrack, john, cowpatty, and pyrit.
* Still not "print" option for --crack.
* Checks hashcat for devices, uses --force if no devices are found.
* Interrupting --crack stops entire process, not just a single crack attempt
* Changed wordlist location, hopefully completes #102.
2018-08-20 19:33:42 -07:00
derv82 a063f08388 Updating README
Moved things around, added more info, added links to required tools.
2018-08-20 11:44:10 -07:00
derv82 b889cb93af 2.2.1: Version bump for setup.py changes. Save wordlists to share/dict
Should resolve #102
2018-08-20 10:53:48 -07:00
derv82 95798c36f6 Install to /usr/sbin/wifite, save wordlists to /usr/local/share/wordlists/
As asked in #102.
2018-08-19 22:02:14 -07:00
derv82 8b786b70b0 Added setup.py. Run: python -m wifite
As asked by @blshkv in #102.

Running: `sudo python -m wifite`
Install: `sudo python setup.py install`

These steps (and "uninstalling") are mentioned in the README.
2018-08-19 15:32:14 -07:00
derv82 a157132387 2.1.9: --pmkid option, cleaned up --cracked, other bug fixes.
PMKID:

* `--pmkid` option only attacks WPA networks with PMKID capture + crack
* Decreased PMKID capture time from 60 seconds to 15 seconds.
* Ignores PMKID attack if `--wps-only` is set.

WPS:

* Ctrl+C while waiting for `bully` to fetch PSK = remembers PIN, PSK is unknown.

Misc:

* `--cracked` prints results on single lines (much easier to read)
* Fixed typo when required dependencies are not found (closes #127)
2018-08-19 10:37:27 -07:00
derv82 ebb7cac91c Removing the last of the double-quoted strings (now single-quoted) 2018-08-18 03:01:52 -07:00
derv82 c4ed911490 Rewrote --crack behavior; supports multiple handshakes at once. 2018-08-18 02:55:12 -07:00
derv82 0977f48d0c Documentation, code-formatting, and refactoring.
* Added some docs, updated existing docs.
* Use single-quotes for strings when possible.
* Color.pexception() prints exception and stack trace.
2018-08-17 03:46:58 -07:00
derv82 6adca64154 2.1.8: Check hashcat tools before trying PMKID attack.
Should resolve #124.

Also, capturing PMKID will skip WPA handshake capture.
2018-08-16 11:10:03 -07:00
derv82 7ed30f0973 Making all .py files executable 2018-08-16 01:56:42 -07:00
derv82 ba847442d5 Don't overwrite john files in --crack output.
For pull request #117
2018-08-16 01:23:35 -07:00
derv82 f76c339bb7 Avoiding needless mac_address lookup, empty interfaces, banner tweak.
mac_address lookup & empty iface for #112.
Banner tweak for #92
2018-08-16 01:23:35 -07:00
derv82 d7120bca50 2.1.7: Version bump for recent updates (PMKID, AttributeError fix). 2018-08-16 01:23:35 -07:00
derv82 e48f3bb035 Avoid AttributeErrors, support re-cracking PMKIDs
Process.__del__() swallows AttributeErrors now (for #120).

And hashcat won't output the key if it's already been cracked (it's in the pot file).
So we run hashcat again, with the --show parameter. This does not try to crack again.
2018-08-16 01:23:35 -07:00
derv82 fd3c955c48 Added Hashcat library, PMKID is persisted in ./hs/ and re-used 2018-08-16 01:23:35 -07:00
derv82 dd7e93666a Cleaning up PMKID attack. 2018-08-16 01:23:35 -07:00
derv82 936230dd50 Added PMKID attack. Simplified attack-loop. 2018-08-16 01:23:35 -07:00
derv82 0d44a6bc3d Fix bug in dependency failure. 2018-08-16 01:23:35 -07:00
derv82 305d6b9e3b Cleaning up wifite.py, added wordlist.
Moved logic from main module into helper classes.
Wordlist from https://github.com/berzerk0/Probable-Wordlists/tree/master/Real-Passwords/WPA-Length
2018-08-16 01:23:35 -07:00
derv82 c335391bca Only depend on 'aicrack' to avoid messages for entire air* suite. 2018-08-16 01:23:35 -07:00
derv82 f24ec55999 Silently ignore failure to kill conflicting processes.
Resolves #97
2018-06-09 22:48:10 -04:00
derv82 9d1db5966b Change shebang from /usr/bin/python to /usr/bin/env python
Resolves #99
2018-06-09 22:46:30 -04:00
derv82 1edba23c32 2.1.6: Support non-ASCII ESSIDs in scanner. Don't silently exit on crash.
Resolves #88
Resolves #92
Might be related to #85
2018-06-09 22:22:38 -04:00
derv82 96e846aa82 Removing EvilTwin-related dependencies
Resolves #89
2018-05-27 20:27:37 -04:00
derv82 72fc0b27a1 2.1.5 version bump for recent changes. 2018-05-27 17:16:11 -04:00
derv82 9a12e38dda Dependency cleanup 2018-04-21 11:36:39 -04:00
derv82 0adcd55742 All tools inherit "Dependency". 2018-04-21 11:34:30 -04:00
derv82 1083db6f88 Add eviltwin args. Add "Dependency" subclass 2018-04-21 04:25:46 -04:00
derv82 28b2d8312c --keep-ivs option to retain .ivs files across attacks on the same target
For #27
2018-04-20 14:57:31 -04:00
derv82 9f95f554ae Lots of changes to improve WEP, but don't actually improve WEP. 2018-04-19 22:49:59 -04:00
derv82 adc7d37318 Don't kill+restart aircrack after 30s, wait 60s for target,
Also detect enabled/disabled interfaces when putting in/out of monitor mode.
2018-04-19 12:59:11 -04:00
derv82 1bbc7fefaf Better colors on stack traces 2018-04-19 02:50:25 -04:00
derv82 4ef3236e4d Don't disable monitor mode / put interface up on exit. 2018-04-18 21:36:36 -04:00
derv82 bd495966f0 v2.1.4: Version bump for recent fixes/changes. 2018-04-18 15:03:34 -04:00
derv82 6f71957753 iface before PHY in output.
Remove "Interface" model, rely on ifconfig
2018-04-18 15:01:25 -04:00
derv82 ec49c0336e Change all *.py to exectuable 2018-04-18 14:44:56 -04:00
derv82 2b40ce3706 Code cleanup 2018-04-18 14:42:24 -04:00
derv82 8f32972546 Fix bug in macchanger 2018-04-18 06:16:53 -04:00
derv82 3542381b3e Move Ifconfig and Iwconfig logic to separate classes. 2018-04-18 06:15:14 -04:00
derv82 bd13bf69cf testing discord https://discord.gg/Zc7Ej8D
[discord for wifite](https://discord.gg/Zc7Ej8D)
2018-04-17 18:27:25 -04:00
derv82 f6fb7d688e Adding SniffAir documentation 2018-04-17 14:35:22 -04:00
derv82 830e3794fe Added "proof-of-concept" commands to start AP & redirect traffic 2018-04-17 14:15:34 -04:00
derv82 c13021266e Including more info on Rogue AP requirements (hostapd/dnsmasq) 2018-04-17 02:13:12 -04:00
derv82 978973e507 Added note to improve dependency handling. 2018-04-17 02:11:23 -04:00
derv82 d92e3a6f92 Adding info about creating Evil Twin AP. 2018-04-15 23:18:40 -04:00
derv82 42781dedcc Added Airmon-ng test. 2018-04-15 23:10:47 -04:00
derv82 64c0662d30 More Evil Twin ideas. 2018-04-15 06:09:38 -04:00
derv82 3d6f30af0a Adding thoughts/ideas about an "Evil Twin" feature in Wifite. 2018-04-15 05:57:36 -04:00
derv82 90c99b11f1 2.1.3: Better WPS attack messaging. Leave device in Monitor Mode.
Unrelated to WPS:
* Do not take device out of monitor mode when finished (informs user)
* Do not restart NetworkManager when finished (informs user)

Changes to CLI switches:
* --wps-time X: Total time for WPS attack to complete
* --wps-timeouts X: Max number of timeouts before failing
* --wps-fails X: Max number of WPSFails before failing
* Removed unused WPS switches.
* Improved --help messaging for WPS switches.
* Fail/Timeout threshold default is 100

Bully now outputs useful information:
* Current PIN + status
* Time remaining
* Number of Timeout messages
* Number of "WPSFail" messages
* If AP is locked

Better reaver output.
* Looks more like Bully's output.
* Timer shows time remaining for attack.
* Mentions "Running pixiewps" during "M2 message" step.
* pixiewps failure looks like this: "Reaver says: 'WPS pin not found'"
* Counts Timeouts and "WPS Transaction Failure" (WPSFail)

For #28
2018-04-07 19:22:51 -04:00
derv82 20ea673a3d 2.1.2: Quiet decloak. Support ESSIDs with commas and trailing spaces
Decloaked ESSIDs will have a "*" next to their name. For #78

While testing, I found that Wifite did not parse Airodump's CSV correctly.
Specifically, ESSIDs with commas or trailing spaces.
Fixed in this commit.

Also fixed hidden ESSID detection introduced by the new CSV parsing logic.
2018-04-06 18:56:35 -04:00
derv82 cef4c451fe Better help messages for -v and -i 2018-04-06 17:29:09 -04:00
derv82 2b7870cb7c 2.1.1: Option to ignore APs without clients (--clients-only or -co)
Requested in #79
2018-04-06 17:27:43 -04:00
derv82 b716e6099f Don't specify reaver timeout (was 4s, default is 10s) 2018-04-06 16:21:30 -04:00
derv82 e0ec0e72b2 Change version to 2.1.0
See https://github.com/derv82/wifite/issues/130 for more info.
2018-04-06 15:55:58 -04:00
derv82 699578abed Allow spaces in target selection (e.g. 3, 4, 7-8) 2018-04-01 15:57:58 -04:00
derv82 57ad097d49 --check: Detect BSSID based on Wifite's handshake filename format. 2018-04-01 15:31:12 -04:00
derv82 a4110b4cf9 Put quotes around Tshark filter ... otherwise tshark locks up 2018-04-01 15:23:56 -04:00
derv82 e8c0843bdf Use stdbuf only if it exists 2018-04-01 01:09:57 -04:00
derv82 5db801b414 Cleaning up handshake code 2018-04-01 01:03:10 -04:00
derv82 2cd6116a8c Move Pyrit logic to tools/pyrit.py 2018-04-01 00:55:41 -04:00
derv82 a2dbf4c382 Moving Tshark logic into /tools/tshark.py
Added tests for analyzing handshakes
2018-04-01 00:37:28 -04:00
derv82 acc8e296d5 Dim the [+] box colors 2018-03-31 23:59:50 -04:00
derv82 72382cf381 Updating README for latest developments. 2018-03-31 23:36:53 -04:00
derv82 3eddcaa59f Support for Python3
That was fun.
2018-03-31 23:02:33 -04:00
derv82 1ad17472b2 Tshark is optional, falls-back to Wash for WPS-detection.
Should resolve #77
2018-03-31 18:57:11 -04:00
derv82 528741f89f Fix bully: --force when deriving PSK from PIN 2018-03-31 18:40:04 -04:00
derv82 909b10e517 Make tshark non-required.
* WPS-detection is not required for non-WPS attacks.
* Handshake analysis can be done using aircrack, cowpatty, pyrit, etc.
2018-03-31 18:05:47 -04:00
derv82 b0bd57b1a3 Improve messaging during chopchop & fragment attacks
Bugfix when chopchop fails.
Displays aircrack's error message when chopchop fails.

For improving WEP attacks in #27
2018-03-25 16:03:20 -04:00
derv82 d8da6798de Update README. Add ideas to TODO after reading the first 20 issues on wifite v1 :( 2018-03-25 04:48:55 -04:00
derv82 19c38bd06c Fetch PSK when reaver fails to find it using Bully
Also changed reaver --timeout from 10 seconds (default) to 4 seconds.

Resolves #76
2018-03-24 15:02:11 -04:00
derv82 a488cf86f1 Bugfix: Don't infinitely loop while calculating Hex & ASCII key from WEP attack.
* Simplified HEX/ASCII conversion. Avoids infinite loop 🤔
* Added integration test: python -m wifite.tools.aircrack

Should resolve "hanging" issues during WEP attacks such as #27.
2018-03-24 14:10:48 -04:00
derv82 34d6b69b48 Fixing whitespace (tabs) on 'baddriver' methods 2018-03-17 17:42:44 -04:00
derv82 ad0265cd92 Merge branch 'refactor' 2018-03-17 17:30:11 -04:00
derv82 7d4219808d Wait for WPS results if target is specified in switches and --wps-only as well 2018-03-17 17:29:33 -04:00
derv82 964bf23763 Small fixes to verbose output 2018-03-17 17:29:33 -04:00
derv82 b5cb8b69f1 Filter *out* by ESSID using -E (--ignore-essid)
More refactoring!
2018-03-17 05:47:02 -04:00
derv82 a100d53300 Cleaning up --help, banner, small fixes 2018-03-17 05:30:12 -04:00
derv82 0a089c8aab Verbose mode for --help 2018-03-17 05:14:41 -04:00
derv82 9ff7404d53 Small refactoring 2018-03-17 04:41:44 -04:00
derv82 d63f43016d Fixing tests 2018-03-17 04:33:42 -04:00
derv82 7b9a023bd6 Cleaning up imports, fixing a few bugs. 2018-03-17 04:32:00 -04:00
derv82 f4a11f9acb Refactor arguments 2018-03-17 04:15:19 -04:00
derv82 622ec064a5 Massive refactor/renaming. No more upper-case filenames. 2018-03-17 04:04:05 -04:00
derv82 88bb2c0ac2 Fix bug when crack succeeds with Reaver.
As reported in #60
2018-03-17 03:12:31 -04:00
derv82 93af516c45 Always print stack traces for errors during WEP attack
Should make troubleshooting #27 easier.
2018-03-11 01:49:41 -05:00
derv82 697207f11b Don't kill conflicting processes by-default, require --kill
Shows warning to user that the processes may conflict with Wifite, & how to kill them.

Should resolve #57
2018-03-10 21:18:20 -05:00
derv82 e95b4a99a0 Slight adjustments to format of printed information. 2018-03-10 20:36:50 -05:00
derv82 a50d633861 New ascii art. Because why not. 2018-03-10 20:28:17 -05:00
derv82 3257755094 Some "hidden" helper switches (-nd --no-deauths --nodeauths)
When skipping an attack (WPA/WPS), explain why and mention the AP ESSID
2018-03-10 16:00:17 -05:00
derv82 100528cac3 Removed WPS PIN attack completely from Wifite. 2018-03-10 16:00:17 -05:00
derv82 0bfc82c356 BUGFIX: Detect when Reaver/Bully is successful.
Reported in #60

Also removed PIN attack.
2018-03-10 15:59:52 -05:00
derv82 9661da51e0 Restart NetworkManager if killed, using 'service' command.
Previously only restarted network-manager if iface was put into monitor mode.

Also tries systemctrl if 'service' fails.

Should resolve #70
2018-03-10 14:47:14 -05:00
derv82 0a81774c59 BugFix: Selects full range of clients when given ("N-M")
Previously selected from N to (M-1)
2018-03-10 14:36:40 -05:00
derv82 82f0a2ae96 Trying to fix bully & reaver Pixie-Dust attacks.
Haven't even looked at PIN attacks yet.

Hopefully helps out with #28
2018-03-03 23:40:15 -05:00
derv82 1a063edc42 Check required/recommended apps are installed during startup
Closes #61
2018-03-03 02:47:00 -05:00
derv82 22e655215c Bring back --showb due to popular demand
Closes #69 (heh)
2018-03-03 02:27:18 -05:00