Releases: kimocoder/wifite2
Improvements / Fixes
- hashcat: output only the 'recovered' key into cracked.json
- airmon: put the interface debug logging behind '-v' verbose switch
- airmon: fix crash on non-vif adapters when settings monitor mode
- WPS: don't disable other wps attacks when '--no-pixie' is used
- Bugfix: reaver: add missing subprocess
Improvements
- PMKID: fixed the pmkid re-use issue
- Process: improved process and thread handling significant
- Target: scan: remove negative one message (clutters the rendering)
- Align 'Failed to crack handshake' and colored it
- Updated the wordlist
Big improvements / Bugfixes
Changelog Summary
🐛 Critical Bug Fixes
-
Fixed missing subprocess import in wifite/attack/all.py that was causing NameError: name 'subprocess' is not defined crashes during attacks
-
Enhanced error handling across multiple modules with specific exception types instead of generic catches
-
Fixed airmon interface parsing to properly handle different airmon-ng output formats and edge cases
🔧 Error Handling & Stability Improvements
- Comprehensive exception handling added to all major modules:
- AttackAll, AttackWEP, AttackWPA, Reaver, Bully, Wash
- Specific handling for subprocess.CalledProcessError, OSError, IOError, ValueError, PermissionError
- Enhanced main error handling in wifite.py with proper cleanup and user-friendly error messages
- Improved process cleanup with new ProcessManager class for tracking and cleaning up zombie processes
🚀 Performance & Memory Optimizations
- Memory management improvements in Scanner:
- Target list size limits (1000 max) to prevent memory bloat
- Periodic cleanup of archived targets (500 max, keep newest 300)
- Automatic garbage collection during long scans
- Output size limits in Process class to prevent memory issues with large command outputs
- File size checking before copying large capture files to prevent memory problems
🛠 Tool & Compatibility Improvements
- Hashcat modernization:
- Updated from deprecated mode 2500 to modern mode 22000 for WPA/WPA2
- Improved hash parsing and error handling
- Better support for WPA3-SAE hashes
- Airmon interface detection improvements for various wireless chipsets and output formats
- Tshark test fixes with temporary file handling to resolve permission issues
🔒 Security & Robustness
- Process management with proper cleanup and signal handling
- File operation safety with error handling for disk space and permission issues
- Input validation improvements for target parsing and configuration
- Graceful shutdown handling with escalating signal termination (SIGINT → SIGTERM → SIGKILL)
📊 User Experience Improvements
- Better error messages with specific error types and helpful context
- Improved target display formatting and alignment
- Enhanced debugging output with verbose mode support
- Safer target validation to filter invalid BSSIDs and handle edge cases
This release significantly improves wifite2's stability, performance, and error handling while laying the groundwork for future enhanced scanning capabilities.
Bugfixes / Improvements
- Fix coWPatty support. Finally working again.
- Allow airodump-ng to exit & get reaped
- Supports latest hcxdumptool (v6.3.0) instead of older
- Updated Dockerfile to use Debian Bookworm.
- Updated the README.md
Bugfixes / Improvements
- added Sourcery AI worklow
- added python-3.12 classifier
- switch to use airmon-ng (VIF) first
- db: fix strings in db in order to make --cracked work again
- updated fetch-oui script for faster fetching updated lists
- updated mac vendor OUI list
- depenencies: update pytest version and repo (type)
- updated Dockerfile
- tools: remove ath_masker from tools
- tools: remove customized wash
- python: python pep8 improvements
- append changelog to fulfill obligation of GPL-2.0
- fixed bully dependency link
- other minor fixes
Features / Bugfixes / Enhancements
-
Update ath_masker
-
backtrace: better handle the debug (stacktrace) then in tool output
parsing all trace in stdout. -
terminal: Suppress stderr and stdout when writing pixie keys to db
-
wash: Add a customized 'wash' tool (from reaver) which is
handling memory (cache/flush) and timers and more. We gonna hardcode/modulize this
so users isn't depending on various ones from their respective distros which varies. -
tools/script: Add fetch-oui script (which will be a module later)
-
tools/script: Add example automation "run-automation.sh" script
-
Nullpin: fixed '--no-nullpin' which was doing the opposite and triggered other params
-
John: fix a param for return of key to avoid a crash if none found (traceback)
-
Crack: improve the output in the ESSID target list by removed the parentheses surrounding 4-way captures listed
-
DB: fixed parsing bssid and essid to json db file
-
DB: tweaked the export of 4-way handshakes to the DB, so it looks a bit better now they're inligned.
Been looking and walkthrough all deps (tools) to ensure it all fits, as things changes with time,
partially fixed cracking by using john, testing good, but we need to find a new way to read and parse the output (key). (TODO) -
Update 'chardet' dependency from v5.0.0 to v5.1.0
-
Update 'scapy' dependency from v2.5.0rc2 to v2.5.0
-
Fix overly permissive regular expression range
-
Update OUI (manufacturers) list
-
Tweak scanner output
-
Update Dockerfile to use python-3.12
-
Code cleanup (minimalize the source)
-
Update README.md
Enhancements / Bugfixes
- Fix Terminal clear issue on scan refresh issue on PC and Android
- Fixing compilation issues with ath_masker
- Minor cosmetic changes / fixes to scanner
- Remove the submodules in tools which was wrongly included
- Minimize the code by removing the tools we used to do debugging with earlier
- Update ieee-oui with a lot of more manufacturers in the list
- Update scapy dependency from v2.4.5 to v2.5.0rc2
- Add python-3.11 to setup classifier
- Minor flake8 code fixes
Enhancements / Bugfixes
-
Stop using airmon-ng and virtual interfaces (VIF).
This should cause less adapter interference
and attacks should be faster.We rather call / use 'ip' and 'iw' to handle monitor
mode on interface. -
Removed broken 'pyrit' -- (looking for other tools to have more options)
-
Fixed another NetworkManager kill script related issue
-
Fix test cases and scripts related
-
Update python libraries (deprecations)
-
Improve the GitHub workflow
-
Update Dockerfile
-
Update 'argparse' library from v1.2.1 to v1.4.0
-
Update 'scapy' library from v1.4.4 to v1.4.5
-
Update .gitignore
-
Tweak setup.py
-
Code cleanup
Enhancements / Bugfixes
- Fixed bug in WEP attack
- Fixes PMKID attack
- Fixed most test cases
- Ignore invalid indexes
- Handle empty json to avoid errors
- Adjust PMKID attack time from 120 to 300 seconds
- tshark command is missing quotes when specifying the type_subtype
- Defaults encryption to WPA (which is the most common) when airodump doesnt recognize the encryption type
- Fix an encoding issue when reading the CSV output from airodump
- Fix JSON being saved without the values
- Removed ignore NONE essid for now
- Better python3 support
- Update Dockerfile
- Update Makefile
- Add fixes according to flake8
- Add Snyk workflow
Features / Enhancements / Bugfixes
- Added feature for skipping cracked APs
- Detect AP deauth request
- Add 'pixiewps' to Makefile
- Airodump: ignore none essid
- Detect NT platform
- Fixed service NetworkManager changes
- Fixed reaver link
- Add 'pyrit' to tools/
- Update dockerfile
- Add channel to CrackResultWPS
- Don't double quote tshark filter
resulting in test failure for tshark. - Create Dependabot config file
- Update README.md