RFID卡片、破解及设备


RFID卡片、破解及设备

射频识别技术

百度百科:

  • 射频识别(RFID)是 Radio Frequency Identification 的缩写。
    其原理为阅读器与标签之间进行非接触式的数据通信,达到识别目标的目的。RFID 的应用非常广泛,典型应用有动物晶片、汽车晶片防盗器、门禁管制、停车场管制、生产线自动化、物料管理。

  • 无线射频识别技术通过无线电波不接触快速信息交换和存储技术,通过无线通信结合数据访问技术,然后连接数据库系统,加以实现非接触式的双向通信,从而达到了识别的目的,用于数据交换,串联起一个极其复杂的系统。在识别系统中,通过电磁波实现电子标签的读写与通信。根据通信距离,可分为近场和远场,为此读/写设备和电子标签之间的数据交换方式也对应地被分为负载调制和反向散射调制。

RFID卡的区别

低频

ID卡

ID卡是我们的俗称,内部芯片的全名叫做EM4100或EM41XX ,频率是125kHz。每张卡出厂就有独一无二的ID号,不可改写。没有任何加密,只要知道卡号就可以模拟。ID卡可以作为一般的门禁或停车场系统的使用者身份识别,因ID卡无密钥安全认证机制,且不能写卡,很难实现一卡通功能,同时也不合适做消费系统。
特殊的还有250K、375K、500K频率的ID卡,原版proxmark3不支持这种卡的读写,祖国魔改版有些支持。

T5577卡

T5577 卡是一种可以写入数据可以加密的低频卡。最特别之处是,写入ID号可以变身成为ID卡,写入HID号可以变身HID卡,写入Indala卡号,可以变身Indala卡。

T5577一共有8个块,每个块只能存8位数。第0块是用来设置卡片类型和调制方式的,决定了卡片是ID卡还是HID卡,如果随意修改会导致读不到卡。最后一个块,在没有加密时是数据区,加密后,其数据就变成了密码。

国内这卡主要是用来模拟ID卡用的。

高频 -14443A

IC卡

IC卡又称集成电路卡,通常是在塑料卡片内嵌入一个或多个集成电路构成的PVC卡。集成电路芯片可以是存储器或微处理器。带有存储器的IC卡又称为记忆卡或存储卡,带有微处理器的IC卡又称为智能卡或智慧卡。记忆卡可以存储大量信息;智能卡则不仅具有记忆能力,而且还具有处理信息的功能。IC卡可以十分方便地存汽车费、电话费、地铁乘车费、食堂就餐费、公路付费以及购物旅游、贸易服务等。

M1 S50卡

目前最常见的高频卡,也是我们口中俗称的IC卡。M1卡科储存的数据大小为8k,分为16个扇区,每个扇区分4个块,每个块为16个字节,以块为存取单位。每个扇区都有独立的一组密码及访问控制,每张卡有唯一的一个32位的序列号。每个扇区的0,1,2块为数据块,用来存储数据,第3块为控制块,包括了密A、存取控制、密码B 每张卡的第0扇区的第0块用来春芳厂商代码,不可更改。

中间4字节控制字是管理密码权限,用来设置A密码和B密码的功能。默认不修改的时候,可以用A密码读写所有数据。A密码不可读出,B密码可以用A密码读出。密码不一定可以读取,由控制字决定。

这个卡又分 非加密卡 、半加密卡 和 全加密卡。

非加密卡中所有扇区的KEYA和KEYB数值都是默认值FFFFFFFFFFFF。

而加密卡中,其中有扇区的KEYA和KEYB不等于FFFFFFFFFFFF,部分扇区加密的卡称半加密卡,所有扇区都加密的卡称全加密卡。

M1 UID卡

全称l Mifare UID Chinese magic card(中国魔术卡),简称UID卡。

M1 UID卡是针对M1 S50卡特制的变种卡,用起来和M1 S50完全一样,只是多了一个功能,就是0扇区块的数据可以随意修改。因此UID号也可以随意修改,厂家信息也可以随意修改。UID卡修改0扇区0块数据是靠指令进入工厂模式,可以直接对全卡任何数据编辑,不需要密码即可读写卡,同时不怕写坏卡,即使写错0块,写坏扇区控制字,也可以随时修复回来,不影响后续使用。

CUID卡

CUID卡是针对UID卡做的优化。CUID卡可以重复修改0块,但是它和UID卡的区别是,UID卡是通过指令修改0块,CUID使用的是常规密码验证的方法写0块(写错了之后重写需要清卡),其他扇区和标准M1卡相同。缺点是,还是有可能会被检测出来,而且如果不小心写错了UID号的校验位导致无法读卡,没办法修复只能报废。

FUID卡

FUID卡是针对UID卡做的优化。新的读卡系统,通过检测卡片对特殊指令的回应,可以检测出UID卡,因此可以来拒绝UID卡的访问,来达到屏蔽复制卡的功能。FUID可以修改0块,但只可以修改一次,写错也没办法更改,也不能重复利用。修改后和M1卡完全一样,很难被屏蔽检测。

CFUID卡

鉴于FUID卡写错的成本太高,又发展出了这种卡。 CFUID卡 0扇区固化前可随意修改(相当于UID卡),固化(锁卡)后就跟M1卡完全一样。

侦测卡:

可用122等设备写入id号然后用来读取并记录设备发出的密码信息,用于侦测密码,但其功能鸡肋,前有pm3离线侦测,后有变色龙模拟加侦测,现在基本淘汰。

EMV卡

EMV规范是由Europay、Mastercard、Visa三大信用卡国际组织联合制定的IC(智能)卡金融支付应用标准,非接触传输协议方面也是遵循的14443A标注,是一种CPU芯片卡。

目前基于EMV卡的非接触式支付的实现有三个:VISA的payWave,MasterCard的PayPass以及银联的闪付QuickPass。目前从外观来看,银联发行的卡面有芯片的IC卡均支持闪付,部分银行支持VISA的payWave。

高频 -14443B

跟ISO 14443 -Type A 标准 的不同主要在于载波的调制深度及位的编码方式。TYPE A采用开关键控(On-Off keying)的Manchester编码,TYPE B采用NRZ-L的BPSK编码。

TYPE B与TYPE A相比,具有传输能量不中断、速率更高、抗干扰能力强的优点。RFID的核心是防冲突技术,这也是和接触式IC卡的主要区别。ISO14443-3规定了TYPEA和TYPE B的防冲突机制。二者防冲突机制的原理不同,前者是基于位冲突检测协议,而TYPE B通信系列命令序列完成防冲突。

目前的二代身份证,社保卡,护照都是基于此标准,研究这个标准最初是为了能读出身份证信息或者护照,其中曲折下一篇文章再说。

Proxmark3的14b部分有对 ST Microelectronics 公司的 SRI512卡 和SRIX4K卡 的特别支持。

NFC标签

目前有五种,分别基于14a, 14b,Felica ,ISO/IEC 15693 标准, 详见上面脑图。

CPU卡

CPU卡芯片是一个微处理器,它的功能相当于一台微型计算机。CPU卡可适用于金融、保险、交警、政府行业等多个领域,CPU卡的优点是存储空间大、读取速度快、支持一卡多用功能等特点,CPU卡从外型上与普通IC卡,射频卡并没有太大差异,但是性能上却有巨大提升,安全性和普通IC卡比,提高很多,通常CPU卡内含有随机数发生器,硬件DES,3DES加密算法等,配合CPU卡芯片上的COS操作系统,可以达到金融级的安全级别。

CPU卡在三个方面保证了安全:

  1. 对人:持卡者合法性认证:持卡者需要输入口令。

  2. 对卡:卡的合法性认证;内部认证。

  3. 对系统:系统的合法性认证;外部认证。

SAM卡简介

SAM卡:全称是Security Access module;是一种特殊的CPU卡;存储了密钥和加解密算法。

目前SAM卡分了很多种:

PSAM卡:终端安全控制模块,一般用于小额支付扣款中;

ESAM:厂商(系统)的SAM卡,用于设备的认证;

ISAM:用于充值;

在具体的实现中,会比较多样化。例如,有的设备认证并不是用ESAM卡,而是采用专用的模块。这样,就存在一个问题,即密钥用软件实现,可能会存在密钥泄露的问题;一种解决的方法是存储多组密钥,在随机数中指定采用一组密钥。

普通卡的发行一般采用密钥对唯一的物理卡号加密的方式。

高频卡 低频卡区分方法


门禁卡破解思路

ID卡使用手持机或者proxmark3等设备直接读出卡号即可模拟,最是无脑,CPU卡建议直接放弃。

所以这里的门禁卡单指Mafira系列。

IC卡加密方式

要知道怎么破解,先要知道他们是怎么加密。

目前常见的加密方式有这几种:

1.固定加密(校验码):

彼时来自东方的神秘技术 :中国魔术卡 尚未降世,就算复制出来原卡数据,每张IC的ID也是不一样的,厂家只需要校验UID跟校验位匹配不匹配就可以防复制卡了。

这种只需要UID卡复制其UID以及校验位即可完美破解。

2.一卡一密:

这种加密方式只是把校验码,改成了密码。刷卡机读卡是根据卡号算出这张卡独一无二的密码,然后再用密码访问/修改金额 。

运用UID卡复制,也可简单解决。

3.全加密:

即IC卡16扇区均加入密码,一般是一个卡商用同一密码,密码破解可通过 侦测卡或pm3离线侦测,密码已知后,写入普通卡或UID卡,即可实现复制。

后来又出现了一种 一卡一密+ 全加密的卡,不过在PM3及UID卡面前不过是土鸡瓦狗而已。

4.动态码加密:

每次刷卡后,卡内数据都会变化。

这种比较麻烦,可以分几种情况:

  1. 有些系统比较简单,每次刷新后某个数据加一,或者加固定数字,这种很容易发现规律和破解。
  2. 有些卡数据刷新后没有什么规律,明显用了某种算法,这种有能力的可以多刷几次,尝试逆向算法,不过难度比较大,
  3. 通过更改控制位或者修改卡内某些地方的数据来压制卡内数据的滚动,这是利用了早期某些厂家的读头不会校验计算后的数据是否写入成功的漏洞。
    4.一些系统识别到卡里数据是从未滚动过的初始值后,就不会再做任何校验,认为这是张新卡。这种只要记录下初始数据,复制卡每次刷卡后 重置数据即可。 (刚了解到还有一种GTU卡(gtu、guid、gid、gpu,处女卡), 可以锁定滚动码,让读卡器写卡失败卡)
  4. 一些系统识别到卡里数据是初始值后,还会进行校验,这时候我们可以使用同厂家同型号同版本的发卡器,通过修改发卡器发卡规则使得规则与物业的发卡规则相同来发卡。但是破解发卡规则同样很难,同时梯控厂家也不会向个人单独销售配套发卡器。
  5. 社工大法:通过保洁阿姨、保安大哥或者特别的技法获取 全通卡,就是给内部员工用的“万能钥匙”,这种卡一般不做加密,搞到之后复制一张基本就OK了。

注意事项:复制卡不确定是否是滚动码时, 复制后第一次刷卡原则上请刷原卡,不然数据滚动之后,原卡可能作废 。 卡与原卡仅一张有效

5.防复制加密:

用UID卡复制成功以后去现场刷卡没任何反应 或 就可以使用一次以后就给设备破环了拷贝卡的问题。

也存在几种情况,目前最常用的:

  1. 校验magic指令,UID卡会响应magic指令,所以防火墙只要发现有magic指令的响应直接ban掉改卡,于是CUID卡应运而生。
  2. 防火墙尝试修改卡的0扇区,修改成功则说明是CUID卡,ban掉。 这种用FUID或者CFUID复制即可。

6.复合卡加密:

利用ID或IC设备复制成功以后就可以开启其中一个地方,其他地方不可以同时开启。一般是IC+ID的结构,需要同时复制高频低频两个芯片。

7.CPU芯片加密:

这种分析数据时全是零, 可能目标卡是CPU卡模拟的M1卡 或是 修改了控制位的数据把卡号隐藏起来。 这种可以最多可以做到复制UID,模拟刷个门禁啥的,涉及金额的就别想了。

一般流程

流程图如下:

RFID设备

Proxmark3

价格:200-300元不等
优点:性能最好,解密能力强。
缺点:有一定使用门槛,价格稍贵。
简介
Proxmark3是由Jonathan Westhues为了他的硕士论文设计开发的开源硬件,其主要用途是实现RFID卡片 的嗅探、读取破解以及克隆等等操作。

提到RFID, 就不得不提Proxmark3,PM3 属于这个领域的大杀器,基本相当于kali之于安全,node之于前端。它可以嗅探、模拟以及读取多种不同种类型的RFID,同时它还有一个官方社区,这里有不少同样的爱好者在里面学习交流。

Proxmark,确切来说是prox(接近的),mark(标签),翻译过来的意思就是“不用接触,靠近就能刷的卡片”。

https://github.com/Proxmark/proxmark3

版本

Proxmark2

Proxmark是没有1的 ,Proxmark3 前身是Proxmark2。

Proxmark2版本是因为Jonathan Wesrhues 为了复制Verichip才应运而生的。 而Proxmark2的前身就是一个便携式的Verichips,该硬件可以读取并且重放Verichip的ID,如果利用天线去靠近Verichip,那样子设备就可以永远的保留ID在芯片里面,实际上Jonathan Westhues只是采用逆向工程把Verichip的频率和调制模式进行捕抓,从而进行回放操作。

Proxmark3 原版

原型机,长这样,开源硬件,电路板github有,已经过时了,不是商业产品,不卖。

其他版本都是基于此版的原理做的改板。

Proxmark3 RDV2

这个版本算是Proxmark3第一次商业化的版本,研发团队是Elechouse(深圳一家硬件厂商) 。 RDV2 即是 Revision Two(重制版2 )。

Proxmark3 RDV2 修改和更新了Proxmark3所有主要的硬件组件,包括微控制器,FPGA和闪存。

但是,最重要的变化是天线的设计和实现。 Proxmark 3的笨重,笨拙和未调谐的天线已替换为紧凑的,预先调谐的HF和LF天线,使用标准的SMA接口代替以前使用的USB-Hirose电缆。

这个版本预装了可拆的低频和高频天线,也是首个“ALL-IN-ONE”的版本。但是天线性能存在已知问题,并且会被继电器故障影响。

有些论坛说的血贵的就是这个版本,之前貌似上千,现在五六百左右吧。

技术规格

  • CPU AT91SAM7S512
  • Storage 512Kb SPI flash
  • Interface 4x mode LEDs, 1x button.
  • Battery 独立外接电源
  • 天线
    • LF 预装,可拆
    • HF 预装,可拆

Proxmark3 EASY

同样是 Elechouse团队的作品,是Proxmark3 RDV2 的阉割版,主要为了迎合中国市场在某宝卖的。

基本上某宝卖的都是基于这个版本或Proxmark3 RDV2 的魔改版。

比RDV2阉割了CPU、内存,还有外接电池。

技术规格

  • CPU AT91SAM7S256
  • Storage 256Kb SPI flash
  • Interface 4x mode LEDs, 1x button.
  • 天线
    • LF 需自行组装
    • HF 一体,不可拆

Proxmark 3 EVO

Proxmark 3 EVO(Evolution,进化版),是Elechouse 开发的最后一个Proxmark 3版本,更加的小型化,用了ABS 的材质,加了点灯,适配了安卓平台。

技术规格

  • CPU AT91SAM7S512
  • Storage External 2MBits / 512Kb SPI flash
  • Interface 1x RGB LED, 1x button.
  • 电源 外接独立电池
  • 天线
    • LF 预装,一体
    • HF 预装,一体

Proxmark3 RDV4

Proxmark3 RDV4是目前Proxmark3 平台 最新的版本,由 RRG团队开发,就是开官方论坛和固件很受欢迎的iceman 所在的团队 。 不过价格比较贵,基础版要一千五左右,所有外设买齐得好几千,需要海淘。

版本特色

  • 更小的体积 54 x 87 x 10mm (EVO是60 x 90 x 12mm)
  • 支持了 SIM/Smart 卡的嗅探和读取
  • 可扩展框架:
    • 可热插拔的中长距离天线
    • 增加了 蓝牙 和 wifi 模式

技术规格

  • CPU SAM7S512
  • Storage External 2MBits / 256Kb SPI flash
  • Interface 4x power LEDs, 4x mode LEDs, 1x button.
  • 天线
    • LF (125KHz): 70mm @ 65V
    • HF (13.56MHz): 88mm @ 44V

Proxmark3 各种祖国版

商家鼓吹什么3.0、4.0、5.0,终极 版本,其实各种版本基本都是Proxmark3 RDV2 或者easy 魔改的,选购时关注下cpu版本和内存 线圈和做工即可。

不过有时候会看到各种颜色,颜色只是印刷电路板用的阻焊剂(阻焊漆)不一样,油墨颜色不一样,不会影响实际功能和质量。

常见的电路板颜色有绿色、红色、蓝色、黑色。详细信息可以自行百度。原来的pm3是黑色的,看上去高端一些。现在新出了蓝色的,没别的原因,就是为了降低成本。虽然不影响质量,但是绿色、红色、蓝色的油墨用得比较多,量大价格就低。

不要听一些商家瞎吹做了什么升级,保证元器件没有任何改动。商家鼓吹蓝色是升级款,只是为了掩盖他的真实原因是为了降低成本,外加一波营销。

使用

中文GUI主要是对43a的IC卡和 低频ID做的支持,对其他协议的卡片都没有支持。

熟悉基本操作之后,想要探索PM3的魅力还是推荐使用 命令行, 命令行教程汉化可以看RadioWar的wiki RadioWar:Proxmark3命令帮助,其他教程也非常的多,可以自行查找。

打开方法是进入软件安装目录:

./prommark3.exe   com4   # com号会变,根据自己实际情况调整

变色龙 Mini ,ChameleonMini

在网购PM3时,经常可以看到有PM3变色龙一体机卖,当时询问js ,他们也是语焉不详 。所以这里再单独介绍下变色龙是个啥。

变色龙 ChameleonMini 是一款可编程的 NFC 安全分析工具的开源硬件项目,可模拟各种ic卡、侦测密码,可同时储存六组卡片数据随时可以手动切换,体积跟普通卡差不多方便携带。

ChameleonMini 常见的有两个版本 ChameleonMini Rev.E 与 ChameleonMini Rev.G 其中 Rev.G 是最新升级的版本,自带电池供电。

说白了,变色龙就是一张先进的侦测卡,不具备读写功能,需要配合其他读写设备使用。 PM3的现场嗅探功能其实比较弱,集成了变色龙之后就补齐了这个短板。

PN532

价格:40元上下(带TTL转USB)

优点:价格便宜,解密能力较好

缺点:速度较慢,需要自己连接TTL线,稳定性一般。

简单的说,就是协议支持的类型 PN 比RC系列更多。 PN支持NFC协议,RC主要是支持ISO14443A/B。

PN532支持的卡类型有限,甚至在曾经PN532并无很多好用的上位机程序,而多用于RFID开发中。这几年出现了M1T。是一款很好用的开源程序,支持了多种解密方式。但是限于硬件性能,解密速度上不如Proxmark3,但是在解密能力上在一般场景下不逊于Proxmark3。

M1T
M1T项目地址:https://github.com/xcicode/MifareOneTool

ACR122

价格:100元上下

优点:开发包完善

缺点:解密速度,能解密的卡类型都比较少。

iCopy3

优点:使用简单,解密类型比较多。

缺点:价格高到离谱,使用方式单一

这款设备主要是给锁匠用的,个人不建议购买。尤其是后期涉及到修改数据和数据分析时不如Proxmark3和PN532方便。

iCopy主要适合在室外时,不能携带电脑的操作场景。对于RFID爱好者来说,这样的场景应该不多吧。

对于解密能力,相信其还是不如Proxmark3的,毕竟单片机的计算能力有限,而且程序设计也不如电脑方便。

RC-522

价格:10元左右

优点:便宜

缺点:不支持写卡,只能阅读IC卡

大家需要注意⚠️

这是一款“读卡”设备,并不能写卡。因此需要修改数据和复制卡的还是不要看这一款设备了吧。

这款设备主要可以用于硬件开发,用在门禁上,电梯上这些只需要读取卡片的地方。

参考:
https://baike.baidu.com/item/%E5%B0%84%E9%A2%91%E8%AF%86%E5%88%AB%E6%8A%80%E6%9C%AF/9524139

https://pm3.echo.cool/index.php/2019/08/03/rfid%e6%96%b0%e6%89%8b%e5%85%a5%e5%9d%91%e6%8c%87%e5%8d%97-%e8%ae%be%e5%a4%87%e7%af%87/

https://pm3.echo.cool/index.php/2022/03/14/rfid%e8%ae%be%e5%a4%87%e8%b4%ad%e4%b9%b0%e6%8c%87%e5%8d%97/

https://ulyc.github.io/2020/01/18/%E5%B8%B8%E8%A7%81RFID%E5%8D%A1%E7%89%87%E4%BB%8B%E7%BB%8D-%E7%A0%B4%E8%A7%A3%E6%80%9D%E8%B7%AF-%E5%8F%8A-Proxmark3%E7%AE%80%E4%BB%8B/

https://pm3.echo.cool/index.php/2019/04/29/%e4%b8%80%e7%af%87%e6%96%87%e7%ab%a0%e8%ae%b2%e6%b8%85%e6%a5%9aid%ef%bc%8cic%ef%bc%8cm1%ef%bc%8ccpu%e5%8d%a1%e7%9a%84%e5%8c%ba%e5%88%ab/

https://www.cnblogs.com/sky-heaven/p/4704895.html

https://www.bilibili.com/video/av374364427/

https://blog.csdn.net/TonnyBrown/article/details/75200601

https://4hou.win/wordpress/?paged=13&cat=17


文章作者: leaves
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 leaves !
  目录