Skip to content

Commit c604210

Browse files
author
=
committed
added new option to rcascan to show only APs in range (all channels) - see -h and changelog
1 parent bcc256b commit c604210

2 files changed

Lines changed: 54 additions & 2 deletions

File tree

changelog

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,38 @@
1-
20.01.2026
1+
30.01.2026
2+
==========
3+
hcxdumptool: added new option to rcascan to show only APs in range (all channels):
4+
--rds=<digit> : enable real time display
5+
attack mode:
6+
0 = off(default)
7+
1 = show APs on current channel, show CLIENTs (M1M2ROGUE)
8+
2 = show all APs (M1M2, M1M2M3 or PMKID), show CLIENTs (M1M2ROGUE)
9+
3 = show all APs, show CLIENTs (M1M2ROGUE)
10+
4 = show waterfall (PMKID & EAPOL)
11+
TIME TYPE MAC_AP MAC_CLIENT ESSID
12+
columns:
13+
E = encryption (e)ncrypted / (o)pen
14+
A = AKM (p)re-shared key
15+
1 = received M1 (+)
16+
2 = received M1M2 (+)
17+
3 = received M1M2M3 (+)
18+
P = received PMKID (+)
19+
rcascan mode
20+
0 = show APs on current channel sorted by BEACON timestamp
21+
1 = show APs on current channel sorted by PROBERESPONSE timestamp
22+
2 = show APs on current channel sorted by RSSI
23+
3 = show APs of all channels sorted by RSSI
24+
4 = show only APs in range on current channel sorted by PROBERESPONSE timestamp
25+
requires --rcascan=active
26+
5 = show only APs of all channels sorted by PROBERESPONSE timestamp
27+
requires --rcascan=active
28+
29+
30+
29.01.2026
231
==========
332
hcxdumptool: added PROBEREQUEST counter
433
fixed PROBERESPONSE counter
534
added information why hcxdumptool can't arm the interface
6-
added new option to rcascan to show only APs in range:
35+
added new option to rcascan to show only APs in range (current channel):
736
--rds=<digit> : enable real time display
837
attack mode:
938
0 = off(default)

hcxdumptool.c

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -628,6 +628,26 @@ else if(rds == 4)
628628
}
629629
}
630630
}
631+
else if(rds == 5)
632+
{
633+
qsort(aplist, APLIST_MAX, APLIST_SIZE, sort_aplist_by_tsresponse);
634+
for(i = 0; i < APLIST_MAX - 1; i++)
635+
{
636+
if((aplist + i)->tsakt == 0) break;
637+
tvlast = (aplist +i)->tsakt / 1000000000ULL;
638+
strftime(timestring, TIMESTRING_LEN, "%H:%M:%S", localtime(&tvlast));
639+
if((aplist + i)->apdata->tsresponse > 0)
640+
{
641+
tvlast = (aplist + i)->apdata->tsresponse / 1000000000ULL;
642+
strftime(timestringresponse, TIMESTRING_LEN, "%H:%M:%S", localtime(&tvlast));
643+
fprintf(stdout, "%3u|%s|%s|%4d|%02x%02x%02x%02x%02x%02x|%.*s\n",
644+
(aplist + i)->apdata->channel, timestring, timestringresponse, (s8)(aplist + i)->apdata->rtrssi,
645+
(aplist + i)->apdata->maca[00], (aplist + i)->apdata->maca[01], (aplist + i)->apdata->maca[02],
646+
(aplist + i)->apdata->maca[03], (aplist + i)->apdata->maca[04], (aplist + i)->apdata->maca[05],
647+
(aplist + i)->apdata->essidlen, (aplist + i)->apdata->essid);
648+
}
649+
}
650+
}
631651
qsort(aplist, APLIST_MAX, APLIST_SIZE, sort_aplist_by_tsakt);
632652
return;
633653
}
@@ -5373,6 +5393,9 @@ fprintf(stdout, "--ftc : enable fake time clock\n"
53735393
" 2 = show APs on current channel sorted by RSSI\n"
53745394
" 3 = show APs of all channels sorted by RSSI\n"
53755395
" 4 = show only APs in range on current channel sorted by PROBERESPONSE timestamp\n"
5396+
" requires --rcascan=active\n"
5397+
" 5 = show only APs of all channels sorted by PROBERESPONSE timestamp\n"
5398+
" requires --rcascan=active\n"
53765399
"--rdt : disable TIOCGWINSZ for real time displays\n"
53775400
"--rcascan=<mode> : radio channel assessment scan\n"
53785401
" (a)ctive = active scan (transmit undirected PROBEREQUEST frames)\n"

0 commit comments

Comments
 (0)