This commit is contained in:
iceman1001 2024-09-06 22:59:23 +02:00
parent 72900d1bf9
commit e50459b2c5
6 changed files with 45 additions and 42 deletions

View file

@ -6486,13 +6486,13 @@ int CmdHFMFNDEFRead(const char *Cmd) {
// if given a filename, save it // if given a filename, save it
if (fnlen) { if (fnlen) {
// get total NDEF length before save. If fails, we save it all // get total NDEF length before save. If fails, we save it all
size_t n = 0; size_t n = 0;
if (NDEFGetTotalLength(data, datalen, &n) != PM3_SUCCESS) { if (NDEFGetTotalLength(data, datalen, &n) != PM3_SUCCESS) {
n = datalen; n = datalen;
} }
pm3_save_dump(filename, data, n, jsfNDEF); pm3_save_dump(filename, data, n, jsfNDEF);
} }
if (verbose == false) { if (verbose == false) {
@ -7670,10 +7670,10 @@ static int CmdHF14AMfWipe(const char *Cmd) {
if (WaitForResponseTimeout(CMD_ACK, &resp, 1500)) { if (WaitForResponseTimeout(CMD_ACK, &resp, 1500)) {
int8_t isOK = resp.oldarg[0]; int8_t isOK = resp.oldarg[0];
if (isOK == 1) { if (isOK == 1) {
PrintAndLogEx(NORMAL, "- key %c ( " _GREEN_("ok") " )", (kt== MF_KEY_A) ? 'A' : 'B'); PrintAndLogEx(NORMAL, "- key %c ( " _GREEN_("ok") " )", (kt == MF_KEY_A) ? 'A' : 'B');
break; break;
} else { } else {
PrintAndLogEx(NORMAL, "- key %c ( " _RED_("fail") " )", (kt== MF_KEY_A) ? 'A' : 'B'); PrintAndLogEx(NORMAL, "- key %c ( " _RED_("fail") " )", (kt == MF_KEY_A) ? 'A' : 'B');
} }
} else { } else {
PrintAndLogEx(WARNING, "Command execute timeout"); PrintAndLogEx(WARNING, "Command execute timeout");

View file

@ -4466,9 +4466,10 @@
"options": [ "options": [
"-h, --help This help", "-h, --help This help",
"--blk <dec> Target block", "--blk <dec> Target block",
"-b Target key B instead of default key A" "-b Target key B instead of default key A",
"-c <dec> Target Auth 6x"
], ],
"usage": "hf mf darkside [-hb] [--blk <dec> ]" "usage": "hf mf darkside [-hb] [--blk <dec> ] [-c <dec>]"
}, },
"hf mf decrypt": { "hf mf decrypt": {
"command": "hf mf decrypt", "command": "hf mf decrypt",
@ -12885,6 +12886,6 @@
"metadata": { "metadata": {
"commands_extracted": 743, "commands_extracted": 743,
"extracted_by": "PM3Help2JSON v1.00", "extracted_by": "PM3Help2JSON v1.00",
"extracted_on": "2024-09-05T16:36:25" "extracted_on": "2024-09-06T20:59:05"
} }
} }

View file

@ -480,8 +480,10 @@ int main(int argc, char *argv[]) {
printf("\n" _RED_("!!!") " failed to find a key\n\n"); printf("\n" _RED_("!!!") " failed to find a key\n\n");
} else { } else {
printf("Found match:\n"); printf("Found match:\n");
printf("rngmatch.... "); print_hex(g_rngmatch, sizeof(g_rngmatch)); printf("rngmatch.... ");
printf("rngstate.... "); print_hex(g_rngstate, sizeof(g_rngstate)); print_hex(g_rngmatch, sizeof(g_rngmatch));
printf("rngstate.... ");
print_hex(g_rngstate, sizeof(g_rngstate));
printf("bitoffset... %d\n", g_bitoffset); printf("bitoffset... %d\n", g_bitoffset);
Hitag_State hstate; Hitag_State hstate;

View file

@ -439,17 +439,17 @@ int main(int argc, char *const argv[]) {
} }
printf("uid=%08x nt_enc=%08x nt_par_err=%i%i%i%i nt_par_enc=%i%i%i%i %u/%i: %u\n" printf("uid=%08x nt_enc=%08x nt_par_err=%i%i%i%i nt_par_enc=%i%i%i%i %u/%i: %u\n"
, authuid , authuid
, nt_enc , nt_enc
, nt_par_err_arr[0], nt_par_err_arr[1], nt_par_err_arr[2], nt_par_err_arr[3] , nt_par_err_arr[0], nt_par_err_arr[1], nt_par_err_arr[2], nt_par_err_arr[3]
, (nt_par_enc >> 3) & 1 , (nt_par_enc >> 3) & 1
, (nt_par_enc >> 2) & 1 , (nt_par_enc >> 2) & 1
, (nt_par_enc >> 1) & 1 , (nt_par_enc >> 1) & 1
, nt_par_enc & 1 , nt_par_enc & 1
, NKL.nr_nonces + 1 , NKL.nr_nonces + 1
, (argc - 1) / 3 , (argc - 1) / 3
, j , j
); );
pNtData->authuid = authuid; pNtData->authuid = authuid;
pNtData->sizeNK = j; pNtData->sizeNK = j;

View file

@ -141,19 +141,19 @@ int main(int argc, char *const argv[]) {
((nt_par_err_arr[3] ^ oddparity8((nt_enc >> 0) & 0xFF)) << 0); ((nt_par_err_arr[3] ^ oddparity8((nt_enc >> 0) & 0xFF)) << 0);
printf("uid=%08x nt=%08x nt_enc=%08x nt_par_err=%u%u%u%u nt_par_enc=%u%u%u%u ks1=%08x\n" printf("uid=%08x nt=%08x nt_enc=%08x nt_par_err=%u%u%u%u nt_par_enc=%u%u%u%u ks1=%08x\n"
, authuid , authuid
, nt , nt
, nt_enc , nt_enc
, nt_par_err_arr[0] , nt_par_err_arr[0]
, nt_par_err_arr[1] , nt_par_err_arr[1]
, nt_par_err_arr[2] , nt_par_err_arr[2]
, nt_par_err_arr[3] , nt_par_err_arr[3]
, (nt_par_enc >> 3) & 1 , (nt_par_enc >> 3) & 1
, (nt_par_enc >> 2) & 1 , (nt_par_enc >> 2) & 1
, (nt_par_enc >> 1) & 1 , (nt_par_enc >> 1) & 1
, nt_par_enc & 1 , nt_par_enc & 1
, nt ^ nt_enc , nt ^ nt_enc
); );
printf("Finding key candidates...\n"); printf("Finding key candidates...\n");