广州茄子科技有限公司
一点课 内训师

关于小米手环写入加密卡IC卡数据的自学报告

本文只作技术研究之用,请勿用于非法用途,否则后果自负。

如今网络上能找到RFID安全类的信息非常的少,原因我就不说了,大家也明白。大家如果要研究RFID安全可以去RadioWar或者Freebuf多看看相关的文章,我在后面也会放出一些相关的资料供大家下载研究,资料大多数是外语资料,所以说外语一定要学好!

这次案例的主角是某小区的门禁卡,小露一下。

用NFC手机上安装的MCT(Mifare Classic Tool)查看,门禁卡的确是Mifare Classic 1k类型的。

此次破解用到的工具有:电脑一台,ACR122U一台,带NFC功能的手机一台,门禁卡。除了ACR122U,大家也可以淘宝PM3、变色龙等解卡神器,这里不对解卡原理做过多的分析,有兴趣了解的朋友可以评论我,我再跟你吹一晚水~这里我用一种最简单的方法实现功能,大家都很忙,结果导向。

装好ACR122U驱动,找好软件,一般用M1卡服务程序其实就是简化版的(mfocgui),如果想了解ACR122U解卡算法,可以去官网下载SDK,方便日后的开发。

所有扇区打勾,证明搞掂了。

我们继续正题:首先解出门禁卡的秘钥A、B,得到.dump文件,我们先保存着。

在此之前我已经尝试过用MCT自带的常见的密钥去访问门禁卡,发现有部分扇区使用的不是默认密钥,被加密了,对于这种不是所有扇区加密的卡,我们可以采用验证漏洞把其他扇区密码破解出来,就是用ACR122U解卡。

第二步:用RFID RadioEye(我觉得这个好用,其他写卡的软件也行)把原卡的UID号码和刚刚解出来的dump文件中原卡的“0扇区内容”,写到一张空白的UID卡上。简单总结就是:使空白卡的UID号码和“0扇区内容” 与你原卡的数据一样。

然后其他扇区的内容保持为000000......,秘钥A和秘钥B未FFFFFFFFFF,如下图:

第三步:用小米运动app,连接手环,直接点击“模拟门卡”,把刚刚写好的空白卡用手环模拟出来,因为空白卡除了UID号和“0扇区内容”和你原卡一样之外,其他都是默认内容,小米app肯定可以模拟出来,而不会显示“该卡是加密卡,无法模拟”。

模拟好后,我们手环就会多了一张卡,最后一步就是把原卡内容写入手环

第四步:把原卡解出来的所有扇区的秘钥A、秘钥B全部加入到MCT 的秘钥文件中,点击右上角创建新文件,或者在原来的秘钥文件中直接打开添加也行,随你。

然后选择这个秘钥文件,在MCT中“读标签”,把你原卡的全部数据用MCT读出来保存到手机中(要点击右上角的保存按钮),like this:

最后,在手机MCT中,“写标签”,点击“写转储(克隆)”选择刚刚保存的原卡数据和秘钥文件,开始对手环写入。

这一切都搞掂后,你就可以拿手环去试试了。

小米最多支持存储五张卡数据,我自己写了四张,需要使用的时候在手环切换就好了。

装逼的时候,请注意!!小米手环NFC感应能力可能无卡那种大线圈那么好,所以有时候需要打两次才打到,这个也要看读卡器读卡能力,总之比较容易造成翻车事故。(本人试过几次了)

最后总结一下,小米手环NFC功能吧

简单几句:

(1)不能模拟扇区为非默认密码的卡

(2)写卡保护:小米手环会对比写入的卡和原来卡的UID号码和0扇区,如果两张卡不一样是写不入的,轻则报错,重则要拿回去售后换一只新的。

关于M1卡的相关资料:

高频IC卡指南

飞利浦官方M1卡文档

文献:

The Mifare Hack

Dismantling MIFARE Classic

赞(2) 打赏
未经允许不得转载:广州茄子科技有限公司 » 关于小米手环写入加密卡IC卡数据的自学报告
分享到: 更多 (0)

评论 1

评论前必须登录!

 

  1. #1

    优秀

    肥斌5年前 (2019-06-04)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏