教你用手机的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终端通信--搜索,你就先看看吧,由于这一篇要接着讲搜索到蓝牙后的连接.和连接后的发送和接收数据. 评论里有非常多人问假设一条信息特别长,怎么不 ...
随机推荐
- python-简单模块的使用
提示:简单模块了解掌握 @ 目录 uuid模块 calendar日历模块 time模块 datetime模块 os模块 sys模块 random模块 json和pickle模块 json pickle ...
- [.NET学习] EFCore学习之旅 -3 一些其他的迁移命令
1.Update-DataBase xxx 概述:将数据库回滚到某个版本. 1.首先创建一个表 Dog 2.生成迁移 Add-Migration CreateDogTable 并更新到数据库 Upd ...
- JavaEE Day03 MySQL约束
MySQL约束--今日内容 1. SQL-(DDL,DML,DQL),讲完DQL查询语句的使用 排序查询 聚合函数 分组查询 分页查询 2. 约束 3. 多表之间的关系 4. 范式(用于更好地设计表, ...
- 【每日一题】【List与Array互转】【工具类的使用】2021年12月10日-56. 合并区间
以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] .请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入 ...
- go-dongle 0.2.0 版本发布了,一个轻量级、语义化的 golang 编码解码、加密解密库
dongle 是一个轻量级.语义化.对开发者友好的 Golang 编码解码和加密解密库 Dongle 已被 awesome-go 收录, 如果您觉得不错,请给个 star 吧 github.com/g ...
- (admin.E108) The value of 'list_display[0]' refers to 'productname', which is not a callable, an attribute of 'ProductAdmin', or an attribute or method on 'product.Product'.
models.py # 创建产品表 class Product(models.Model): productName = models.CharField('产品名称', max_length=64) ...
- 用云服务器搭建frp服务(超详细)
初学.没有云服务器的时候总想着怎样才能让别人访问到自己的项目. 在查阅了百度,逛过了一些论坛之后,了解到了 内网穿透 这个词. 经过一番钻研,通过 手机 + KSWEB + 电脑 成功将内网服务映射出 ...
- [WPF]使用Fody提高效率
下载安装及使用 代码实例 public class Person:INotifyPropertyChanged { public event PropertyChangedEventHandler P ...
- [数据结构]Dijkstra算法求单源最短路径
概念 求带权有向图中某个源点到其余各个顶点的最短路径,最常用的是Dijkstra算法.该算法设置一个集合S记录已求得的最短路径的顶点,可用一个数组s[]来实现,初始化为0,当s[Vi]=1时表示将顶点 ...
- Maven初学习
Maven初学习 摘要:本篇笔记记录了我在初学Maven是认为比较重要的一些知识点. 目录 Maven初学习 1.Maven简介 1.1.项目构建 Ant Maven Gradle 1.2.总结 2. ...