手把手教你使用MCT
本文是MiFra经典工具使用教程的下篇,如果没有阅读上篇的请先移步阅读上篇,这样可以更好的理解下篇的内容。
下载
MCT:/i83c43a密码:e5v4
M1+卡控制字节生成工具: /i84quve密码:erdo
1.思路提点
1.首先,你要了解 M1 卡的扇区结构是什么,块是什么?特别要注意每个扇区最后一个块的结构,这些块的数据分别负责什么功能?这样你就知道这个工具的各个功能有什么用了。
2.使用这个工具的主要阻碍就是卡的密钥我们不知道,如果用默认的密钥进行解密基本上就直接卡死了,因为会用穷举法,把它自带默认字典里面的密钥一个一个拿来尝试,然后手机就一直卡住不动就好像卡死了,如果默认字典里的密钥没有匹配的(基本不可能有正确的密钥),那么就啥也读不出来!那如何才能拿到正确的密钥呢?这时就要用一些专业的工具来破解出这些扇区的密钥了,例如 PM3 , ACR122U等等的一些工具。
3.然后在密钥编辑里面,输入破解出的密钥,各个扇区密钥的顺序随意,但是一定要正确。
4.然后读标签,写标签时,选中你自己输入的秘钥文件,就可以操作卡里的数据了,但是这些操作依然要依赖于你对卡结构的了解。
2.M1卡的必知概念
M1卡我们能够操作的只有数据区的数据,所以这里只讲数据区的一些概念。
解析:
M1卡由16个扇区组成,每个扇区在有4个数据块组成,按照顺序将数据块进行编码,其地址编码为0~63。
每个扇区由四个区块组成,块0 ~ 块2是数据块,也就是存放数据用的,可以在每次消费充值的时候,记录相关的数据, 可以进行数值初始化、加、减、读操作。 。块3,也就是最后一个块是控制块,存放着密钥A,B和控制位。我们要破解的就是密钥A,B。但是对控制位的意思也要了解, 这里要注意,控制位的写入要慎重,特别是写入锁死功能,对于M1卡来说,控制位的写入锁死一旦写入,这个扇区就不可能再被修改!!! 。
控制位是以正反形式存储于控制字节中,确定了数字块的访问权限。例如,进行加值操作须验证Key B,进行减值操作须验证Key A。 控制位的含义直接看数字啥也看不出,所以给大家找到了M1卡控制字节生成工具,方便理解控制位的含义。
3.如何使用MCT
1.首先安装MCT。
2.建立新的密钥文件,输入每个扇区的密钥A和密钥B,密钥顺序随意但是一定要全,一个密钥一行。
3.选择新建的密钥文件对卡进行读写,读取出卡的数据可以保存到手机中。写卡时候,选择数据文件,对目标扇区进行写入。这里要注意标准M1卡的首扇区,0区块是锁死的,无法写入。在写控制位时也要注意,如果是标准的M1卡,控制位一旦锁死,那么这个扇区的区块3就无法再写入了,控制位的数值可以用本文提供的控制字节生成工具来制定。
4.要注意的是写入厂商块,这里只能对CUID芯片类型的卡进行厂商块写入。
参考文章:
关于校园一卡通的便携化及Mifare M1卡的内部结构: /C1664510416/article/details/95066160
便携式校园卡DIY方案(超薄型): /C1664510416/article/details/93408450
Mifare卡的算法破解和应用:/view/bdf1287da417866fb84a8ee1.html
记一次洗衣卡破解:/qq_40448816/article/details/84071407
手机NFC模拟M1门禁卡、写CUID白卡的一些研究记录:/nfser_burn7/article/details/88565287
M1卡区块控制位详解:/zhupengfei/article/details/80174596