小米手环NFC模拟加密IC卡

xuanbei 硬件 2019-07-07
前言:其实直到折腾成功,我才发现用手环刷还没有用卡片来得方便。我也不知道为什么把钥匙上的卡片历经波折放到手环,这种脱了裤子放屁的事情上会让人这么开心。这种说不清来由的喜悦,真鸡儿喜悦。

注意:

  1. 本文是作者个人的经验,从分类到操作都不一定正确,更不一定是最快捷合理的操作方式,仅供参考。
  2. 欢迎转载,需标明出处和链接。

仅供参考的意思是你还需要寻找到其他的知识来源,亲自辨别更接近真相的那一方面。不是我装逼,是我真的不确定。

需要的设备

  • UID白卡(后面会介绍这是什么)
  • NFC手环
  • NFC功能的手机
  • ACR122U设备(长这个样子,可以从淘宝或者1688购得)

timg.jpg

什么卡能模拟

这里很多看起来牛X的专业名词可以无视,不看。

小米手环从第三代开始支持NFC,从硬件上带来了模拟门禁/校园卡的可能性。常见的各种卡片分成如下几种

  • 银行卡(有金属磁条的那种,上次看到复制这种卡的操作还是东野圭吾的书(大雾),不在本在讨论范畴中)
  • IC卡(讨论的就是他)
  • ID卡(频率不同,本文不讨论)
  • CPU卡(网上说几乎不可能复制,听名字很高级)

综上,如果你是Ic卡,那恭喜你符合了小米手环模拟的先决条件。

怎么判断你手中的卡是IC卡呢:把手中的卡放到ACR122U设备上,亮灯了,就大概率是IC卡。

总体流程

这里先对流程做个把握,也是《怎么阅读一本书》推荐的掌握新技能的方式,也可以不看。

  1. 对卡片进行穷举,破解出秘钥

    (意思就是这张卡是有密码的,我们得把密码弄到手,才能修改和复制)

  2. 将卡片的UID复制到一张可修改UID的白卡上

    (UID就是编号,可以用来全球唯一的表示这样卡,按道理是不能修改的,但是淘宝上可以买到能修改UID的卡片)

  3. 使用NFC手环模拟出这张只有被复制卡片UID的白卡

    (为什么要这么做,这不是多此一举么?其实不是,因为只有这样,才能让小米手环模拟出来的卡是你需要的UID,而且这个时候,这张白卡只有UID信息,其他加密信息都是空的,所以是可以直接模拟的)

  4. 将被复制卡片的其他信息写到NFC手环中

第一步

  1. 将ACR设备连上电脑,安装驱动,将被复制的卡片放到ACR设备上
  2. 打开软件NFCGUI-Pro.exe

    长这个样子

image_43.png

  1. 点击读取基本信息,复制“ 原UID ”
  2. 将UID白卡放到ACR设备上
  3. 将刚刚复制的UID粘贴到新UID这一栏,点击修改UID

这时候,你已经有一张和被复制卡片的UID一样的卡片了, 有些情况下现在就已经可以用来开门

第二步

现在,打开NFC手环的APP,这里以小米手环4NFC为例

1.选择门卡模拟

title

2.选择模拟门卡,而非小米空白卡

title

3.将刚刚复制好UID的空白卡放到手环旁边,大概率小米会提示你这张卡可以复制。选择复制

第三步

这时候打开手机APPMIFARE经典工具(就叫这个名字,PLAY市场可以找到,官方原生中文)

1.点击读标签

2.然后点击全选,把你被复制的卡片放到手机旁边,大概率你会看到类似这样的情况

title

你现在肯定很懵,花花绿绿的,也没看出来有什么毛病。这个时候我们就可以来普及一下知识了。

这种卡片是由0–15个编号,一共16个区域组成的(这个区域的学名叫块,这个不重要,我们理解成区域就好),而上图中我们看不到1,2,3区。你手里的卡也有可能到不到其中的几个区,这代表这几个区被加密了。我们现在要做的事情就是把他们解密,怎么解密呢?

别担心,没有什么很复杂的方法, 说白了就是穷举。(好吧,穷举这个词生活中也不常见,那说得更直白,那就是猜,一个个的猜)

这里我们使用的是这个软件,叫M1卡服务程序.exe

你买ACR这个设备的时候,卖家大多都会直接发一份给你,所以这个不用担心。

这个软件长这样

title

点击开始破解软件就会开始穷举,大概需要十几分钟的时间。

完成之后,你会得到一个后缀名是.dump的文件,这个文件的大小是1k,我们需要把这个文件fixdump[convert_1k-4k].exe上,将其修复成4K的大小。

第四步

现在,你只需要把除开UID的部分(因为UID我们之前已经写在你的NFC手环里面了),我们现在只需要把除开UID的部分写入NFC手环中。

这一部分我是用了一个特别蠢的方法做的。这里先介绍正常情况

就是直接使用NFCGUI-Pro.exe这个程序,点击加载秘钥,选择我们刚刚的dump文件,然后在右边的文件设置中也选择刚刚的dump文件,点击写入一般白卡,整个过程就算完成了。

后记

(待续)

PREV
美国封锁,全球压力。华为能赢?
NEXT
Django项目上线爬坑路书

评论(1)

发布评论
  1. Hao Hao

    博主还可以写更详细一些,比如加密卡的相关操作等等