手机NFC模拟门禁卡:从入门到实践的完整知识体系

2023/09/26 sec NFC · M1卡 · CUID · 门禁 · 手机模拟 5356 字 · 约 16 分钟 阅读 ...
M1卡、UID/CUID/FUID/UFUID卡片分类、M1卡存储结构与加密类型、门禁防伪系统、手机模拟加密卡方案(品牌机免Root+Root通用方法)、硬件工具与APP实操、常见问题排查。

手机NFC模拟门禁卡:从入门到实践的完整知识体系

前言

NFC 模拟门禁卡这件事,说简单也简单——品牌手机自带功能点几下就能用;说复杂也复杂——遇到加密卡、防火墙、滚码等场景,需要从卡片的底层原理到手机系统层面逐层理解才能搞定。

这篇文章从「卡片分类」这个最基础的知识点开始,逐层展开到 M1 卡存储结构、加密类型、门禁防伪系统、手机模拟方案(品牌机方案 + Root 通用方案),再到硬件工具和常见问题排查。目的是帮你建立一套完整的知识体系,遇到具体问题时能按图索骥。

⚠️ 免责声明:本文仅用于技术研究和知识分享。复制门禁卡应遵守相关法律法规,仅限复制自己有权使用的卡片,不得用于非法目的。


一、基础概念:IC 卡与 ID 卡

门禁卡从技术原理上分为两大类:

类型频率存储方式手机模拟典型场景
ID 卡125KHz(低频)只存储固定编号,不可写入❌ 不支持老旧门禁、停车场
IC 卡13.56MHz(高频)可读写,有存储空间✅ 支持现代门禁、电梯卡、公交卡

手机 NFC 工作频率是 13.56MHz,因此只能模拟 IC 卡。如果你把手机贴上去完全没反应,大概率门禁是 ID 卡系统,手机模拟这条路就走不通。

IC 卡的主流标准是 Mifare Classic 1K(简称 M1 卡),由 NXP(恩智浦)公司研发,执行 ISO/IEC 14443 Type A 标准。目前大多数手机厂商的 NFC 芯片也是 NXP 方案,另一部分为 BRCM(博通)方案——均执行同一标准,这是手机能够读写 M1 卡的技术基础。


二、卡片分类

市面上常见的 IC 卡片类型及用途如下:

卡片类型全称可否修改 0 扇区防墙能力用途
M1 卡Mifare Classic 1K❌ 不可修改(出厂锁定)正规发行的门禁卡/电梯卡
UID 卡UID Writeable Card✅ 可反复修改❌ 门禁有防火墙则失效普通复制卡,早期常见
CUID 卡CUID Writeable Card✅ 可反复修改✅ 可穿透大部分防火墙升级复制卡,推荐使用
FUID 卡FUID Writeable Card✅ 仅可写入一次(写后变 M1)✅ 防火墙无法检测高级复制卡
UFUID 卡Ultra FUID Card✅ 封卡前可修改,封卡后同 M1✅ 防火墙无法检测超高级复制卡,最灵活

关键说明

  1. M1 卡:0 扇区不可修改,其他扇区可以反复擦写。我们日常使用的门禁卡、电梯卡基本都是 M1 卡。我之前批发的几毛钱一片的就是 M1 卡——0 扇区不能修改,不能用来复制卡,只能做标签卡使用。
  2. UID 卡:出现较早,会响应后门指令,可被使用后门指令检测是否为克隆卡的机器发现。
  3. CUID 卡:针对 UID 卡做的优化,不会响应后门指令,一般可绕过读卡器防火墙。如果要复制卡,CUID 卡是性价比最高的选择
  4. FUID / UFUID:针对更严格的防火墙设计,写入 0 扇区后「封卡」变为普通 M1 卡,门禁系统无法区分。

三、M1 卡存储结构

M1 卡容量为 1024 字节(1KB),分为 16 个扇区(索引 0~15),每个扇区有 4 个块(索引 0~3),每块 16 字节。

扇区结构示意

扇区 0:  [块0] [块1] [块2] [块3(系统保留)]
扇区 1:  [块0] [块1] [块2] [块3(系统保留)]
...
扇区15:  [块0] [块1] [块2] [块3(系统保留)]

关键要点

位置内容说明
0 扇区 0 块厂商 UID 码(前 8 位)卡片唯一识别码,出厂写入,普通 M1 卡不可改
0-15 扇区 0-2 块数据存储区存储门禁/电梯的授权数据
每个扇区第 3 块系统保留块存储密码 A / 控制码 / 密码 B

系统保留块结构(每扇区第 3 块,16 字节)

偏移内容字节数说明
0-5KeyA(密码 A)6 字节用于验证读取权限
6-8控制码4 字节控制该扇区的读写权限策略
9-11控制码(续)默认值:FF078069
12-15KeyB(密码 B)6 字节用于验证写入权限

💡 默认密码:大多数 M1 卡出厂默认密码 A/B 均为 12 个 FFFFFFFFFFFFF)或 12 个 0。门禁系统发卡时会修改密码。


四、加密类型

根据密码是否默认值,可以将卡片分为三种状态:

加密类型定义破解难度
非加密全部 16 个扇区的 A/B 密码均为默认值无需破解,直接读写
半加密部分数据扇区密码非默认值中等——用软件字典/工具可破解
全加密所有扇区密码均非默认值需要专业工具(PN532 等)破解

好消息:M1 卡的加密算法(CRYPTO1)多年前已被破解。即使全加密,现成的工具也能在几分钟到几小时内完成破解。


五、门禁防伪系统(防火墙)

为了防复制,门禁厂家开发了多种防伪机制。了解你的门禁属于哪种,直接决定复制方案的选择:

防伪类型原理可复制性说明
加密型对扇区加密,非法卡片无法通过密码验证✅ 可破解M1 加密已公开,PN532/PM3 可破解
篡改型刷卡时系统尝试写入 0 扇区,成功则判定为复制卡⚠️ 需用 CUID利用 UID 卡可写的特性做检测
滚码型每次刷卡读写校验码,校验码动态变化❌ 不可复制除非找出校验算法规律,否则无法复制
后门检测型使用后门指令检测卡片类型⚠️ 需用 CUID/FUIDUID 卡会被识别,CUID 不会被发现

实战中最常见的是前两种:加密型 + 篡改型。这也是为什么 CUID 卡能「穿透大部分防火墙」——CUID 既不响应后门指令(防篡改检测),又能被写入数据(破解加密后写入)。


六、工具与软件生态

6.1 Android APP

工具名称类型说明Root 需否
Mifare Classic Tool (MCT)免费读写卡、分析转储(dump)、密码字典破解、克隆,标配❌ 不需要
NFC Reader Tool付费一键破解/读写/格式化,需配合外接读卡器❌ 不需要
NFC TagInfo免费识别卡片类型和手机 NFC 芯片型号❌ 不需要
Card Emulator免费配置模拟卡片✅ 需要 Root
标签助手免费写入 URL/文本/电子名片等数据❌ 不需要

MCT 是入门首选——免费、功能全、不需要 Root。内置了 std.keysextended-std.keys 两个默认密码字典,用来破解半加密卡效率很高。

MCT 界面

6.2 MCT 写卡要点

使用 MCT 写入 CUID 白卡时的关键操作:

  1. 全卡复制:用「写转储(克隆)」dump 模式一次性写入整个转储文件
  2. 修改控制码:推荐将控制码改为 08778F69,这样设置后:
    • KeyA 用于读取(可见)
    • KeyB 用于写入(不可见)
    • 优点:防止被覆盖写入、A 密码不可读、支持定点修改
  3. 全卡复制前先格式化全卡,确保扇区状态一致

6.3 硬件设备

设备价格区间说明
PN53230-80 元入门级,USB/蓝牙/UART 接口,配合 NFC Reader Tool 可用
Proxmark3 (PM3)200-600 元专业级,可破解低频 ID 卡和高频 IC 卡,功能最强
COPY5 / ACR122U100-300 元商用级读写器,稳定性好,适合批量操作

对于普通用户,PN532 配 NFC Reader Tool 是最低成本的入门方案。如果只是复制一张卡,买个带吸波片的 CUID 芯片贴(2 元左右)+ 找一台支持 NFC 的 Android 手机 + MCT APP 就能搞定,不一定需要买读卡器。


七、手机模拟加密门禁卡的方案

这是最核心的实操章节。根据手机是否 Root,分为两条路径:

7.1 方案 A:品牌手机自带功能(免 Root)

适用机型:小米(小米钱包)、华为/荣耀(钱包 App)、vivo(钱包)、OPPO(钱包)

四种检测情况

手机提示含义对策
正常进入下一步✅ 未加密 M1 卡直接模拟成功
读卡无反应❌ 是 ID 卡无法用手机 NFC 模拟
提示不支持模拟❌ 非标准 M1 卡公交卡/银行卡等不适用
提示卡片加密⚠️ 加密 M1 卡需要按以下步骤操作

解决加密卡模拟问题的完整流程

遇到「卡片加密」提示时,需要借助工具按以下步骤操作:

第 1 步:破解母卡获取 dump 文件

使用 NFC Reader Tool(付费)+ 蓝牙/OTG 读卡器(如 PN532),点击一键解密,等待工具自动完成破解,生成 dump 文件(卡片完整数据镜像)和密钥文件。

第 2 步:格式化母卡为空卡

将原加密门禁卡通过 MCT 或 NFC Reader Tool 格式化为非加密状态(所有扇区密码重置为默认值)。

第 3 步:手机模拟母卡

用华为/小米钱包的「模拟门禁卡」功能,模拟这张已经变为非加密的母卡。此时手机端会显示模拟成功。

第 4 步:将数据写回手机模拟卡

用 MCT 读取手机模拟的虚拟卡,将第 1 步得到的 dump 文件和密钥写入手机模拟的卡片中。写入完成后,手机就完全替代了原来的加密门禁卡。

💡 原理:品牌手机钱包只能模拟非加密 M1 卡(这是系统限制)。破解 → 格式化 → 模拟 → 写回 这套流程的本质是「绕过」这个限制,让手机以为自己模拟的是一张普通卡。

7.2 方案 B:Root 后通用模拟(通用方法)

适用机型:任何有 NFC 的 Android 手机(需 Root),尤其是非华为/小米品牌

第一步:识别手机 NFC 特性

用 NFC TagInfo APP 测试手机模拟卡片时的表现:

类型特征方案
情况 1/2识别不到卡片 / UID 固定不变✅ 直接修改配置文件
情况 3UID 为 08 开头随机值(Android 7+ / 三星 S6+ 等)⚠️ 需间接修改 NCI 层

直接修改配置文件

找到并修改以下文件(路径可能因机型不同):

/vendor/etc/libnfc-nci.conf
/vendor/etc/libnfc-nxp.conf
/vendor/etc/libnfc-brcm.conf

也可以用 Card Emulator APP——配置文件在 /card emulator/cards.json,编辑后重启 NFC 即可。

间接修改 NCI 层(高级)

对于情况 3 的机型,配置文件修改无效,需要反编译修改 NCI 层的 libnfc-nci.so 函数,控制 NFCC 改变随机应答码。这个操作门槛较高,建议非必要不使用。


八、CUID 物理复制(独立复制方案)

当手机模拟这条路走不通时(例如门禁是 ID 卡、或者手机 NFC 芯片兼容性有问题),物理复制卡是最后的方案。

CUID 芯片贴的相关知识点已在前面章节介绍,这里补充实操要点:

CUID 芯片贴使用说明

项目说明
使用场景复制 M1 卡后贴到手机壳上使用
芯片容量1024 字节(约 400-500 个汉字)
感应距离1~3 cm(主要由读卡器决定)
尺寸圆形,直径 25 mm(和一张纸差不多厚)
编辑工具MCT APP(复制门禁卡)、标签助手(写入信息/指令)

注意事项

  1. 芯片贴不可以直接贴在金属或手机表面——金属会屏蔽电磁场,导致无法正常感应。
  2. 如果必须贴在金属或手机表面,需加装吸波片(防磁贴),厚度约 0.12 mm,购买时可选配套吸波片的链接。
  3. 芯片贴一面有背胶,可粘贴在木/玻璃/塑料等材质表面,也可放入滴胶挂件、玩具、毛绒公仔内。
  4. 感应距离 1~3 cm,主要取决于读卡器而非芯片贴本身。
  5. M1 加密卡需先用读卡器设备破解得到 dump 文件再写入 CUID;非加密卡可直接用 Android 手机 + MCT 复制。

九、常见问题排查

问题可能原因解决方案
手机读卡完全没反应门禁是 ID 卡(125KHz)❌ 手机无法模拟,考虑 CUID 物理复制
手机提示「模拟成功」但刷不开门禁有防火墙/滚码换 CUID/FUID 卡物理复制
提示「卡片加密」加密 M1 卡按第 7.1 节流程操作
提示「不支持模拟」非标准 M1(公交卡等)无法用品牌机自带功能,考虑 Root 方案
华为 Mate30 模拟异常特定机型 NFC 兼容性问题参见华为 Mate30 NFC 异常解决
CUID 卡刷开后门禁重启门禁检测到 CUID(篡改型防火墙)尝试 FUID/UFUID 卡
白卡写入后无法读取控制码设置了错误的读写策略修改控制码为 08778F69 重新写入

十、方案选择决策树

如果你不确定走哪条路,按这个流程判断:

门禁卡贴手机 → 有反应?
├── ❌ 完全没反应 → 可能是 ID 卡 → 物理 CUID 复制方案
├── ✅ 但有反应
    ├── 手机提示「已加密」→ 走 7.1 品牌机免 Root 流程
    ├── 手机提示「不支持」→ 检查是否是加密卡
    │   ├── 手机有 Root → 走 7.2 方案
    │   └── 手机无 Root → CUID 物理复制
    └── 手机正常模拟 → 🎉 大功告成

十一、安全与法律提示

⚠️ 重要:以下内容请认真阅读

  1. 所有权:仅限复制你自己拥有所有权的卡片(自家门禁、个人固定车位等)
  2. 小区门禁:很多小区的门禁规则明确禁止复制卡片,违规使用可能导致门禁权限被撤销
  3. 办公场所:公司门禁卡通常有严格管理规定,私自复制可能违反公司安全制度
  4. 加密≠安全:M1 卡的加密早已被破解,重要的门禁系统建议升级到更安全的 CPU 卡或国密算法方案
  5. 分享范围:M1 卡的 dump 文件(含 UID 和密钥)绝不分享给他人

参考资料

  • 腾讯云社区:手机 NFC 模拟 M1 门禁卡、写 CUID 白卡的一些研究记录 → https://cloud.tencent.com/developer/article/2032581
  • CSDN:华为手机 NFC 模拟加密的门禁卡详细教程 → https://blog.csdn.net/a1318321/article/details/105141863
  • 知乎:由门禁卡来谈谈 IC/ID 复制卡的原理和知识 → https://zhuanlan.zhihu.com/p/654587508
  • 我的博客:华为 Mate30 NFC 功能异常的解决办法 → https://zhupite.com/android/huawei-mate30-nfc.html
  • NXP 官方:Mifare Classic 1K 产品规格 → https://www.nxp.com/products/identification-and-security/mifare-classic

文档信息