level 10


验证漏洞可利用的程序是mfoc,mfoc在Windows上的版本叫mfocgui,但mfocgui对于刚刚接触RFID安全的同学来说有点麻烦,所以这次直接采用M1卡服务程序(其实就是简化版的mfocgui)。
打开之后,程序界面非常简洁,只有一个按钮,就是开始破解。在读卡器列表那我已经见到我的ACR122U了,所以直接按开始破解就可以。
然后接下来就等待程序自己破解密钥。
破解成功后根目录就生成了这张卡的dump文件了,大小是1kb,整张卡就被读取出来了。

fixdump是命令行操作,并且必须安装了.NET Farmwork 4运行库才可以使用,为了方便命令操作,我们将dump文件拷贝到fixdump的目录里,打开cmd进行修复。命令很简单,直接“fixdump ”就可以,生成的文件会直接覆盖源文件。
修复完成后,用UltraEdit或者WinHex之类的十六进制编辑器打开,就可以看到dump文件的数据了。
要掌握规矩,肯定要有多组数据对比,找同学借了两张正常未经修改的水卡进行读卡,结果分别如下。


纳闷的发现除了我的卡之外,其他卡的1扇区都是没有数据的。果断把自己卡的1扇区清空了,拿去饮水机测试,使用一切正常,不知道是哪个这么无聊把数据写进去的,继续研究。


似乎发现了点端倪,除了开头的FA5C 0000 05AC FFFF和对照卡不一样之外,其他数据都相同。接着试试除了这8字节的开头保留,其余清零,在饮水机上测试,一切正常,回来再次读卡的时候又重新生成了一样的数据,可以排除影响。