目标:将常用的IC卡等模拟进手机里,解决当前手机的模拟卡功能仅能模拟卡号以及原始卡为加密卡的问题。
背景介绍:
1、前言
IC卡多被广泛应用于身份识别、金融消费、安全认证等领域,门禁卡是IC卡的一大应用场景。
当前大部分带有NFC硬件的安卓手机都支持模拟卡,理论上能够模拟IC卡的整个扇区。但是厂商往往只支持非加密卡的模拟,并且仅模拟了卡片的UID号;如果卡加密了,则会拒绝模拟,即便提示模拟成功了也往往不能使用。因此急需一种方法解决该问题。
2、思路
通过一定的方法先拿到密码,将卡片先转化为非加密卡,然后用手机模拟该非加密卡,最后将加密数据写入手机模拟的非加密卡中,从而完成手机对加密卡的模拟。
3、软硬件准备
软件
NFC Tool 手机上的IC卡读写软件,搭配蓝牙或者OTG读卡器使用,可实现在手机上破解门禁卡的功能,下载传送门。
*软件已上架各大应用商店,包括华为、魅族、小米、360、百度、阿里、腾讯、豌豆荚等等平台。
硬件
蓝牙版读卡器和UID卡。 蓝牙版读卡器方便操作,可以随身携带,摆脱有线束缚。价格上也比普通读卡器贵不了多少。
目标手机
一台NFC手机,NFC手机用来模拟卡片,我使用的是小米9SE,门卡功能隐藏在天星金融钱包里。其它品牌的手机系统自带的门卡模拟软件在操作上可能和本教程有差异,不过主要步骤和原理都是一样的。
4、详细流程
首先,用NFC手机自带的门卡模拟软件尝试模拟门禁卡,这里会有以下三种情况:
1、手机读卡后正常进入下一步: 这说明该卡是普通的未加密M1卡,模拟成功后就可以刷卡开门;
2、手机多次读卡无反应: 这种情况说明你的门禁卡是ID卡,一般为125k,属于低频卡,放弃操作。
3、手机提示该卡不支持模拟: 这种情况是门禁卡很有可能是加密M1卡,接下来则需要先破解卡片,得到密码。
0x01 NFC Tool 破解母卡,得到dump文件
打开NFC Tool,点击”一键破解”,如果没连接读卡器,那么App会要求连接读卡器(读卡器使用教程),连接读卡器成功后就把卡片放在读卡器感应区,然后点击”开始执行”,如果软件提示”未发现卡片”,那么你可以移动卡片后多试几次,有可能是卡片未放置在读卡器的信号区。软件发现卡片后,下面就耐心等待软件破解,一般几分钟到几十分钟就破解完了。
PS:
一键破解功能可自动识别并破解普通卡、国产无漏洞卡、国产兼容卡、CPU模拟卡、有漏洞全加密卡等;
一键破解时长和手机性能有关,超过1个小时仍不能破解,可勾选”强制云计算”重新破解,强制云计算一般10到20分钟就可以破解出1个key;
App如果检测到后门卡,会直接免密读卡;
只要破解没有停止,就不用管ERROR信息,如果破解意外停止,那么重新连接读卡器再次破解即可。
0x02 NFC Tool 读取母卡卡号,写入UID卡,得到非加密母卡
先格式化UID卡。在App一键读写功能,右上角菜单里,有格式化按钮,读写UID卡前记得提前连接读卡器。然后,在App一键读写功能,右上角菜单里,打开”修改卡号”功能,把母卡放在读卡器上,点击”读卡号”;然后,把复制卡放在读卡器上,再点击”写卡号”,写入完成后,我们就制作好了一张带有母卡卡号的非加密复制卡了。
0x03 NFC手机模拟非加密母卡
用手机模拟0x02中得到的非加密母卡,部分机型模拟的卡片不是很稳定,所以模拟成功后无法读写的话,只需要删除模拟的卡或者重启手机,然后多模拟几次即可。
注意:如果模拟的是加密卡,部分手机会提示卡片加密,叫你选择是否只模拟卡号;部分手机不会提示,而是直接模拟卡号。不过只模拟卡号的话,几乎都是无法使用的。所以我们才需要制作一张非加密复制卡,从而让手机完整复制母卡数据。
0x04 NFC Tool 写入dump文件到手机
首先,我们在手机上把刚才模拟的非加密母卡设置成默认卡(一般在刷卡的时候会出现默认卡片选择界面,设置默认卡片后手机刷卡时才能调用正确的卡片)。
然后,把手机放在读卡器上,打开NFC Tool 的写入功能,选择前文中获得的密钥和dump文件,并开始写入。用同样的方法,可以把0x02中的非加密母卡也变回加密母卡。
写入成功后,大功告成!!!
0x05 手机模拟的卡片和原来的加密卡一模一样,可以刷卡开门了
注意:
按照前文操作后,手机刷门禁无任何反应(正常情况手机会弹出默认刷卡界面),这种情况就没得搞了,其实你在没模拟之前用手机直接新建一张空白卡去刷门禁没有反应的话,即使最后模拟成功,也不会有反应的,检测教程里介绍过,这种情况只有用手机贴贴在手机上,效果也还不错;
按照前文操作后,手机刷门禁后,母卡就不能用了,此类门禁俗称滚动码系统,如果遇到这种系统,那你以后就只能用手机刷卡了,母卡就不能用了,滚动码系统不支持一卡变多卡;