Skip to content

WPAx: proposal for a new hash line format (successor of hccapx)  #1816

Description

@ZerBea

hccapx is a custom format, specifically developed for hashcat.
The structure of .hccapx is fix and we are not able to handle
new "attack verctors" like PMKID. Also we waste GPU time,
because we have to run hashcat on WPA-EAPOL-PBKDF2 (2500)
and WPA-PMKID-PBKDF2 (16800) even we have a PMKID hash
and an EAPOL hash using the same network name. If we combine
both hashmodes to a single hashline, we will get full advantage
of reause of PBKDF2 on both hash types. Therefore we need a
new and more flexible hash format.
Handle WPA-EAPOL-PBKDF2 (2500) and WPA-PMKID-PBKDF2 (16800)
and WPA-EAPOL-PMK (2501) and WPA-PMKID-PMK (16800) in a single hashline.

1
The following entries are mandatory to calculate the PMK
using PBKDF2:
ESSID

2
The following entries are mandatory to crack the hash
in hash mode WPA-PMKID-PBKDF2 (16800):
mac_ap
mac_sta
PMKID

3
The following entries are mandatory to crack the hash
in hash mode WPA-EAPOL-PBKDF2 (2500):
mac_ap
mac_sta
nonce_ap
EAPOL_sta

In case of hash modes WPA-EAPOL-PMK (2501) and
WPA-PMKID-PMK (16800), we do not need step 1.

In case of AKM-defined 4-weay handshakes (WPA3, SAE, FILS, EAP),
we do not need step 1, too.
https://hashcat.net/forum/thread-7717-post-42759.html#pid42759

Also we should use a hexified hashline (only hex values, especially for ESSID)
like we do it allready by 16800 hashlines. We get advantage to
handle this hash lines with simple bash commands instead
of several tools to retrieve informations about the binary hccapx.
Also hexified ASCII hash lines can be can be easily posted
in varius forums (hashkiller, antichat,...).

Putting this ideas into a single hashline, it could look like this one:

hashcat should run WPA-PMKID-PBKDF2 and WPA-EAPOL-PBKDF2 on this hashline
mac_ap * mac_sta * PMKID * ANONCE * ESSID * EAPOL

hashcat should run WPA-PMKID-PBKDF2 on this hashline
Received only a PMKID
mac_ap * mac_sta * PMKID * * ESSID*

hashcat should run WPA-EAPOL-PBKDF2 on this hashline
mac_ap * mac_sta * * ANONCE * ESSID * EAPOL

hashcat should run WPA-PMKID-PMK and WPA-EAPOL-PMK on this hashline
mac_ap * mac_sta * PMKID * ANONCE * * EAPOL

hashcat should run WPA-PMKID-PMK on this hashline
Received only a PMKID
mac_ap * mac_sta * PMKID * * *

hashcat should run WPA-EAPOL-PMK on this hashline
mac_ap * mac_sta * * ANONCE * * EAPOL

Additional we can add a control field (0000) to
allow hcxtools to parse informations to hashcat,
like:
message_pair
use only PMK mode
use only EAPOL mode
has is AKM-defined and requires SHA_384 mic calculation instead of SHA-256
...
example:
mac_ap * mac_sta * PMKID * ANONCE * ESSID * EAPOL * control_field

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions