MIFARE RFIDs

0

前一篇只是对一些pm3常用命令的介绍,而且也没有很具体,只是记录了一些我测试的过程。

0x01

小区门禁卡大概算是入门级的难度吧,就是那种蓝色的tag。

先用hf mf chk * ?默认密钥测试了一下,大部分都是FFFFFFFFFFFF,但section 6好像不是。

想到一个很久远的nested利用方法,hf mf nested 1 0 A FFFFFFFFFFFF,跑了一下,确实可以利用,于是得到section 6的A密钥a1a2a3b0b15f

重新执行下前一条命令,加上d参数保存到dumpkeys.bin
hf mf nested 1 0 A FFFFFFFFFFFF d

用这个dumpkeys直接解出所有区块数据:hf mf dump

这个dump出的数据默认保存为dumpdata.bin,但不能直接写入新卡片,需要用脚本转换下格式:script run dumptoemul.lua

最后换上空白卡来写入:hf mf eload 1 2003079520030795是转换格式后的文件名,后缀是eml

0x02

由此我个人推测,小区门禁卡大概是把数据保存在6扇区,毕竟其他15个扇区都用的默认密钥。对uid也没有验证,所以是很容易复制的,复制成本也很低,用不着proxmark3这种工具,稍微好一点acr122u就肯定可以做到了。

然后简单介绍下校园一卡通的破解思路。

0x03

nested,darkside这两种攻击方法都是不可行的,只可以通过sniff来获取密钥,原理不复杂,实际操作起来可能需要一个队友协助一下。

没人的时候去读卡机那里嗅探几秒,拿到的数据简单分析下,好像pm3里有一条hf mf decrypt的命令,我还没有试过,我是用一个crapto1的计算器来手动解的扇区密钥。

因为每次嗅探出的密钥都不全,我也没有做完这个工作。

假设关键的扇区已经被解出了,下一步就是根据区块数据的变化来推测存储数据的方式和结构,这个思路用来破解水卡功能。

另外一个可以直接利用的是uid,能通过所有门禁(已测试),即门禁系统只对所有允许进入的卡片的uid做了验证。

Leave A Reply

苏ICP备16066660号-1

苏公网安备 32011502010432号