Scroll to navigation

HCXDUMPTOOL(1) User Commands HCXDUMPTOOL(1)

NAME

hcxdumptool - hcx tools set-N

DESCRIPTION

hcxdumptool 6.0.5 (C) 2020 ZeroBeat usage : hcxdumptool <options>

press the switch to terminate hcxdumptool hardware modification is necessary, read more: https://github.com/ZerBea/hcxdumptool/tree/master/docs

example: hcxdumptool -o output.pcapng -i wlp39s0f3u4u5 -t 5 --enable_status=3

do not run hcxdumptool on logical (NETLINK) interfaces (monx, wlanxmon) do not use hcxdumptool in combination with 3rd party tools, which take access to the interface (except: tshark, wireshark, tcpdump)

short options: -i <interface> : interface (monitor mode will be enabled by hcxdumptool)

some Realtek interfaces require NETLINK to set monitor mode in this case try iw: ip link set <interface> down iw dev <interface> set type monitor ip link set <interface> up WARNING:
hcxdumptool may not work as expected on virtual NETLINK interfaces do not report issues related to iw

-o <dump file> : output file in pcapng format

including radiotap header (LINKTYPE_IEEE802_11_RADIOTAP)

-f <frames> : frames to save

bitmask:
0: clear default values 1: MANAGEMENT frames (default) 2: EAP and EAPOL frames (default) 4: IPV4 frames 8: IPV6 frames
16: WEP encrypted frames 32: WPA encrypted frames to clear default values use -f 0 first, followed by desired frame type (e.g. -f 0 -f 4)

-c <digit> : set scan list (1,2,3, ...)

default scan list: 1...13 maximum entries: 127 allowed channels (depends on the device): 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 68, 96 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128 132, 134, 136, 138, 140, 142, 144, 149, 151, 153, 155, 157, 159 161, 165, 169, 173

-t <seconds> : stay time on channel before hopping to the next channel

default 4 seconds

-m <interface> : set monitor mode by ioctl() system call and quit -I : show WLAN interfaces and quit -C : show available channels and quit

if no channels are available, interface is probably in use or doesn't support monitor mode

long options: --do_rcascan : show radio channel assignment (scan for target access points)

if you got no HIT, packet injection is possible not working also it can be used to get information about the target and to determine that the target is in range use this mode to collect data for the filter list run this mode at least for 2 minutes to save all received raw packets use option -o

--reason_code=<digit> : deauthentication reason code

1 WLAN_REASON_UNSPECIFIED 2 WLAN_REASON_PREV_AUTH_NOT_VALID 4 WLAN_REASON_DISASSOC_DUE_TO_INACTIVITY 5 WLAN_REASON_DISASSOC_AP_BUSY 6 WLAN_REASON_CLASS2_FRAME_FROM_NONAUTH_STA 7 WLAN_REASON_CLASS3_FRAME_FROM_NONASSOC_STA (default) 9 WLAN_REASON_STA_REQ_ASSOC_WITHOUT_AUTH

--disable_client_attacks : do not attack clients

affected: ap-less (EAPOL 2/4 - M2) attack

--disable_ap_attacks : do not attack access points

affected: connected clients and client-less (PMKID) attack

--stop_ap_attacks=<digit> : stop attacks against ACCESS POINTs if <n> BEACONs received

default: stop after 600 BEACONs

--resume_ap_attacks=<digit> : resume attacks against ACCESS POINTs after <n> BEACONs received

default: 864000 BEACONs

--disable_deauthentication : do not send deauthentication or disassociation frames

affected: conntected clients

--silent : do not transmit!

expect possible packet loss

--eapoltimeout=<digit> : set EAPOL TIMEOUT (microseconds)

default: 20000 usec

--bpfc=<file> : input Berkeley Packet Filter (BPF) code

set hcxdumptool monitormode
$ hcxumptool -m <interface>
$ tcpdump -i <interface> not wlan addr1 11:22:33:44:55:66 and not wlan addr2 11:22:33:44:55:66 -ddd > protect.bpf recommended to protect own devices
$ tcpdump -i <interface> wlan addr1 11:22:33:44:55:66 or wlan addr2 11:22:33:44:55:66 -ddd > attack.bpf not recommended, because important pre-authentication frames will be lost due to MAC randomization of the CLIENTs
$ hcxumptool -i <interface> --bpfc=attack.bpf ...
see man pcap-filter for a list of all filter options

--filterlist_ap=<file> : ACCESS POINT MAC filter list

maximum entries 256 run first --do_rcascan to retrieve information about the target

--filterlist_client=<file> : CLIENT MAC filter list

maximum entries 256 due to MAC randomization of the CLIENT, it does not always work!

--filtermode=<digit> : mode for filter list

0: ignore filter list (default) 1: use filter list as protection list
2: use filter list as target list
not recommended, because important pre-authentication frames will be lost due to MAC randomization of the CLIENTs

--weakcandidate=<password> : use this pre shared key (8...63 characters) for weak candidate alert

default:

--mac_ap : use this MAC as ACCESS POINT MAC instead of a randomized one

format: 112233445566

--mac_client : use this MAC as CLIENT MAC instead of a randomized one

format: 112233445566

--essidlist=<file> : transmit beacons from this ESSID list

maximum entries: 256 ESSIDs

--active_beacon : transmit beacon once every 200000 usec

affected: ap-less

--flood_beacon : transmit beacon on every received beacon

affected: ap-less

--infinity : prevent that a CLIENT can establish a connection to an assigned ACCESS POINT

affected: ACCESS POINTs and CLIENTs

--use_gps_device=<device> : use GPS device

/dev/ttyACM0, /dev/ttyUSB0, ...
NMEA 0183 $GPGGA $GPGGA

--use_gpsd : use GPSD device

NMEA 0183 $GPGGA, $GPRMC

--nmea=<file> : save track to file

to convert it to gpx, use GPSBabel: gpsbabel -i nmea -f hcxdumptool.nmea -o gpx -F file.gpx to display the track, open file.gpx with viking

--gpio_button=<digit> : Raspberry Pi GPIO pin number of button (2...27)

default = GPIO not in use

--gpio_statusled=<digit> : Raspberry Pi GPIO number of status LED (2...27)

default = GPIO not in use

--tot=<digit> : enable timeout timer in minutes (minimum = 2 minutes)

: hcxdumptool will terminate if tot reached (EXIT code = 2)

--error_max=<digit> : terminate hcxdumptool if error maximum reached

default: 100 errors

--reboot : once hcxdumptool terminated, reboot system --poweroff : once hcxdumptool terminated, power off system --enable_status=<digit> : enable real-time display (waterfall)

only once at the first occurrence due to MAC randomization of CLIENTs bitmask:
0: no status (default)
1: EAP and EAPOL 2: ASSOCIATION and REASSOCIATION 4: AUTHENTICATION 8: BEACON and PROBERESPONSE
16: ROGUE AP
32: GPS (once a minute) 64: internal status (once a minute)
128: run as server
256: run as client
example: show everything but don't run as server or client (1+2+4+8+16 = 31)
show only EAP and EAPOL and ASSOCIATION and REASSOCIATION (1+2 = 3)

--server_port=<digit> : define port for server status output (1...65535)

: default IP: 224.0.0.255
: default port: 60123

--client_port=<digit> : define port for client status read (1...65535)

: default IP: 224.0.0.255
: default port: 60123

--check_driver : run several tests to determine that driver support all(!) required ioctl() system calls --check_injection : run packet injection test to determine that driver support full packet injection

otherwise hcxdumptool will not work as expected

--help : show this help --version : show version

Run hcxdumptool -i interface --do_rcascan for at least 30 seconds, to get information about the target! Do not edit, merge or convert this pcapng files, because it will remove optional comment fields! It is much better to run gzip to compress the files. Wireshark, tshark and hcxpcapngtool will understand this. If hcxdumptool captured your password from WiFi traffic, you should check all your devices immediately! If you use GPS, make sure GPS device is inserted and has a GPS FIX, before you start hcxdumptool!

SEE ALSO

The full documentation for hcxdumptool is maintained as a Texinfo manual. If the info and hcxdumptool programs are properly installed at your site, the command

info hcxdumptool

should give you access to the complete manual.

May 2020 hcxdumptool 6.0.5 (C) 2020 ZeroBeat