Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

注意:提到的手环皆为小米手环的NFC版本,其他厂家不知道能不能模拟,但是经过实测小米可以完全模拟一张常见的智能卡

停更前的最后一更


前言

当你发现学校里有人使用手环刷饭卡,刷门禁,刷地铁,刷公交的时候,心里是不是觉得这玩意特别高大上

但是当自己买小米手环回来的时候却发现这张卡是加密的不能模拟?!?!?!

别担心,本文会告诉你为什么不能模拟,并且会告诉你如何绕过这个东西去模拟加密过的智能卡


接下来是文章目录
可以在 左边的导航栏进行翻页

1.理论认识

常见的智能卡有哪些?为什么这种东西还分有种类??

生活中最经常接触的就是方形的卡片和圆形的钥匙扣,如图所示

IC卡图片

方形的卡片常常用于企业/校园一卡通、公交储值卡、高速公路收费、停车场、小区管理,而圆形的卡片常用于勤门禁 酒店门锁 动物标签 产品生产管理,但是更常见于小区门禁卡

接下来让我们对这种卡片进一步的细分

我们老百姓能见到的卡我个人认为分成两种比较容易理解

一种是高频卡,常见工作频率为13.56MHZ,另一种是低频卡,工作频率在100~125KHZ,生活里能见到的频率基本为125KHZ

好,目前我们只需要知道我们能见到的基本就是高频13.56Mhz和低频125Khz的两种智能卡了

那我怎么知道我手头上的卡是那种卡呢?这种是XXXX吗?

如果不用那种专业的工具用什么方法可以判断智能卡的类型呢?

最简单的工具就是一台支持NFC的手机,然后安装Mifare classic tool工具(以下简称MCT)

打开手机的NFC功能,进入MCT,然后把需要判断的卡放在手机的NFC感应区(一般是手机背面)
贴上去时候我们看手机有没有反应

如果有反应了,屏幕下半部分会显示这张卡片的UID

MCT主界面显示UID

此时我们可以判断这张卡是一张M1卡,也就是最最常见的智能IC卡

但是有些卡片会直接跳到一个看不懂的界面

看不懂的界面

这个时候我们需要根据页面里面的信息来判断卡的类型了

先来看SAK值

SAK的值常见的有三种,一种是08,也就是常见的M1卡

一种是28,这种卡属于CPU模拟M1卡,有小概率能够被破解

最后一种是20,这种卡属于纯CPU卡,银行卡级别的加密,想都不用想

好的,那么我们需要判断的卡被MCT读取之后有反应的卡片都属于13.56Mhz高频卡,具体我们可以分为
M1卡,CPU模拟卡,纯CPU卡

那么MCT没有反应的情况就基本能肯定属于低频卡了(我家小区就是)

这种卡片需要特殊的读卡工具,比如PM3

PM3读取ID卡

那我们来总结一下,高频卡分为M1卡,CPU模拟M1卡,纯CPU卡

低频卡主要为ID卡

我们今天的主角————小米手环NFC版 ,只能模拟M1卡


2.写卡准备

确定好我们手头的卡能够被小米手环模拟之后,首先我们要确定这张卡是不是全加密卡(没有加密的卡是可以被小米手环识别后直接模拟的)

手机读卡尝试

首先让我们来尝试一下无脑读卡

打开MCT,点击“读标签”,只勾选“std.keys”后把需要模拟的卡片放在手机的NFC感应区,屏幕下部分出现卡片的UID之后点击下方的“开始映射并读取数据”,此时如果卡片里有扇区的密钥可以对应上“std.keys”里保存的密钥,那MCT就可以读取该扇区内容,然后界面大概是这样

mct读取扇区界面

第一次弄这些乱七八糟的是不是黑客感满满啊XD

然后我们现在来通过观察来判断这张卡是不是加密卡

观察0到15扇区,如果全部数据都显示出来了(如图所示),那么这张卡就是没有加密的

没有加密的扇区

如果有部分扇区显示扇区已损坏或者密钥不正确,那么这个扇区就是用密钥加密过的(如图所示)

有加密的扇区

没有加密的卡我们就可以直接用小米手环模拟辣!真省心,可以直接跳到无加密模拟环节了

密钥获取

首先让我们来谈谈加密卡
加密卡又分为全加密和半加密

半加密卡可以用PN532和acr122u或者pm3跑出密钥
但是全加密卡122U无法破解pn532有40%的概率,pm3可以解决非纯CPU卡
具体的密钥获取方法在网上的文章还是挺多的,以后可能的话我会单独出一张pm3的使用杂谈,这玩意已经能解决市面上绝大部分能破解的卡了
贴一个密钥获取的帖子

读取卡里的数据

在我们获取密钥之后,就可以用手机或者读卡设备直接把卡里的数据导出了。接下来我简要介绍一下手机读取卡里数据的方法

假设我们获取的密钥字符串为1234567890ABCDEF

在MCT中添加密钥

打开mct之后进入编辑/新建密钥文件,点右上角的+号,给这个密钥文件取个名字,把密钥123456789ABCDEF粘贴上去,点右上角的保存按钮,就保存好我们拿来读卡的密钥了

正式读卡

打开MCT,选择读标签,把卡贴在手机背面的读卡区,选择刚刚保存的密钥

一般可以把std.key取消勾选加快读取速度

点下方的开始映射并读取标签,就把卡里的内容读取出来了

评论