搞定加密卡!小米门禁卡模拟那些事

实体芯片卡作为目前最成熟的技术,已被广泛应用于身份识别、金融消费、安全认证等领域。大多数人几乎每天都要和各种各样的卡片打交道,连回个家都得先把门卡翻出来,其实小米不仅可以模拟公交和银行卡,还能瞬间秒变门禁卡,只要一部手机即可实现出入自由,是时候get真正的技能啦!

—— 支持模拟机型 ——

除小米2A和小米3外,所有内置NFC芯片的正品小米手机,均支持门卡模拟功能,目前包括17款机型:小米5、小米5s、小米5s Plus、小米6、小米8、小米8 屏幕指纹版小米8 透明探索版、小米9、小米9 透明版、小米9 SE小米Note 2、小米Note 3小米MIX、小米MIX 2小米MIX 2S、小米MIX 3小米MIX 3 故宫特别版之后新上市的机型恕不另行通知。

P.S:小米9和小米9 SE的NFC感应区域在手机背面顶端处,刷(写)卡时需贴于此处操作!

 

—— 检测卡片类型 ——

目前市面上常见的非接触实体卡,从原理上通常分为低频和高频两类,且与卡面的图案、形状、大小、厚度等(即是否为异形卡)无关。而小米手机内置的NFC硬件,只能模拟频率在13.56MHZ的高频卡,建议操作前先通过如下方式,判断自己的卡片是否支持被模拟。

1. 在手机端进入系统设置界面并点击更多连接方式项,然后在NFC一栏中开启NFC功能。

2. 依次进入系统设置 > 更多设置 > 系统安全界面,然后开启未知来源项(若在系统安全界面中找不到该项可忽略此步)。

3. 在手机端下载安装TagInfo软件并打开:下载地址(从其他渠道安装的软件可能无法使用)

4. 切换到技术选项卡界面,然后取下手机的后盖或保护套,并远离金属物体或强磁场环境。接着将需要模拟的单张实体卡,靠近手机背部上方NFC区域,并尝试上下左右远近移动,直到发出提示音且读出信息后在移开。

① 若无论如何移动卡片,手机都没有任何反应。可能该卡不属于13.56MHZ的高频卡,卡片已损坏或没有植入高频内芯,无法通过小米手机进行模拟

② 若能读出卡片信息且在Memory content一栏中,所有扇区中的数据都能完整显示,则该卡属非加密卡且可以直接进行模拟;

③ 若能读出卡片信息且在Memory content一栏中,某扇区的第4块出现“unknown keys”提示,或部分扇区及全部扇区中的数据无法被读出,则该卡属加密卡且无法直接模拟;

④ 若能读出卡片信息但没有Memory content一栏,该卡可能为具备金融消费等特殊功能的CPU卡或复合卡(如公交卡、饭卡、银行卡、医疗卡),无法保证模拟成功及可用性;

⑤ 为避免NFC不稳定所造成的影响,建议重复刷卡至少5次并确认每次读出的信息均一致。

非加密卡

已加密卡

复合类卡

—— 非加密卡模拟 ——

未经加密处理的高频卡,是指该卡中所有扇区均采用默认密钥(通常全部为F)加密并能读出完整数据,或只存储卡号无其他相关数据,此类卡可以直接通过如下方式进行模拟。

1. 依次进入系统设置 > 我的设备 MIUI 版本界面点击检查更新并进行升级(目前最新版本的稳定版、开发版、内测版及体验版MIUI系统,均支持门卡模拟功能)

2. 打开小米钱包自带应用,若该设备尚未关联小米帐号,此时须进行注册或登录操作。

3. 在主界面点击门卡模拟(门卡)图标,然后点击开始检测按钮并将需要模拟的非加密高频卡,靠近手机背部上方NFC区域,并尝试上下左右远近移动,直到发出提示音且检测成功后在移开(若该卡非加密卡但却误提示为加密卡,需尝试反复进行刷卡操作即可)

4. 此时点击开始模拟按钮并在用户须知界面点击同意按钮,然后需要扫描身份证件正反面及验证小米帐号密码,约一分钟时间即可烧录完成,最后输入卡片备注并点击完成按钮。

P.S:为有效保护个人隐私,建议在填写卡片备注时,使用宽泛或推荐的大众标签,避免输入小区、学校、公司等的具体名称及位置信息。

—— 已加密卡模拟 ——

为避免卡内重要信息的意外泄漏,防范非法篡改及复制卡内数据并造成安全隐患,一些卡片在发卡时会对数据进行加密处理,除非进行解密否则只通过模拟卡号(UID)也很可能无法使用。不过针对此类卡也并非束手无策,对于一些不包含储值消费且功能单一的高频卡(如门禁卡、电梯卡、考勤卡),不妨尝试下这个一劳永逸的方法吧。

PS:以下方法沿用MIUI自带门卡模拟功能,并尝试烧录完整数据而非只模拟卡号,且操作完成后不需要依赖任何第三方软件。解Bootloader锁刷机、获取ROOT权限、解system锁、修改系统底层文件都通通不需要,且没有任何安全隐患,也不会对其他依赖NFC的服务(小米公交、Mi Pay银行卡等)造成影响。

本帖隐藏内容

温馨提示:以下操作对于玩机新手可能较复杂,须严格按照本帖中的每一步,反复仔细核对并认真完成。需要有一些耐心切勿急于求成,若嫌麻烦可直接关闭本帖。

▼ 常见M1卡加密原理

Mifare S50芯片卡又称M1卡或IC卡,由飞利浦公司旗下恩智浦(NXP)研发。是目前国内最常见的高频卡,绝大部分学生卡、考勤卡、门禁卡、饭卡等本质均属于此类卡。

这种卡就像一个小容量加密U盘,其存储结构通常分为16个扇区(按序号0-15排列),且每个扇区又分为4个块(按序号0-3排列),每一个块均能存储16字节(32位)的16进制数据,其中:

1. 第0扇区第0块由制造商写入,且已固化无法进行改写,前4个字节为卡号(UID),不需要验证密钥也能读取;

2. 每个扇区第3块(尾块)由A密钥(前6个字节)+控制位(中间4个字节)+B密钥(后6个字节)组成,其中控制位用于管理两个密钥的用途,及该扇区各块读写权限;

3. 通过结合控制位,一张M1卡最多可以设置32个(共384位)不同的16进制数密钥,这类卡也被称之为全加密卡。

 

▼ 尝试破解并烧录模拟

1. 除了一张希望烧录的加密M1卡,以及一台支持门卡模拟功能的小米手机(以下称A手机),还需要在另外准备一台支持全功能NFC的安卓手机,并作为写卡器使用(非小米手机亦可,但小米2A、小米3等非全功能NFC的手机可能不支持,以下称B手机)。

2. 两台手机在操作前,均需开启NFC并关闭Android Beam功能,MIUI可依次进入系统设置 > 更多连接方式 > Android Beam界面,并将开启Android Beam项关闭即可。

3. 在操作前建议删除B手机之前绑定过的所有模拟银行卡和门卡,MIUI可进入系统设置界面并点击小米帐号项,然后点击退出登录按钮并注销帐号,之后在此处重新登录该帐号即可快速删除。

4. 若A手机之前已经添加过小米公交或其他门卡,建议在刷卡界面点击右上角齿轮图标,并将默认快捷卡片设为无。

5. 在B手机端下载安装MIFARE Classic Tool软件并打开:下载地址

6. 若已知该卡加密区全部密钥,可在主界面依次进入编辑/增加KEY文件 > 点击右上角“...”按钮 > 创建新的文件项,先在第一行中输入12个F,然后回车并在每一行中分别输入所有的有效A和B密钥(顺序无要求),并点击右上角软盘按钮进行保存(若尚不知道该卡片的任何密钥信息,可跳过此步骤继续完成后续的操作)。

7. 返回主界面并继续进入读取卡片项,然后仅勾选之前创建的密钥文件。若尚不知道该卡任何密钥信息,则勾选extended-std.keysstd.keys两个常见弱口令密钥文件。接着将需要模拟的单张实体卡,靠近手机背部上方NFC区域,并尝试上下左右远近移动,直到发出提示音后停留,并点击开始映射和读卡按钮,待读出全部扇区数据后在移开。

8. 此时先点击右上角的软盘按钮,并将卡内原始数据保存到手机本地。然后将所有加密扇区尾块(第3块)前后6个字节的数据全部改为F,并保留中间的控制位(切勿对中间的控制位字节做任何修改,否则可能会在后续操作中损坏卡片)

P.S:若多次尝试均有部分扇区中的数据无法读出,或直接提示未找到有效的Key,说明该卡密钥组合相对复杂,可能需要专业的辅助设备才有机会破解,因为对技术要求较高故此处不便详述,如对此感兴趣可自行探索,但一定注意不要触及法律底线哦。

9. 接着点击右上角“...”按钮并进入写Dump项,然后依次点击写DUMP并勾选所有扇区,接着将原卡靠近手机背部上方NFC区域,并尝试上下左右远近移动,直到发出提示音后停留,此时继续点击确定按钮,勾选对应的密钥文件后点击开始映射和写DUMP按钮,待写入完成后在移开。

P.S:若无法将清除密钥后的数据写入卡片,可在此处依次勾选显示选项高级:写入厂商块(0区扇区)项,然后用一张可写的空白CUID卡代替原卡写入即可(可自行在淘宝等电商平台搜索“CUID卡”商品,建议一次购买两张及以上且不要买错卡)。

10. 此时原卡的密钥已经被清除,可按上述操作先通过小米钱包,将该卡片烧录并添加到A手机中。

11. 继续在B手机端打开MIFARE Classic Tool软件,并在主界面中依次进入写入卡片 > 写Dump(克隆) > 选择DUMP > 勾选刚才保存的原始数据 > 选择DUMP > 勾选所有扇区,并在A手机的锁屏状态下双击Home键或电源键,若之前已经添加过小米公交或其他门卡,还需要再点击一次刚才添加的门卡,此时手机会进入刷卡状态并振动,接着将两台手机背部上方NFC区域相互贴近,当B手机发出提示音后勾选任意密钥文件,并点击开始映射和写DUMP按钮,待写入完成后在移开即可(此为关键步骤不可省略,否则由于模拟卡中尚未写入对应的扇区密钥,很有可能导致无法刷卡成功)

12. 将原卡靠近B手机背部上方NFC区域,并参考上一步操作写入原始数据进行还原。

—— 刷模拟卡测试 ——

卡片在手机端烧录成功后,还需前往与原卡所对应的刷卡器现场,并进行模拟卡刷卡测试。

▼ 进入刷卡模式

1. 在锁屏状态下双击Home键(部分机型不支持)或电源键(需要依次进入系统设置 > 更多设置 > 手势及按键快捷方式 > 小米钱包界面,并在此处将其设为双击电源键参数)。若希望在解锁后双击Home键快速进入,可以在刷卡界面点击右上角的齿轮图标,并开启桌面键双击支付模式项即可。

2. 将锁屏主题设为默认,在锁屏状态下从屏幕左侧单指向右滑动,然后点击Mi Pay(小米钱包)项。

3. 打开系统设置并进入桌面与最近任务项,开启桌面信息助手功能。然后在桌面向右持续滑动并进入信息助手(负一屏)界面,点击“快捷功能”卡片右上角的三个点按钮并点击编辑项,接着在“实用工具”一栏中添加门卡快捷图标,只需在此处点击该图标即可进入刷卡界面。

4. 下载并更换支持摇一摇快速进入Mi Pay功能的锁屏主题,如遇见小树、小米Note 2 、小米MIX、小米Note 2迷你侧边栏版、纸间梦境、重返米星、米兔斗恶龙等,并在锁屏状态下快速大幅晃动手机2-3下即可进入刷卡界面(MIUI 10及以上版本可能不支持该功能)。

5. 打开小爱同学并对她说:刷卡、打开门(禁)卡

6. 将手机靠近通电的刷卡器,即可自动进入刷卡界面(灵敏度较弱的刷卡器可能不支持)。

如果之前已经添加过小米公交或其他门卡,还需要再点击一次刚才添加的门卡,此时手机才会进入刷卡状态并振动。若希望每次都能自动切换并直接刷卡,可以在刷卡界面点击右上角的齿轮图标,并将默认快捷卡片设为该卡即可。

 

▼ 刷模拟卡测试

当选择对应的模拟卡并进入刷卡状态后,手机会发出有规律的轻微振动。此时将手机背部上方NFC区域,靠近读卡器的卡片感应位置,并尝试上下左右远近移动,当读卡器发出验证通过的提示音(如一声长鸣),或提示刷卡成功后即可移开。

为确保模拟卡绝对可用,建议重复刷卡测试5次及以上,当出现如下情况并导致刷卡失败时:

* 无论如何移动手机,读卡器都没有任何反应(模拟卡未识别或主动拒绝)

* 读卡器发出验证失败的提示音(如四声短鸣)或提示刷卡失败(模拟卡已识别但主动拒绝)

* 首次刷卡成功,但之后就没有任何反应(模拟卡已屏蔽或数据被篡改)

* 只有部分读卡器刷卡成功(如小区外门能够识别,但楼宇门禁却没有反应)

可参考如下原因及解决方案:

1. 确保原卡本身可用,且手机已进入对应模拟卡的刷卡状态;

2. 之前烧录的数据不完成或有误,此时可依次进入小米钱包 > 门卡模拟 > 点击该卡 > 卡片设置 > 删除这张卡片并将其删除,然后按上述步骤重新添加后在尝试;

3. 读卡器有防火墙安全机制,能够识别出原配卡并主动拒绝其他模拟卡或复制卡;

4. 为防范非法使用其他可写复制卡,部分读卡器在验证完成同时,还会尝试篡改卡内数据,并导致模拟卡无法继续使用。即使删除后重新添加卡片,也同样只能刷一次且立即失效;

5. 通过小米手机烧录的模拟卡,在制造商块(0扇区0块)与原卡可能会有所差异,导致读卡器无法识别或主动拒绝;

6. 该卡片为具备金融消费等特殊功能的CPU卡或复合卡,结构较复杂且无法进行完整模拟。

随着智能指纹门锁产品的迅速普及,一言不合就把自己丢在门外的“马大哈”们终于有了盼头。却仍然无法摆脱被小区门禁及各种卡片支配的恐惧。那么就让小米手机来帮你破除封印吧,从此告别臃肿的口袋,每一次出行都将变得轻松自如。

猜你喜欢

转载自www.cnblogs.com/zouhao/p/10789794.html
今日推荐