前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >RFID技术|门禁卡破解|IC卡破解学习过程

RFID技术|门禁卡破解|IC卡破解学习过程

作者头像
安恒网络空间安全讲武堂
发布2018-08-17 17:47:07
108.2K2
发布2018-08-17 17:47:07
举报

前言

安全不仅仅包含网络上的安全,在我们实际生活中也同样存在很多个安全相关的事物,可以说跟科技扯上关系的事物都会有安全问题,无线,蓝牙,手机,无人机,汽车。真正有问题的不是安全,而是人心。很多事物的设计之初都是没有考虑安全问题的,因为人心的不坏好意迫使去考虑它的安全问题。

硬件准备

破解设备

Proxmark3Easy

破解工具不一定是Proxmark3 Easy,只要是还能够获取和修改卡片数据的设备都可以,比如arc122u,arc122u只能读取和修改高频卡,有点不足

各种卡

准备一些ID,IC卡

区分ID卡和IC卡的方法

1.光照法

圆形大多是ID卡,方形大多是IC卡

2.NFC法 拿一部带有NFC功能的手机打开NFC,卡片靠近手机会响的是IC卡,不会响的是ID卡

知识准备

首先,门禁卡所用到的技术是RFID,具体详情可以看这里–>传送门,首先从频率上可以分为高频(13.56MHZ)和低频两种类型的卡,在这两个频率上又会分为多种类型的卡。常见的卡的有

高频

M1 S50卡

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

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

M1 UID卡

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

FUID卡

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

CUID卡

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

低频

ID卡

 ID卡是我们的俗称,内部芯片的全名叫做EM4100或EM41XX。每张卡出厂就有独一无二的ID号,不可改写。

T5577卡

T5577 卡是一种可以写入数据可以加密的低频卡。最特别之处是,写入ID号可以变身成为ID卡,写入HID号可以变身HID卡,写入Indala卡号,可以变身Indala卡。T5577一共有8个块,每个块只能存8位数。第0块是用来设置卡片类型和调制方式的,决定了卡片是ID卡还是HID卡,如果随意修改会导致读不到卡。最后一个块,在没有加密时是数据区,加密后,其数据就变成了密码。结构如下

破解

破解ID卡

安装驱动

驱动下载官网网址–>传送门 安装驱动文件前需要禁用驱动安装强制签名,方法–>传送门 驱动安装方法 我的电脑右键–>管理–>设备管理器–>端口下的设备右键–>更新驱动程序–>浏览我的计算机–>选择本地–>从磁盘安装–找到官方的驱动文件–>确认 驱动安装完成会显示图片上的样子,记住COM端口

硬件使用方法

Proxmark3 Easy

功能按钮有退出、取消、停止、强刷固件的功能,ABCD指示灯作为设备运行的依据,闪烁说明正在进行,完全熄灭或者常亮代表攻击失败、等待。全部熄灭表示已经停止运行了,直接重新拔插设备。

破解方法

读卡片ID号→换上T5577卡→把ID号写入卡片→完成 ID是没有密码只有卡号的,因此只要知道卡号就可以复制。 软件资料包–>密码: f8q4 打开官方软件固件\pm3-bin-2.5.0\win32(client+GUI)\Proxmark Tool.exe,箭头所指选择刚刚驱动安装的那个COM端口,连接Proxmark3,接入电脑后,电源指示灯处POW亮蓝灯,FULL亮绿灯,CHR闪烁微弱红灯。

在COMMAND TO SEND里输入hw tune测试天线谐振电压,高频超过5V,低频超过10V就可以正常使用。

把低频ID卡(门禁卡)放到低频读卡区输入lf search获取ID卡的信息,把卡号抄下来,复制时要用

把T5577卡放到低频读卡区,输入命令lf hid clone 0000001450

上述命令在左上方的命令树中都可以找到,左边有一些按钮和命令的介绍

ID卡复制就完成了

破解IC卡

IC卡破解思路

获取任意扇区的密钥

PRNG 漏洞攻击得 0 扇区密匙

  • 默认密码扫描获得密匙
  • 嗅探读卡机和卡片交互数据获得密匙
  • 模拟成 M1 卡刷卡后捕获密匙(挑读卡机,兼容性不好)

利用MFOC漏洞用已知扇区密钥求所有扇区密钥 用破解出的密匙把卡片数据读出导入电脑 把电脑中的数据写入UID卡中

第一步是最重要也是最难的一步,很多IC卡往往都是难以攻破0扇区的密钥而无法进行下一步。默认密码扫描看运气,PRNG漏洞攻击概率低,后面两个虽然概率高但是成本高且实施比较困难。   上面的Proxmark Tool是官方英文版GUI,还有国内中文版GUI(Proxmark3_EASY_GUI),中文版的GUI比较简单,不用记很多命令,原生态PM3指令台就是纯命令行模式,看起来也比较有逼格点。一开始我是根据资料用英文版的GUI,感觉不怎么好用,后来用了原生态后觉得原生态的好用多了,但是要记命令,命令忘记了就用中文GUI查命令ㄟ( ▔, ▔ )ㄏ。can't slect card这个bug也是在用了原生态之后才知道的。

PRNG漏洞获取0扇区密钥,486固件不掉线外,630之后的固件,有些卡可以破,有卡些会掉线并出现can’t slect card

获取0扇区密钥

扯远了,默认密码扫描hf mf chk *1 ? t

密码是默认密码的时候可以扫的出来,不是默认密码可以尝试PRNG漏洞获取0扇区密钥hf mf mifare

因为我小姐姐的,固件是630之后的,所以会出现很多

#db# Mifare: Can't select card,就放不了全部代码,查看固件命令hw version

Tip:固件版本是根据固件的日期来看的

我们可以测试一下我们拿到的密钥对不对,错误不会返回最下面那一行

知一求十五

获取到0扇区的密钥后我们就可以通过MFOC漏洞获取所有扇区的密钥(100%成功)

接下来导出密钥

导出后会在根目录生成一个dumpkeys.bin的文件,里面存放了16个扇区的密钥(16进制)

导出数据

拿到密码后我们就可以导出卡上的数据到电脑里

同样16进制打开

因为是测试卡,所以里面就没什么数据ㄟ( ▔, ▔ )ㄏ。

写入UID卡

下一步把数据写进写UID卡 Proxmark3不能识别、使用bin文件,需要转换成eml格式 第一个方法是运行下面的命令转成eml格式

第二个方法是运行dump to EML.bat脚本转成eml格式

写入到白卡(UID卡)上

写卡是没有回显的,只能通过读取的方式查看有没有读取成功,对比两张卡的数据就可以看到数据是一模一样的,克隆就完成了

总结

IC卡破解不止这一种方法,能力和设备有限,以后有机会会继续学习下去

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-08-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 恒星EDU 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档