记一次M1卡破解过程——weigr的第一次博文

一次偶然原因,在网上看到关于一些Mifare Classic card卡的破解文章,发现成本不是很高,并且门槛也不太高(本人笨得很,没觉得低)觉得很有意思,准备入坑一波。正好我寝室有饭卡、洗澡卡和直饮卡,为啥不试一试呢,嘿嘿.说干就干!

于是乎就在网上各种收集资料,(本人懒得很,不想去图书馆查资料)首先我们得搞懂M1卡的内部结构是吧,不然无从下手啊,所以我们先从结构说起吧.

可能文章有点长,着急的话可以直接跳过前面三个点

1.M1卡的存储内部结构:

M1卡分为16个扇区,每个扇区对应4块(块0-块3),共64块,编号为0-63.第0扇区的第0块用于存放厂商代码,已经固化无法更改。其余区的第0-2块用于存放数据,块3为控制块用于存放密码A、存取控制、密码B,结构如下:

A0 A1 A2 A3 A4 A5     FF 07 80 69    B0 B1 B2 B3 B4 B5

(密码A 6字节)     (存储控制 4字节)    (密码B 6字节)

并且每个扇区块3中的密码和存储控制全部都是独立的,独立控制本扇区的各种操作,每个扇区都能实现不同的功能,所以广泛用作一卡通。存储控制里面4字节的具体含义我也不是很清楚(不影响我们破解),所以就不说出来误导大家了。

卡中每个块包含16字节,所以M1卡的容量=16扇区*4块*16字节=1024字节=1k  (M1卡的由来)。

知道了M1卡的大致结构我们就可以开始进行破解了,我在此收集了几种常见的破解手段。

2.M1卡的破解原理:

1)暴力破解:

暴力破解是最简单粗暴、不需要多少技术含量的,就是比较费时,但这并不妨碍大家对它喜爱之情。因为M1是被动卡,需要读卡器为之供能,一旦读卡器切断电源,卡中临时数据就会丢失,所以无论试错多少次密码都不会被锁定。特别是一些厂商偷懒用弱密码,花不了多少时间就能破解。

2)克隆卡片:

这算是最简单又实用的方法了。因为M1卡加密扇区里面保存着各种数据,所以可以克隆一张带有同样数据的克隆卡。这就会用到一种叫UID卡的特殊M1模拟卡。前面说过,每张卡在0扇区的0块都会存放厂商代码,所以里面也保存了UID编号,是无法修改的。但是这种特殊的UID卡该区域没有设定保护,可以随意修改UID,因此可以制作一张与目标卡数据完全相同的克隆卡。

3)重放攻击:

重放攻击是基于M1卡的PRNG算法漏洞实现的。当读卡器读卡时就会产生随机序列,但卡本身不带电,所以每次断电后在重新连接,就会生成一模一样的序列,所以可能把这个序列算出来。只要控制好时间就能知道当卡获取能量后某一刻时间的随机序列,从而实现修改数据。

4)密钥窃听:

利用工具Promark 3可以嗅探M1卡(即便是全加密卡)在和读卡器进行数据交换时的数据,然后利用XOR工具就能把扇区密钥算出来。然而Promark3对于我来说太贵了(可怜的学生狗wuwu~)。

5)验证漏洞:

当读卡器读卡的扇区时,卡会发一个随机序列给读卡器,读卡器收到序列后会利用自身算法加密该随机序列再反馈给卡,卡片接收后再用自己算法计算,如果结果一致就认为该读卡器是合法授权的,然后开始进行数据传输。这就产生了问题:当读卡器访问另一个扇区时,又会重复上述步骤,而此时卡片与读卡器之间的数据交换已被算法加密过,而这个算法又是由扇区密钥决定,因此就会导致这个密钥泄露。所以只要知道一个扇区的密钥,就能破解卡。(只要不是霉运如我遇到全加密卡 (╥╯^╰╥))

3.M1卡的分析原理:

1)比对法 :

比对法就是将已知数据换算成十六进制,寻找卡片中能与之对应的数据,从而确定卡片中对应存储位置所存储的数据的意义,或卡片中变化的字节转成十进制,判断是否相应的数据信息。最常用的比对值当然是余额,还有当前的消费金额。

2) 试错法:

针对一些不明含义的字节,通过修改已知意义的字节来确定其关联性,找出不明意义字节的计算方法。比对法有时并不能分析出所有数据块的数据,这时就可以考虑试错法来确定隐晦数据和哪些字段有关联。

4.好戏开始:

前面说了那么多废话(求原谅),这哈开始正式破解之旅了。

本着能省则省的学生党原则,我一开始没想用PROMARK3、ACR122来破解(毕竟得上百元啊,心疼)。于是在网上找半天破解软件,发现 MIFARE经典工具 还不错(操作界面如下)

于是急忙下载安装到手机上(PS:要求你手机有NFC哦),当时我就觉得破解没什么难的啊。安装完成后迫不及待地拿着洗澡卡就打算进行破解,实际操作才发现根本不是那样的啊,除了读出来个UID其余什么都么有,自带的字典根本没有好大用处。就算你有好的字典,手机跑起来也很慢,所以被逼无奈,只好向ACR122大佬低头,狠下心买了它(贼气,某宝上有卖的,我买成170,附带破解软件。POR3对于我是天价更买不起)。下面的就是它了

——杀器在手,天下我有。

照着卖家的教程,安装好送的驱动(网上也有很多可以下载,但我觉得卖家的靠谱些),在电脑上连接好宝贝,检测无误可以使用(贼激动)。真是万事俱备,不欠东风。反手拿起我的洗澡卡就放在了宝贝上,然后打开卖家送的破解软件,就是下面这个东东:

结果很玄幻!破解失败!(欲哭无泪——!我要你这机器有何用) 我当时一脸懵逼,毫无办法,只好向店家求助,结果店家给我了一个加强版破解软件再让我试一试(wc为啥不早些拿出!)。但实话实说在那一瞬间我感受到了很大的希望,想来肯定没问题。于是又再次尝试,结果还是血崩,还是失败。话说加强版长这样:

默认密码破解失败,因此我又把“使用穷举法解卡”选项开启了。当时也比较晚了,于是乎就把电脑开着慢慢破解,然后我就睡觉去了(期待成功)。结果二天我起来一看还在破解(woc一晚上时间都没弄出来,难受),顿时无力感油然而生,真是老话说得好哇—一“一日之计毁于晨”。遂又向卖家求助,心想他肯定还有终极版破解软件没给我,结果答复我可以考虑买个PRO3。我真是¥#@...(有钱我早买了好吧(╥╯^╰╥),不谈钱 我们还是好朋友),至此我是彻底绝望了。

不过我还是不甘心呐,难道一百多就买个废品吗。不行,我还得继续,然后我找来室友的洗澡卡挨着试,结果也是不言而喻的,我被卡完虐。(这卡也太顽强了吧)

怎么办呢。焦头烂额之际,咦..我不是还有直饮水卡吗?(其实我还有饭卡,但饭卡是联网的,就算能破解,你只要敢改,立马就有人来查你水表,当然你能拿下后台另当别论,反正我技术达不到也不敢做。)要不拿来试试,试试就试试。果然天无绝人之路,成功破解了(hah..别提多高兴了)。破解成功之后我想了一下,是不是破解成功就能用呢?万一这个饮水机也是联网的呢,那不是血崩了?于是我反复检查了饮水机四周,发现除了电源线、进水管之外并无其他多余的连线,因此放心了一点,但还是有点怕(我胆小,毕竟不想让大学生活提前结束),然后我又找到饮水机上的生产公司,进入他们官网查询该型号机器,发现是我多虑了,哈哈。至此才完全放心(进入官网时发生了有趣的事,但看这篇幅我也不敢再延伸了)

紧接着就是克隆卡片了,为了让更明白地阐述,在此我把完整破解->克隆图示发出来(卖家送的,有点用)

至此卡片克隆也完成了(参考上面图示)。但是光克隆岂不是很不给力吗,我们得知道扇区里面的数据代表什么含义啊,余额我们能随意控制才行啊。这里我们就得用到一个M1分析软件(M1卡分析助手)了。复制成功后应该是这样子的:直饮水原卡(以下简称原卡)与直饮水复制卡(以下简称复制卡)的数据应该一致(可以看到这水卡除了0、1、2扇区其余扇区都没有数据),如下图

之后我又用复制卡去接了点水,改变了一下余额,再与原卡对比结果:

图1 

可以看到1扇区的2、3行数据变了且这两行数据一样,我们有理由相信这与余额相关。然后我用软件分析图中1扇区中第2行数据(D5 19;2A E6),发现D519按位取反刚好等于2AE6,然后再看逆序值(19D5)的十进制为多少(一般余额对应的十六进制数据都是以逆序值存放),巧了,十进制刚好为6613,正好是我水卡的余额66.13元(激动hahah..)。

因此我可以认定1扇区的2、3行就是余额的信息。为了验证正确性,我直接将2、3行的D519改为了FFFF最大值,对应的十进制为65535(最后两位是小数,其实是655.35元),然后对应的2AE6改为0000(按位取反),于是我又屁颠屁颠拿去饮水机上刷,结果竟然报错。为什么呢?难道是图1的2扇区红字部分的问题?(除了1扇区就只有2扇区有不同之处了)要是这样就麻烦了,还得破解2扇区数据的意义才行。但是除此之外有没有其他可能呢?我想了一会儿,会不会是数额改得太大了呢?于是乎我将余额65535又改为50000也就是将FFFF改为50C3(50000对应十六进制的逆序值),再拿去刷——成功!哈哈...

5.总结

破解到此基本告一段落,花费了我将近一下午时间(还不算收集资料时间呢,笨笨的我,没得法)至于那些无关紧要的数据信息我会继续研究,以后再更新。

我之所以决定写下整个过程:一是因为我长期在各个论坛“收刮”好的文章、资料,甚有收获,所以这次就轮到我尽一点绵薄之力来帮助其他像我一样的人吧;二是趁着这个机会巩固加深一下自己的理解,也是一举两得吧。

由于我是第一次写博文,上传图片按钮我都找了半天(话说就不能整大些图片按钮咩),中途还突然“闪退”一次,给我吓得遭不住,都写了一半了呢。还好有自动保存功能,不然我真没毅力再写一次了,写博文真是个体力活呢,感觉比破解本身还累多了...

也因为是第一次写这个,肯定有诸多不足,见谅!

6.参考资料:

链接:http://pan.baidu.com/s/1dE0VWnJ 密码:2q4q

链接:http://pan.baidu.com/s/1cmzkIU 密码:ale3


时间: 2024-08-02 02:50:53

记一次M1卡破解过程——weigr的第一次博文的相关文章

M1卡说明及使用proxmark3破解方法

原文: http://www.cnblogs.com/h2zZhou/p/5250710.html 看了网上写的一些关于M1卡的文章,多数有些误导之嫌.首先谈谈M1卡的规格,M1卡的容量为1KB,好多网上写8KB,这里其实是有个误区,应该是8K位.1Byte=1B=8位.其实也就是说8k位想到于1KB的容量,也就是说一个4GB的U盘的存储空间约等于四百万张m1卡的空间.        虽然空间比较小,但是里面其实学问很大,我们来看一下M1卡的内部结构.M1卡分为16个数据存储区,通常我们称为“扇

【原创软件】M1卡充值软件,水卡破解复制修改必备!【吾爱首发】 By:Sunshines

声明:这个软件发出来是出于学习和研究的目的,请勿用于违法行为!前几天看了论坛上的xx卡破解教程,自己也买了个PN532来玩玩(昨天刚下单ACR122U-A9,正在路上,玩的好的话可以试试PM3),然后把两个学校的两张卡给破解了.破解之后呢自然会想去做一些羞羞的事情,比如change一下money什么的,无奈光改金额不行,还得算出校验位是怎么来的,然后每次想把money改成多少多少,都要拿系统自带程序员计算器在那里按来按去,很是麻烦,对于我这种懒人来说,必定要偷偷懒的(同时也方便了要改很多卡的人,

射频识别技术漫谈(15)——Mifare1的安全性及7字节序列号M1卡

Mifare1的安全性主要指卡中数据的安全性,要求卡中的数据不能被非法修改或窃听.数据的安全性主要使用加密技术来保证,加密技术有两个关键因素:加密算法和密钥.现代加密技术的一大特点是加密算法公开,如果加密密钥和解密密钥相同,则称为对称加密,密钥不能公开:如果加密和解密密钥不同,则可以公开其中一个密钥(公钥),另一个不公开(私钥).加密破解的实质就是如何获得不公开的密钥. Mifare1中使用了一种称为"crypto1"的加密算法.遗憾的是,这是一种不公开的私有算法.就本人目前所知,这种

RFID安全之某学校饭卡破解

继上次水卡的成功破解,对学校的饭卡也有点想要研究的念头了.既然这样,打铁趁热马上开始动手,先拿出MCT测试一下卡类型和扇区情况先.(不了解相关工具和术语的去看看之前的水卡破解案例以及M1卡结构和破解探究) 按往常惯例先让主角上镜. 正面 背面 经MCT的检测,结果发现饭卡也是Mifare Classic 1k的卡. 饭卡检测结果 那既然是M1卡,依旧来尝试读一下扇区,看有没有存在默认密钥.读取之后发现,卡片除了0扇区都被加密了,看来安全性还不错.可惜M1卡被破解,全部扇区加密都能够XOR算出密钥

IC卡、M1卡、CPU卡、SAM卡、PSAM卡的联系与区别

一. 技术方面(非接触式IC卡)  1. 逻辑加密卡又叫存储卡,卡内的集成电路具有加密逻辑和EEPROM(电可擦除可编程只读存储器).  2. CPU卡又叫智能卡,卡内的集成电路包括中央处理器(CPU).EEPROM.随机存储器(ROM).以及固化在只读存储器(ROM)中的片内操作系统(COS),有的卡内芯片还集成了加密运算协处理器以提高安全性和工作速度,使其技术指标远远高于逻辑加密卡. 3. CPU卡由于具有微处理功能,使得在交易速度以及数据干扰方面远远高于逻辑加密卡,且允许多张卡片同时操作,

创见WiFi SD卡破解之路

我最近搞了张Transcend WiFi SD,颇为得意.它可以让我在几秒钟内将单反(奶昔,相当便携)中拍摄的照片传到任何支持wifi的设备上.我很喜欢在旅途中拍摄和分享图片,所以对我而言,可以无线传输图片的SD卡是一个很好的解决方案.确实如此!(以后也是!).不过移动应用程序可以好好改进下(下载7MB的图像仅仅为了渲染?点击下载后还要重新下载一遍!谁能告诉我这是为什么?),但是,嘿,它能够完成任务! 这个小小的设备不仅可以存储16GB数据(还有32GB版本),而且还是一个嵌入式系统,能够运行应

RFID消费终端设备安全风险之某高卡破解剖析

之前我们发布了一篇名为"从现实中的案例关注RFID消费终端设备安全风险"的文章,当中提到了关于SAM所带来的一些真实案例.现在我们就接着说一下关于国内RFID黑产的一些案例,从而让大家更加清楚明白SAM的安全的重要性. 在接触RFID安全的时候,认识了一位在国内搞RFID黑产的朋友,从他手中我获得了一份所谓的"*高卡远程破解方法"的文档.所以基于文档的内容我写了这一篇破解过程的剖析. 以下为"**卡远程破解方法"原文以及过程剖析: 1.首先通过R

RFID之linux下利用PN532对M1卡(饭卡,

2014-12-20 这篇文章主要是讲 linux下的对IC卡(M1卡)的无线hack技术. 设备:硬件方面,PC机一台,PN532开发板一套. 软件方面:mfoc,mfcuk. 本文用不到mfcuk的,我还是给大家科普下吧.原理这些我不讲啦,讲应用吧.mfoc,知道卡的一个密码,以超短时间破解其他所有密码.mfcuk,通过随机数,暴力破解密码(别认为是随机数充当密码),一般30分钟内能破解,不能破解的话说明你运气不够,换个时间 忍不住还是说说M1卡吧.M1卡,一般国内喜欢用1K卡,1K卡里面有

RFID安全之某学校水卡破解

如今网络上能找到RFID安全类的信息非常的少,原因我就不说了,大家也明白.大家如果要研究RFID安全可以去RadioWar或者Freebuf多看看相关的文章,我在后面也会放出一些相关的资料供大家下载研究,资料大多数是外语资料,所以说外语一定要学好! 这次案例的主角是某学校可怜的水卡(热水卡),先小小地上镜一下先. 用NFC手机上安装的MCT(Mifare Classic Tool)查看,水卡的确是Mifare Classic 1k类型的. 此次破解用到的工具有:电脑一台,ACR122U一台,带N