
A small set of tools to convert packets from capture files to hash files for use with Hashcat or John the Ripper.
A small set of tools to convert packets from capture files to hash files for use with Hashcat or John the Ripper.
These tools are 100% compatible with Hashcat and John the Ripper and are endorsed by Hashcat.
The main purpose of hcxtools is to detect weak points within one's own WiFi network by analyzing the hashes. Therefore, the conversion of the dump file to WPA-PBKDF2-PMKID+EAPOL hash file allows the user to check if the WLAN-KEY or PMK was transmitted unencrypted. Or upload the "uncleaned" dump file (pcapng, pcap, cap) here to find out if your AP or the CLIENT is vulnerable by using common wordlists or a weak password generation algorithm.
Support for Hashcat hash-modes: 4800, 5500, 2200x, 16100, 250x (deprecated), and 1680x (deprecated).
Support for John the Ripper hash-modes: WPAPSK-PMK, PBKDF2-HMAC-SHA1, chap, netntlm, and tacacs-plus.
Support for gzip (.gz) single file compression.
An overview of Hashcat mode 22000. - (https://hashcat.net/wiki/doku.php?id=cracking_wpawpa2)
Old but still applicable write-up by atom of the Hashcat forums covering a new attack on WPA/WPA2 using PMKID. - (https://hashcat.net/forum/thread-7717.html)
Hashcat mode 22000 write-up by atom of the Hashcat forums. - (https://hashcat.net/forum/thread-10253.html)
Unsupported: Windows OS, macOS, Android, emulators or wrappers!
They do not crack WPA PSK related hashes. (Use Hashcat or JtR to recover the PSK.)
They do not crack WEP. (Use the aircrack-ng suite instead.)
They do not crack WPS. (Use Reaver or Bully instead.)
They do not decrypt encrypted traffic. (Use tshark or Wireshark to do so.)
| Tool | Description |
|---|---|
| hcxpcapngtool | Tool to convert raw capture files to Hashcat and JtR readable formats. |
| hcxhashtool | Tool to filter hashes from HC22000 files based on user input. |
| hcxpmktool | Tool to calculate and verify a PSK and/or a PMK. |
| hcxpottool | Tool to to handle ASCII format and several UTF formats of hashcat's pot file. |
| hcxpsktool | Tool to get weak PSK candidates from hash files or user input. |
| hcxeiutool | Tool to prepare -E -I -U output of hcxpcapngtool for use by Hashcat + rule or JtR + rule. |
| hcxwltool | Tool to calculate candidates for Hashcat and JtR based on mixed wordlists. |
| hcxhash2cap | Tool to convert hash files (PMKID&EAPOL, PMKID, EAPOL-hccapx, EAPOL-hccap, WPAPSK-john) to cap. |
| wlancap2wpasec | Tool to upload multiple (gzip compressed) pcapng, pcap and cap files to https://wpa-sec.stanev.org |
| whoismac | Tool to show vendor information and/or download oui reference list. |
hcxdumptool -> hcxpcapngtool -> hcxhashtool (additional hcxpsktool/hcxeiutool) -> hashcat or JtR
On most distributions hcxtools are available through the package manager.
If you decide to compile latest git head, make sure that your distribution is updated to it's latest version and make sure that all header files and dependencies have been installed!
git clone https://github.com/ZerBea/hcxtools.git
cd hcxtools
make -j $(nproc)
Install to /usr/bin:
make install (as super user)
Or install to /usr/local/bin:
make install PREFIX=/usr/local (as super user)
You might expect me to recommend that everyone should be using hcxdumptool/hcxtools. But the fact of the matter is, however, that hcxdumptool/hcxtools is NOT recommended to be used by unexperienced users or newbies. If you are not familiar with Linux generally or if you do not have at least a basic level of knowledge as mentioned in section "Requirements", hcxdumptool/hcxtools is probably not what you are looking for. However, if you have that knowledge this tools can do magic.
If you decide to compile latest git head, make sure that your distribution is updated to it's latest version!
| Script | Description |
|---|---|
| piwritecard | Example script to restore SD-Card |
| pireadcard | Example script to backup SD-Card |
| hcxgrep.py | Extract records from m22000 hashline/hccapx/pmkid file based on regexp |
Most output files will be appended to existing files (with the exception of pcapng, pcap, cap files).
It is recommended to use hash mode 22000 (22001) instead of deprecated hash modes 2500 (2501) and 16800 (16801).
hcxtools are designed to be analysis tools. This means that everything is converted by default and unwanted information must be filtered out!
Warning: Do not merge dump files! This WILL destroy hash values assigned by custom blocks!
Tools do not perform NONCE ERROR CORRECTIONS! In case of a packet loss, you'll get a wrong PTK.
This branch is pretty closely synced to the Hashcat and John the Ripper repositories.
Each EAPOL hash in the WPA*02* hash line is built from two handshake
messages. One message provides the EAPOL frame (which contains the MIC
to verify against and one nonce already embedded at byte offset 17). The
other message provides the second nonce that is not present in the frame.
Together they give hashcat everything it needs: ANonce + SNonce + MIC +
EAPOL frame.
There are three independent choices when building a hash from a complete 4-way handshake:
That gives 2 x 2 x 3 = 12 theoretical combinations.