IC客栈

 找回密码
 立即注册
搜索
查看: 34501|回复: 51

Proxmark3系列教程1——PM3用法

  [复制链接]

6

主题

37

帖子

198

积分

Lv2 略知一二

Rank: 2

积分
198
发表于 2018-9-11 06:30:59 | 显示全部楼层 |阅读模式
本帖最后由 飞舞 于 2018-9-11 11:21 编辑

1、PM3介绍
proxmark3是一款开源的RFID安全研究平台黑色按钮从图中我们可以看到左上方有一颗黑色按钮,这个按钮就是Proxmark3的功能键,主要用于启动嗅探模式以及停止进程功能,其中内置高频和低频天线,能够识别和读取大部分的RFID卡片,并且国产的PM3还可以通过转接头等工具和手机等智能设备进行连接,从而实现跨平台的使用。
1.png


2、RFID破解
通过ID与IC之间的差别进行比较时得知,ID卡内的卡号读取无任何权限,易于仿制.IC卡内所记录数据的读取,写入均需相应的密码认证,甚至卡片内每个区均有不同的密码保护,全面保护数据安全。所以这里对于RFID卡片的破解主要目标就是IC卡。
这里我们使用典型的飞利浦公司的16扇区64扇块M1卡作为实验对象,首先看一下这种卡片内部的数据存储形式。
2.png 3.png


常用的M1卡主要有荷兰恩智浦(NXP)公司生产的S50 和S70,都是属于MifareClassic家族的。以S50为例,国内兼容的最好的厂家是上海复旦微电子生产的FM11RF08芯片,区别是NXP原装S50芯片的前15个扇区的密码块的控制位是:FF078069,最后1个扇区的密码快的控制位是:FF0780BC。

国产复旦FM11RF08芯片的所有扇区的所有控制位均为:FF078069,其次看芯片第0扇区第0块的代码,从第10位开始看,如果后面是08040062636就是复旦的芯片,如果后面是08040023569就是贝岭芯片。

MifareClassic 1k共有16个扇区,分别为0-15个扇区;每个扇区有4块,分别为0-3块,每个块有32个字符;0扇区的0块为只读块,只存储厂商代码和UID号。

其他每个扇区的前3块为数据库,最后一块为密码块。密码块的前12个字符为A区密码,中间8个字符为控制位,后面12个字符为B区密码。

控制位主要是读卡器在验证卡的时候所用到的,不同的控制位表示不同的验证方式。
4.png

结合上图,我们可以来计算一下MifareClassic 1K的真实容量,首先1扇区的0块为只读,所有扇区的3块都是固定的没有容量,那么真实容量就是:
32(每个块的容量)×3(每个扇区可写的块)×16(共16个扇区)-32(除去0扇区0块)=1504字节
1504字节比1k多出了480个字节,所以MifareClassic 1K 的真实容量将近1.5K

默认口令破解
IC卡在制造时制造厂商为了方便会将除0扇区之外的扇区的所有密码默认设置为FFFFFFFFFFFF,这就是IC卡片的默认密码,我们可以使用PM3对卡片的默认密码进行爆破。

早期的PM3要把高频天线连接到Proxmark3的天线接口,并且连接完成之后要查看一下天线与PM3连接之后的工作电压是否正常;国产的PM3工具在设计时就将高频天线和低频天线安装到一起,在使用时只需要实用工具对其电压等进行探测是否正常。由于PM3是一款开源的硬件产品,最早在2000左右就已经开始有人开始对其进行研究,所以现在相对的技术已经非常成熟,在外文资料中经常会看到一个PM3对应的利用工具,这个工具分为两种,一种是命令行下的利用工具,另外一种是英文的可视化图形界面。
5.png

6.png



但是这两款软件都有其对应的缺陷,在经过国人的二次开发之后推出了PM3 GUI版的利用工具。
7.png
软件中继承了绝大多数常见的软件,能够对RFID进行快速攻击。

首先使用数据线将PM3与电脑连接,并在设备管理器中查找相对应的串口。
8.png


连接成功后检测工作电压
9.png

将IC卡放置在高频卡读卡器位置,天线电压发生变化
10.png

高频天线电压下降非常明显,这就说明我们现在所持有的卡片为高频IC卡,下面尝试对器破解,首先先读取卡片类型。
11.png

什么是proprietary non-iso14443a card found,RATS not supported?

有时候Proxmark3在读取部分MIFARE Classic卡UID的信息时,因为无法得到RATS的返回信息,会判断为非ISO14443a标准的卡.国内有太多MIFARE Classic类的卡,并不是NXP出产的,所以Proxmark3就会出现了这样子的提示!

同时还会提示是否是中国后门卡,这也是因为IC可修改UID的卡片是中国人首先研究出来的,所以被统称为中国后门卡。后面我们会有详细的介绍。
12.png


通常当我们拿到相关的卡的时候,我们应该先用chk命令去检测一下测试卡是否存在出厂时遗留的默认Key,因为使用默认的Key导致恶意用户可以使用其进行卡的信息读取以及修改。

已知的部分默认Key列表
nffffffffffff
nb0b1b2b3b4b5
n000000000000
na0a1a2a3a4a5
naabbccddeeff
n714c5c886e97
na0478cc39091
PM3程序中内置了一个默认密码列表,并会自动阐释使用者以列表中的密码进行探测。
13.png


并且通过默认密码扫描功能成功读取了除1扇区和2扇区的山区密码
14.png

15.png
这是利用嵌套认证漏洞使用任何一个扇区的已知密匙,获取所有扇区的密匙,此漏洞成功率较高,这个漏洞也被称作知一密求全密,我们现在已经知道其中的几个扇区的默认密码,使用PM3的知一密求全密的功能对扇区1、2进行破解
16.png

17.png

成功破解出1、2扇区的密码。

利用PRNG漏洞破解
MIFARE Classic采用的是Crypto-1私有加密算法,其算法的特点就是对称式的密码算法或者说是私钥密码系统。其主要组成部分是伪随机数发生器(PRNG)、48位的线性反馈移位寄存器(LFSR)以及非线性函数。由于算法当中的Filter Function的设计出现缺陷,导致改变线性反馈移位寄存器的后8位数值就有可能得到所对应的Keystream。这个缺陷类似于802.11b WEP算法,不同的明文有极高的可能性被相同的Keystream,使得整个加密算法出现了漏洞。

Proxmark3基于PRNG的安全缺陷是进行随机数碰撞,利用PRNG的安全缺陷我们可以很快速地得到对应的密钥,从而进行进一步的破解操作。

如果我们无法进行基于PRNG的安全缺陷破解的时候,很大可能是因为卡类增加了对应的机制(增加了防碰撞机制)以及修复了漏洞。

命令:hfmf mifare当输入命令后,需要耐心等待,整个过程花费的时间有快有慢。

结果出现后,首先要判断的是Found invaidKey还是Found vaidkey,如果是invaidkey的话,就是代表基于PRNG的漏洞出现的Key是错误的,并非正确的Key来的。但是最起码可以证明卡是存在PRNG漏洞的。接下来就是记住数值当中的Nt,这个数值将会被利用来进行第二次的PRNG漏洞的攻击测试

命令:hfmf mifareNT值

当输入命令后,窗口会再次进入进度状态,依然请记住耐心等待结果,并且如需停止,请按黑色按钮

因为基于PRNG的漏洞进行的破解,所以有时候会出现多次Nt的循环,这是很正常的结果,我们需要不断的利用Nt去进行真正Key的破解。整个过程是漫长而乏味的

RFID伪造
前面提到过中国后门卡,这里给大家讲解一下中国后门卡的原理的发展。

在早期RFID技术开始兴起时,卡片的价格还比较高昂,随着后期这项技术的关注程度越来越高,中国的很多厂商也考试对这项技术进行研究,并很快研究出了和M1系列卡片功能一致且价格极其低廉的卡片,但是后期有一部分人发现这种卡片在使用时有的需要实现相同功能,但是卡片又没有办法复制,所以就开始研究一种能够复制UID的卡片,并在后期成功研制出能够进行复制的卡片,这就是早期的CUID卡,这种卡片能够在正常使用时间内无限次的修改卡片的UID,并能够实现和市场上流通的卡片相同的功能。

后来很多厂商发现了这一问题,开始研究如何对后门卡进行预防,随后出现一大批能够检测中国后门卡的方案,其中大部分方案都是利用中国后门卡的自身的功能对其中的uid进行修改测试,如果机器判断能够修改UID,即停止对这张卡进行服务。

后来研究人员又对后门卡进行升级,然后推出了FUID卡,这种卡片和CUID卡相类似,但是它有一个特性就是在出场之后只能对其UID进行一次修改,一次修改完毕之后机会将0扇区锁死,无法再次修改,这种方案成功绕过了场上的检测机制。ID卡片的发展机制与之类似。

下面进行IC卡的复制实战,首先将卡中数据全部读取并写入到编辑区
18.png


放上空白的S50卡片,并点击克隆到空白S50卡片,待写入成功之后即可将数据写入到空白卡中。并能够使用复制之后的卡片进行河源卡一样的操作。

RFID嗅探
RFID嗅探也是一种非常常见的RFID攻击方式,对于一些卡片我们无法使用默认密码或者PRNG漏洞攻破其密码,但是我们仍然可以使用嗅探的方式对其进行攻击,从而嗅探出密码。

点击GUI软件中的现场有卡嗅探按钮,或者在命令行下输入hf 14a snoop

然后将卡片读卡器和PM3按照如下顺序进行放置
19.png


待嗅探完成之后按下PM3左侧按钮,并在命令行下输入hf list 14a命令查看嗅探结果。
20.png

并使用工具计算出扇区密码
21.png 22.png




评分

参与人数 1贡献 +5 收起 理由
暗号 + 5 赞一个!

查看全部评分

回复

使用道具 举报

1

主题

6

帖子

657

积分

Lv4 青出於蓝

Rank: 4

积分
657
发表于 2018-9-12 09:37:41 | 显示全部楼层
沙发如我。
PM3据说可以升级固件的,不知道哪里有安全的升级手法?升级后还能不能用这个软件呢?
回复

使用道具 举报

0

主题

2

帖子

20

积分

Lv1 初学乍练

Rank: 1

积分
20

会员勋章

发表于 2018-9-13 23:54:54 | 显示全部楼层
感谢大佬,前排占楼!
回复

使用道具 举报

0

主题

12

帖子

104

积分

Lv2 略知一二

Rank: 2

积分
104
发表于 2018-9-19 10:26:00 | 显示全部楼层
回复

使用道具 举报

0

主题

7

帖子

36

积分

Lv1 初学乍练

Rank: 1

积分
36
发表于 2018-10-2 22:30:06 | 显示全部楼层
老版本的可以刷固件,
回复

使用道具 举报

0

主题

39

帖子

171

积分

Lv2 略知一二

Rank: 2

积分
171

热心会员活跃会员

发表于 2018-10-5 23:07:48 | 显示全部楼层
内容有点多,不好意思,看起来太慢了
回复

使用道具 举报

0

主题

15

帖子

38

积分

Lv1 初学乍练

Rank: 1

积分
38
发表于 2018-10-9 23:17:00 | 显示全部楼层
内容比较详细,学习了
回复

使用道具 举报

0

主题

13

帖子

30

积分

Lv1 初学乍练

Rank: 1

积分
30
发表于 2018-10-11 17:10:31 | 显示全部楼层

感谢分享,学习了
回复

使用道具 举报

0

主题

6

帖子

21

积分

Lv1 初学乍练

Rank: 1

积分
21
发表于 2018-10-25 11:46:42 | 显示全部楼层
新手學習中,感謝分享
回复

使用道具 举报

0

主题

10

帖子

28

积分

Lv1 初学乍练

Rank: 1

积分
28
发表于 2018-10-26 20:37:20 | 显示全部楼层

需要回帖获得1积分谢谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|IC客栈

GMT+8, 2024-11-26 13:25 , Processed in 0.178690 second(s), 33 queries .

Powered by ickezhan

Copyright © 2017-2023, IC客栈.

快速回复 返回顶部 返回列表