Skip to content

Commit 16646ea

Browse files
author
=
committed
do not flood waterfall display (rds=4) on detected PMKIDs and EAPOL MESSAGEPAIRs
1 parent badfd51 commit 16646ea

1 file changed

Lines changed: 40 additions & 27 deletions

File tree

hcxdumptool.c

Lines changed: 40 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1207,13 +1207,17 @@ for(i = 0; i < APLIST_MAX - 1; i++)
12071207
(aplist + i)->apdata->m1m2m3 = '+';
12081208
if(rds == 4)
12091209
{
1210-
tvlast = (aplist +i)->tsakt / 1000000000ULL;
1211-
strftime(timestring, TIMESTRING_LEN, "%H:%M:%S", localtime(&tvlast));
1212-
fprintf(stdout, "%s M123 %02x%02x%02x%02x%02x%02x %02x%02x%02x%02x%02x%02x %.*s\n", timestring,
1213-
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->maca[1], (aplist + i)->apdata->maca[2], (aplist + i)->apdata->maca[3], (aplist + i)->apdata->maca[4], (aplist + i)->apdata->maca[5],
1214-
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->macc[1], (aplist + i)->apdata->macc[2], (aplist + i)->apdata->macc[3], (aplist + i)->apdata->macc[4], (aplist + i)->apdata->macc[5],
1215-
(aplist + i)->apdata->essidlen, (aplist + i)->apdata->essid);
1210+
if((aplist + i)->apdata->m1m2m3 != '+')
1211+
{
1212+
tvlast = (aplist +i)->tsakt / 1000000000ULL;
1213+
strftime(timestring, TIMESTRING_LEN, "%H:%M:%S", localtime(&tvlast));
1214+
fprintf(stdout, "%s M123 %02x%02x%02x%02x%02x%02x %02x%02x%02x%02x%02x%02x %.*s\n", timestring,
1215+
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->maca[1], (aplist + i)->apdata->maca[2], (aplist + i)->apdata->maca[3], (aplist + i)->apdata->maca[4], (aplist + i)->apdata->maca[5],
1216+
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->macc[1], (aplist + i)->apdata->macc[2], (aplist + i)->apdata->macc[3], (aplist + i)->apdata->macc[4], (aplist + i)->apdata->macc[5],
1217+
(aplist + i)->apdata->essidlen, (aplist + i)->apdata->essid);
1218+
}
12161219
}
1220+
(aplist + i)->apdata->m1m2m3 = '+';
12171221
writeepb();
12181222
return;
12191223
}
@@ -1240,16 +1244,19 @@ if(replaycountrg == replaycount)
12401244
if(memcmp((calist + i)->cadata->mic, wpakey->keymic, KEYMIC_MAX) == 0) return;
12411245
memcpy((calist + i)->cadata->mic, wpakey->keymic, KEYMIC_MAX);
12421246
(calist + i)->cadata->clientcount -= 1;
1243-
(calist + i)->cadata->m2 = '+';
12441247
if(rds == 4)
12451248
{
1246-
tvlast = (calist +i)->tsakt / 1000000000ULL;
1247-
strftime(timestring, TIMESTRING_LEN, "%H:%M:%S", localtime(&tvlast));
1248-
fprintf(stdout, "%s M12ROGUE %02x%02x%02x%02x%02x%02x %02x%02x%02x%02x%02x%02x %.*s\n", timestring,
1249-
(calist + i)->cadata->maca[0], (calist + i)->cadata->maca[1], (calist + i)->cadata->maca[2], (calist + i)->cadata->maca[3], (calist + i)->cadata->maca[4], (calist + i)->cadata->maca[5],
1250-
(calist + i)->cadata->maca[0], (calist + i)->cadata->macc[1], (calist + i)->cadata->macc[2], (calist + i)->cadata->macc[3], (calist + i)->cadata->macc[4], (calist + i)->cadata->macc[5],
1251-
(calist + i)->cadata->essidlen, (calist + i)->cadata->essid);
1249+
if((calist + i)->cadata->m2 != '+')
1250+
{
1251+
tvlast = (calist +i)->tsakt / 1000000000ULL;
1252+
strftime(timestring, TIMESTRING_LEN, "%H:%M:%S", localtime(&tvlast));
1253+
fprintf(stdout, "%s M12ROGUE %02x%02x%02x%02x%02x%02x %02x%02x%02x%02x%02x%02x %.*s\n", timestring,
1254+
(calist + i)->cadata->maca[0], (calist + i)->cadata->maca[1], (calist + i)->cadata->maca[2], (calist + i)->cadata->maca[3], (calist + i)->cadata->maca[4], (calist + i)->cadata->maca[5],
1255+
(calist + i)->cadata->maca[0], (calist + i)->cadata->macc[1], (calist + i)->cadata->macc[2], (calist + i)->cadata->macc[3], (calist + i)->cadata->macc[4], (calist + i)->cadata->macc[5],
1256+
(calist + i)->cadata->essidlen, (calist + i)->cadata->essid);
1257+
}
12521258
}
1259+
(calist + i)->cadata->m2 = '+';
12531260
(calist + i)->cadata->channel = (scanlist + scanlistindex)->channel;
12541261
wanteventflag |= exiteapolm2rgflag;
12551262
if((calist + i)->cadata->akm == RSNPSK) writeepbm1wpa2();
@@ -1272,16 +1279,19 @@ for(i = 0; i < APLIST_MAX - 1; i++)
12721279
(aplist + i)->apdata->replaycount2 = __hcx64be(wpakey->replaycount);
12731280
if(((aplist + i)->apdata->replaycount1) != (aplist + i)->apdata->replaycount2) break;
12741281
if(((aplist + i)->apdata->tsm2 - (aplist + i)->apdata->tsm1) > TSEAPOL1) break;
1275-
(aplist + i)->apdata->m1m2 = '+';
12761282
if(rds == 4)
12771283
{
1278-
tvlast = (aplist +i)->tsakt / 1000000000ULL;
1279-
strftime(timestring, TIMESTRING_LEN, "%H:%M:%S", localtime(&tvlast));
1280-
fprintf(stdout, "%s M12 %02x%02x%02x%02x%02x%02x %02x%02x%02x%02x%02x%02x %.*s\n", timestring,
1281-
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->maca[1], (aplist + i)->apdata->maca[2], (aplist + i)->apdata->maca[3], (aplist + i)->apdata->maca[4], (aplist + i)->apdata->maca[5],
1282-
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->macc[1], (aplist + i)->apdata->macc[2], (aplist + i)->apdata->macc[3], (aplist + i)->apdata->macc[4], (aplist + i)->apdata->macc[5],
1283-
(aplist + i)->apdata->essidlen, (aplist + i)->apdata->essid);
1284+
if((aplist + i)->apdata->m1m2 != '+')
1285+
{
1286+
tvlast = (aplist +i)->tsakt / 1000000000ULL;
1287+
strftime(timestring, TIMESTRING_LEN, "%H:%M:%S", localtime(&tvlast));
1288+
fprintf(stdout, "%s M12 %02x%02x%02x%02x%02x%02x %02x%02x%02x%02x%02x%02x %.*s\n", timestring,
1289+
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->maca[1], (aplist + i)->apdata->maca[2], (aplist + i)->apdata->maca[3], (aplist + i)->apdata->maca[4], (aplist + i)->apdata->maca[5],
1290+
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->macc[1], (aplist + i)->apdata->macc[2], (aplist + i)->apdata->macc[3], (aplist + i)->apdata->macc[4], (aplist + i)->apdata->macc[5],
1291+
(aplist + i)->apdata->essidlen, (aplist + i)->apdata->essid);
1292+
}
12841293
}
1294+
(aplist + i)->apdata->m1m2 = '+';
12851295
wanteventflag |= exiteapolm2flag;
12861296
writeepb();
12871297
return;
@@ -1327,16 +1337,19 @@ for(i = 0; i < APLIST_MAX - 1; i++)
13271337
{
13281338
if((aplist + i)->apdata->essidlen != 0)
13291339
{
1330-
(aplist + i)->apdata->pmkid = '+';
13311340
if(rds == 4)
13321341
{
1333-
tvlast = (aplist +i)->tsakt / 1000000000ULL;
1334-
strftime(timestring, TIMESTRING_LEN, "%H:%M:%S", localtime(&tvlast));
1335-
fprintf(stdout, "%s PMKID %02x%02x%02x%02x%02x%02x %02x%02x%02x%02x%02x%02x %.*s\n", timestring,
1336-
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->maca[1], (aplist + i)->apdata->maca[2], (aplist + i)->apdata->maca[3], (aplist + i)->apdata->maca[4], (aplist + i)->apdata->maca[5],
1337-
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->macc[1], (aplist + i)->apdata->macc[2], (aplist + i)->apdata->macc[3], (aplist + i)->apdata->macc[4], (aplist + i)->apdata->macc[5],
1338-
(aplist + i)->apdata->essidlen, (aplist + i)->apdata->essid);
1342+
if((aplist + i)->apdata->pmkid != '+')
1343+
{
1344+
tvlast = (aplist +i)->tsakt / 1000000000ULL;
1345+
strftime(timestring, TIMESTRING_LEN, "%H:%M:%S", localtime(&tvlast));
1346+
fprintf(stdout, "%s PMKID %02x%02x%02x%02x%02x%02x %02x%02x%02x%02x%02x%02x %.*s\n", timestring,
1347+
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->maca[1], (aplist + i)->apdata->maca[2], (aplist + i)->apdata->maca[3], (aplist + i)->apdata->maca[4], (aplist + i)->apdata->maca[5],
1348+
(aplist + i)->apdata->maca[0], (aplist + i)->apdata->macc[1], (aplist + i)->apdata->macc[2], (aplist + i)->apdata->macc[3], (aplist + i)->apdata->macc[4], (aplist + i)->apdata->macc[5],
1349+
(aplist + i)->apdata->essidlen, (aplist + i)->apdata->essid);
1350+
}
13391351
}
1352+
(aplist + i)->apdata->pmkid = '+';
13401353
}
13411354
memcpy((aplist + i)->apdata->rsnpmkid, pmkid->pmkid, PMKID_MAX);
13421355
wanteventflag |= exiteapolpmkidflag;

0 commit comments

Comments
 (0)