From 6da624c5801bb642ffa9261fcb0f0c4addc3e21d Mon Sep 17 00:00:00 2001 From: Sebastian Meyer-Bohr Date: Mon, 7 Oct 2024 11:44:27 +0200 Subject: [PATCH] Fix SimulateIso14443aInit usage Added NULL as `uint8_t *iRats` to all invokations in armsrc/Standalone. Not sure if that is the right thing to do: The actual code checks for the presence of a special flag, but does not contain a check for NULL. IMHO adding a NULL check in `iso14443a.c` line 1259 wouldn't hurt, and could catch programming errors (flag set by accident, but NULL passed). Maybe @evildaemond wants to verify whether my fix does the right thing or if I missed something (they added the iRATs to `iso14443a.h` with 56324b16b2). --- CHANGELOG.md | 2 +- armsrc/Standalone/hf_cardhopper.c | 2 +- armsrc/Standalone/hf_msdsal.c | 2 +- armsrc/Standalone/hf_reblay.c | 2 +- armsrc/Standalone/hf_tcprst.c | 4 ++-- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 46be984a6..5843bbcac 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,7 +32,7 @@ This project uses the changelog in accordance with [keepchangelog](http://keepac - Added detection of a magic NTAG 215 (@iceman1001) - Fixed hardnested on AVX512F #2410 (@xianglin1998) - Added `hf 14a aidsim` - simulates a PICC (like `14a sim`), and allows you to respond to specific AIDs and getData responses (@evildaemond) -- Fixed incorrect argument count for `SimulateIso14443aTag` in `hf_young.c`, `hf_aveful.c` and `hf_craftbyte.c`. +- Fixed arguments for `SimulateIso14443aTag` and `SimulateIso14443aInit` in `hf_young.c`, `hf_aveful.c`, `hf_msdsal.c`, `hf_cardhopper.c`, `hf_reblay.c`, `hf_tcprst.c` and `hf_craftbyte.c` (@archi) ## [Backdoor.4.18994][2024-09-10] - Changed flashing messages to be less scary (@iceman1001) diff --git a/armsrc/Standalone/hf_cardhopper.c b/armsrc/Standalone/hf_cardhopper.c index f36b5bb61..68088a72c 100644 --- a/armsrc/Standalone/hf_cardhopper.c +++ b/armsrc/Standalone/hf_cardhopper.c @@ -216,7 +216,7 @@ static void become_card(void) { uint32_t counters[3] = { 0 }; uint8_t tearings[3] = { 0xbd, 0xbd, 0xbd }; uint8_t pages; - SimulateIso14443aInit(tagType, flags, data, &canned, &cuid, counters, tearings, &pages); + SimulateIso14443aInit(tagType, flags, data, NULL, &canned, &cuid, counters, tearings, &pages); DbpString(_CYAN_("[@]") " Setup done - entering emulation loop"); int fromReaderLen; diff --git a/armsrc/Standalone/hf_msdsal.c b/armsrc/Standalone/hf_msdsal.c index 74044a1c6..93848b986 100644 --- a/armsrc/Standalone/hf_msdsal.c +++ b/armsrc/Standalone/hf_msdsal.c @@ -378,7 +378,7 @@ void RunMod(void) { BigBuf_free_keep_EM(); // tag type: 11 = ISO/IEC 14443-4 - javacard (JCOP) - if (SimulateIso14443aInit(11, flags, data, &responses, &cuid, NULL, NULL, NULL) == false) { + if (SimulateIso14443aInit(11, flags, data, NULL, &responses, &cuid, NULL, NULL, NULL) == false) { BigBuf_free_keep_EM(); reply_ng(CMD_HF_MIFARE_SIMULATE, PM3_EINIT, NULL, 0); DbpString(_RED_("Error initializing the emulation process!")); diff --git a/armsrc/Standalone/hf_reblay.c b/armsrc/Standalone/hf_reblay.c index 83a9c37a5..0655e1d92 100644 --- a/armsrc/Standalone/hf_reblay.c +++ b/armsrc/Standalone/hf_reblay.c @@ -267,7 +267,7 @@ void RunMod() { BigBuf_free_keep_EM(); // 4 = ISO/IEC 14443-4 - javacard (JCOP) - if (SimulateIso14443aInit(4, flags, data, &responses, &cuid, NULL, NULL, NULL) == false) { + if (SimulateIso14443aInit(4, flags, data, NULL, &responses, &cuid, NULL, NULL, NULL) == false) { BigBuf_free_keep_EM(); reply_ng(CMD_HF_MIFARE_SIMULATE, PM3_EINIT, NULL, 0); DbpString(_RED_("Error initializing the emulation process!")); diff --git a/armsrc/Standalone/hf_tcprst.c b/armsrc/Standalone/hf_tcprst.c index 9b90c1348..c07bd1de8 100644 --- a/armsrc/Standalone/hf_tcprst.c +++ b/armsrc/Standalone/hf_tcprst.c @@ -192,7 +192,7 @@ void RunMod(void) { memcpy(data, stuid, sizeof(stuid)); - if (SimulateIso14443aInit(tagType, flags, data, &responses, &cuid, counters, tearings, &pages) == false) { + if (SimulateIso14443aInit(tagType, flags, data, NULL, &responses, &cuid, counters, tearings, &pages) == false) { BigBuf_free_keep_EM(); reply_ng(CMD_HF_MIFARE_SIMULATE, PM3_EINIT, NULL, 0); DbpString(_YELLOW_("!!") "Error initializing the simulation process!"); @@ -370,7 +370,7 @@ void RunMod(void) { memcpy(data, stuid, sizeof(stuid)); - if (SimulateIso14443aInit(tagType, flags, data, &responses, &cuid, counters, tearings, &pages) == false) { + if (SimulateIso14443aInit(tagType, flags, data, NULL, &responses, &cuid, counters, tearings, &pages) == false) { BigBuf_free_keep_EM(); reply_ng(CMD_HF_MIFARE_SIMULATE, PM3_EINIT, NULL, 0); DbpString(_YELLOW_("!!") "Error initializing the simulation process!");