教你用手机的NFC功能模拟门禁卡,实现出门不带卡
此教程教您将门禁卡、考勤卡、会员卡、停车卡、电梯卡等等各种卡片模拟进NFC手机里,从而用手机代替门禁卡
一、软硬件准备
NFC Tool
手机上的IC卡读写编辑软件,搭配蓝牙读卡器或者OTG读卡器,可实现在手机上破解、复制门禁卡,是本文的主角。该软件破解能力非常强大,是市面上唯一能破解无漏洞卡和国产兼容卡的软件,并且有云计算辅助破解,大大提高破解效率。
蓝牙版读卡器
蓝牙版读卡器方便操作,可以随身携带,摆脱有线束缚,价格上也比普通读卡器贵不了多少。
安卓NFC手机
日常使用的安卓机子,主要带 NFC 功能就行了,现在的新机型一般都有模拟加密门禁卡的功能,我使用的是小米MIX2S,门卡功能隐藏在小米钱包里。其它品牌的手机系统自带的门卡模拟软件在操作上可能和本教程有差异,不过主要步骤和原理都是一样的。
二、大致流程
大部分手机是自带了模拟门卡功能的,但是这个功能不支持模拟加密卡,而现实生活中的门卡基本都是加密的,所以用手机直接模拟的门禁卡几乎都是无法使用的。所以我们的思路是,根据已加密的母卡制作一张非加密卡,然后用手机模拟非加密卡,最后将母卡的加密数据写入手机模拟的非加密卡中,以此完成手机对加密母卡的模拟。
- NFC Tool 破解母卡,得到dump文件
- NFC Tool 读取母卡卡号,写入非加密复制卡
- NFC 手机模拟非加密复制卡
- NFC Tool 写入dump文件到手机
- NFC 手机模拟的卡片和原来的母卡一模一样,可以刷卡开门了
三、详细步骤
以下某些步骤看似多余,实际上每一步都有意义,一定要严格按步骤操作,切勿跳过和简化:
0x01 NFC Tool 破解母卡获取Dump文件
打开NFC Tool,点击”一键破解”,如果没连接读卡器,那么App会要求连接读卡器(读卡器使用教程),连接读卡器成功后就把卡片放在读卡器感应区,然后点击”开始执行”,如果软件提示”未发现卡片”,那么你可以移动卡片后多试几次,有可能是卡片未放置在读卡器的信号区。软件发现卡片后,下面就耐心等待软件破解,一般几分钟到几十分钟就破解完了。
tips:
- 一键破解功能可自动识别并破解普通卡、国产无漏洞卡、国产兼容卡、CPU模拟卡、有漏洞全加密卡等;
- 一键破解时长和手机性能有关,超过1个小时仍不能破解,可勾选”强制云计算”重新破解,强制云计算一般10到20分钟就可以破解出1个key,如果你用有线读卡器破解无漏洞卡,手机电量不够用的话,可以参考手机NFC暴破无漏洞教程;
- App如果检测到后门卡,会直接免密读卡;
- 只要破解没有停止,就不用管ERROR信息,如果破解意外停止,那么重新连接读卡器再次破解即可。
我们破解的目的是得到包含密钥的完整的dump文件,当然你也可以通过其他方式获取dump文件,比如叫物业拷贝给你。
0x02 NFC Tool 读取母卡卡号,写入非加密复制卡
这时,我们准备一张可以修改卡号的UID卡来做非加密复制卡,为了确保UID卡非加密,你可以先格式化UID卡。在App一键读写功能,右上角菜单里,有格式化按钮,读写UID卡前记得提前连接读卡器。
然后,在App一键读写功能,右上角菜单里,打开”修改卡号”功能,把母卡放在读卡器上,点击”读卡号”;然后,把复制卡放在读卡器上,再点击”写卡号”,写入完成后,我们就制作好了一张带有母卡卡号的非加密复制卡了。
0x03 NFC手机模拟非加密复制卡
用手机模拟0x02中得到的非加密复制卡,部分机型模拟的卡片不是很稳定,所以模拟成功后无法读写的话,只需要删除模拟的卡或者重启手机,然后多模拟几次即可。
注意:如果模拟的是加密卡,部分手机会提示卡片加密,叫你选择是否只模拟卡号;部分手机不会提示,而是直接模拟卡号。不过只模拟卡号的话,几乎都是无法使用的。所以我们才需要制作一张非加密复制卡,从而让手机完整复制母卡数据。
0x04 NFC Tool 写入dump文件到手机
首先,我们在手机上把刚才模拟的非加密复制卡设置成默认卡(一般手机在刷卡的时候会出现默认卡片选择界面,设置默认卡片后手机刷卡时才能调用正确的卡片)。
然后,在NFC Tool 数据板块里,找到0x01步骤中获取的dump,点击”写入”,进入一键读写界面;也可以在App主页直接打开”一键读写”,然后在写卡选项里选择0x01步骤中获取的dump;前面步骤完成后,打开”延迟寻卡”,然后点击”开始写卡”,这时候快速的将手机放在读卡器上,等待写入完成。
写入成功后,大功告成!!!
0x05 手机模拟的卡片和原来的加密卡一模一样,可以刷卡开门了
如果测试开不了门,你可以读出手机的数据,和母卡数据做一下对比,确保所有数据一致。如果不一致,肯定是你操作有误,那么你删掉手机模拟的数据,再认真重复上述步骤操作一次即可。请注意,手机模拟的卡0块后几位无法修改,不过一般不影响最终结果。
滴,成功开门!!!
四、最后总结
1、复制成功不能用?
有些门禁系统有反复制措施,一般有以下两种情况:
- 按照前文操作后,手机刷门禁无任何反应(正常情况手机会弹出默认刷卡界面),这种情况就没得搞了,其实你在没模拟之前用手机直接新建一张空白卡去刷门禁没有反应的话,即使最后模拟成功,也不会有反应的,检测教程里介绍过,这种情况只有用手机贴贴在手机上,效果也还不错;
- 按照前文操作后,手机刷门禁后,母卡就不能用了,此类门禁俗称滚动码系统,如果遇到这种系统,那你以后就只能用手机刷卡了,母卡就不能用了,滚动码系统不支持一卡变多卡。
教你用手机的NFC功能模拟门禁卡,实现出门不带卡的更多相关文章
- 手机NFC模拟门禁卡
楼主所在的某电子科技类大学,从宿舍楼到实验楼到图书馆办公楼,全部都有门禁,前两天突然在某安软件市场看到一个可以模拟门禁卡的软件,然而可能是我的手机系统太6了,竟然模拟不了,无奈自己动手,从根本上解决问 ...
- 门禁 IC卡 ID 卡 RFID 手环 NFC 银行卡 手机模拟门禁
门禁 IC卡 ID 卡 RFID 手环 NFC 银行卡 手机模拟门禁 原因 最近给公司换了一个门禁. 旧的门禁按键面板已经破了. 不支持我的手环. 按了密码后竟然要按 #. 相关信息 查了资料记录一下 ...
- NFC模组,开发NFC功能 仅仅要几条指令的事情
特点:实现NFC透明传输.内置NFC协议栈,支持UART串口直接读写,用于门禁能够同一时候兼容手机和卡片开门,还能实现动态密钥,读到的NFC数据自己主动串口输出,会串口就能开发NFC,不须要研究LLC ...
- nfc是什么?nfc功能是什么?
http://android.tgbus.com/lab/software/201208/447420.shtml nfc是什么?nfc功能是什么?出现在我们手机上的nfc功能怎么用?下面请看今天小编 ...
- 如何用有NFC功能的手机微信给公交卡充值?入口在那里?
如何用有NFC功能的手机微信给公交卡充值?入口在那里? 需要两个前提: 1.NFC功能手机授权同意微信获取权限. 2.打开微信,并把公交卡放在手机背面贴紧. 选择下方的[充值金额],可以是10元.20 ...
- 移动支付之智能IC卡与Android手机进行NFC通信
本文来自http://blog.csdn.net/hellogv/ .引用必须注明出处. 眼下常见的智能IC卡执行着JavaCard虚拟机.智能IC卡上能够执行由精简后的Java语言编写 ...
- 手机支持USB功能、驱动文件对应关系
手机支持USB功能: 1.UMS(USB MASS Stronge) : 连接PC作为存储盘使用 2.ADB : 用于调试 3.MTP :连接PC作为存储盘使用(win XP需要安装WMP10 以上 ...
- SNF开发平台WinForm之十二-发送手机短信功能调用-金笛-SNF快速开发平台3.3-Spring.Net.Framework
1.调用前组装参数 2.调用发送信息服务脚本 .调用前组装参数: BaseSendTaskEntity entity = new BaseSendTaskEntity(); entity.Mess ...
- 8、ABPZero系列教程之拼多多卖家工具 添加手机注册登录功能
现在网站基本都用手机注册,很少用邮箱注册,本篇内容比较多,代码我会尽量加备注,有些操作需要连续添加几个文件才不报错,如果VS显示错误,请继续后续步骤. 前面已经有一篇文章讲到集成短信发送模块:http ...
- 手把手教你Android手机与BLE终端通信--连接,发送和接收数据
假设你还没有看上一篇 手把手教你Android手机与BLE终端通信--搜索,你就先看看吧,由于这一篇要接着讲搜索到蓝牙后的连接.和连接后的发送和接收数据. 评论里有非常多人问假设一条信息特别长,怎么不 ...
随机推荐
- 【Devexpress】Gridcontorl的列隐藏后再显示位置发生了变化
首先在可视化界面中排序好每个列的显示位置索引 在窗口初始化时进行记录在字段中 /// <summary> /// 当前显示列的位置索引,用于隐藏后显示进行重新排序位置 /// </s ...
- IDEA git配置
必备:安装Idea \ git配置git坏境:在环境变量中添加git安装包bin目录即可 1.去git官网申请一个账号 https://github.com/ 创建一个新的项目 2.在快速启动栏或者g ...
- python字符串常用方法介绍,基于python3.10
python字符串常用方法-目录: 1.strip().lstrip().rstrip()2.removeprefix().removesuffix()3.replace()4.split().rsp ...
- React报错之Function components cannot have string refs
总览 当我们在一个函数组件中使用一个字符串作为ref时,会产生"Function components cannot have string refs"错误.为了解决该错误,使用u ...
- SQL审核平台Yearning
1.关于Yearming Yearming是一个Sql审核平台,底层使用Go语言,安装和部署方式也很便捷 项目地址 https://guide.yearning.io/install.html git ...
- [OpenCV实战]27 在OpenCV下使用forEach进行并行像素访问
目录 1 Mat像素访问 1.1 使用at方法直接进行像素访问 1.2 使用指针进行像素访问 1.3 使用forEach方法进行像素访问 1.4 将forEach与C ++ 11 Lambda一起使用 ...
- Flink mini-batch "引发" 的乱序问题
问题描述 近期业务反馈, 开启了 mini-batch 之后, 出现了数据不准的情况, 关掉了 mini-batch 之后, 就正常了, 因此业务方怀疑,是不是 Flink 的 mini-batch ...
- Isaac Sim 机器人仿真器介绍、安装与 Docker [1]
前言与参考 此文书写于: January 6, 2023, 更新于 January 6, 2023 :可能会随着时间的变化 此教程会有过时概念哦 Isaac Sim 相关参考链接: 官方文档地址 官方 ...
- 可持久化栈学习笔记 | 题解 P6182 [USACO10OPEN]Time Travel S
简要题意 你需要维护一个栈,有 \(n\) 个操作,支持: 给定一个 \(x\),将 \(x\) 加入栈. 将一个元素出栈. 给定一个 \(x\),将当前栈回退到 第 \(x\) 操作前. 每一次操作 ...
- Jest如何有序地执行测试
项目场景: node环境下编写js库,处于规范性考虑,需要做单元测试,我选择了Jest 问题描述 我的js库需要访问数据库,因此操作都是异步的,而且各个测试单元有严格的先后执行顺序(比如,建表 > ...