From 0190a161ba1cb292b894dce66fff15dcb1ed08c4 Mon Sep 17 00:00:00 2001 From: AloneLiberty <111039319+AloneLiberty@users.noreply.github.com> Date: Thu, 9 Mar 2023 20:50:25 +0300 Subject: [PATCH] NFC: Fix 0 block write possibility in Mifare Classic emulation (#2474) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: あく --- lib/nfc/protocols/mifare_classic.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/nfc/protocols/mifare_classic.c b/lib/nfc/protocols/mifare_classic.c index a8a90889..71242871 100644 --- a/lib/nfc/protocols/mifare_classic.c +++ b/lib/nfc/protocols/mifare_classic.c @@ -291,6 +291,10 @@ bool mf_classic_is_allowed_access_data_block( uint8_t* sector_trailer = data->block[mf_classic_get_sector_trailer_num_by_block(block_num)].value; + if(block_num == 0 && action == MfClassicActionDataWrite) { + return false; + } + uint8_t sector_block; if(block_num <= 128) { sector_block = block_num & 0x03;