本文转载介绍一个NFC卡制作的全部流程,并对制作过程中的读写原理进行探讨。在逆向分析中,我们会接触多种多样的工具,在使用工具的同时,希望大家思考一下原理,便于更深入的进行了解和学习。
0x1.工具及卡片介绍
先说一下会员卡,该卡片是M1卡。所谓的M1芯片,是指菲利浦下属子公司恩智浦出品的芯片缩写,全称为NXP Mifare1系列,常用的有S50及S70两种型号,截止到2013年11月4日,已经有国产芯片与其兼容,利用PVC封装M1芯片、感应天线,然后压制成型后而制作的卡即是智能卡行业所说的M1卡。
工具是读写器硬件设备ACR122U以及配套的用于读写的PC软件。 ACR122U NFC读写器是一款基于13.56 MHz非接触(RFID)技术开发出来的连机非接触式智能卡读写器。它符合ISO/IEC18092近场通信(NFC)标准,支持Mifare®卡、ISO 14443 A类和B类卡、以及全部四种NFC标签。
为了确定该读写器的主芯片,将其拆解,确认读写的主芯片为NXP(恩智浦)的PN532:
0x2.卡片信息读取
0x2.1 卡片信息读取
该设备的提供的读取程序为M1卡服务程序:
电脑安装驱动以后,连接读卡器,卡片靠近读卡器,选择读卡器后,点击开始破解,即可等待破解完成。完成后我们就可以拿到M1卡的二进制文件信息,文件扩展名为dump,大小为1KB。下图为读取到的dump文件及分析结果标注:
我们先了解一下M1卡的存储结构,M1卡分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,存储结构如图所示:
其中第0扇区用于存储卡片的UID信息以及厂商写入的信息,一般不需要我们分析修改;
每个扇区的块0、块1、块2为数据块,可以用于存储数据;
块3位控制块,由密码A、存取控制(控制字)、密码B组成,且每个扇区的密码和存取控制都是独立的,即 每个扇区都有自己的密码。
接下来我们看一下我们读取到的数据,将dump文件使用十六进制编辑器打开
第0扇区我们暂不理会,显然,数据基本存储在第10扇区与第11扇区,且两个扇区的控制块是相同的,后续我们着重分析这两个扇区。
0x2.2 PN532读写过程
对于PN532而言,读取过程又是怎样的呢?我们先来了解一下PN532。
PN532由NXP出品,是一款高度集成的载波的13.56MHz传输模块,基于80C51内核有40KROM、1KRAM。 使用不同的固件支持13.56MHz频段的无线协议。
这里我们介绍一下ACR122U对M1卡的读写卡流程:
PN532读写过程均已经介绍,卡片信息写入时仅介绍操作,不再赘述原理。
0x3.卡片数据分析及修改
分析过程我们需要取多组数据,进行分析来确认不同数据所代表的的意义,此处我们仅分析第10及第11两个扇区。
根据上图内容,我们可以看到,10扇区的块0没有数据,10扇区块2和11扇区块0相同,11扇区的块1和块2相同,所以我们仅仅分析10扇区块1,11扇区块0和块1。接下来我们对比不同余额时对应的数据:
根据数据结果,我们可以看出,在消费后,只有11扇区块1(块2相同)发生了变化。
其中余额319.4及298.6,以分为单位是31940和29860,转化为十六进制为 0x7CC4和0x74A4,恰好可以与11扇区中块1中的数据对应。我们继续看下扇区10块1
至此数据基本分析完毕,我们来尝试写入看结果如何。0x4.卡片信息写入
我们把余额改为600,也就是60000分,十六进制为0xEA60,取反为0x159F,修改如下: 修改后保存dump文件,使用MiFare Card Programming工具将其写入到卡中
需要注意的是,每个扇区需要有本身对应的密码才可以写入。
【补充】
写入更改后的余额后,测试可正常消费,为避免因卡号记录追溯到用户信息,可以更改卡号信息,即扇区10块1中的6DB7可以更改,更改后需要同时更改块1的末尾数据,因为末尾的数据51为校验位,是块1的前15位数据取和后获得的值,请大家根据情况自行理解分析,此处不作赘述。
感觉NFC的技术硬件原理讲述的还是挺详细,方便理解各种卡。目前类似的卡的金额等只存储用户名,余额都在他们PC里面。
- 广汽集团年营收1068亿:同比降17% 扣非后净亏43.5亿 曾庆洪刚退休
- UFS 3.0闪存有多重要?助力NEX 3 5G拿下安兔兔跑分榜第一名手机闪存「UFS 3.0闪存有多重要?助力NEX 3 5G拿下安兔兔跑分榜第一名」
- 圣安地列斯2.0汉化补丁手机版 v4.8.2圣安地列斯手机版「圣安地列斯2.0汉化补丁手机版 v4.8.2」
- 光电股份:3月31日融资买入943.15万元,融资融券余额2.06亿元
- 不知细叶谁裁出 后排三星大蜘蛛#低成本cos #cos #蜘蛛女皇 #抽象三星手机怎么关机「不知细叶谁裁出 后排三星大蜘蛛#低成本cos #cos #蜘蛛女皇 #抽象」
- 分享| 日本的高球礼仪及注意事项手机买保险「分享| 日本的高球礼仪及注意事项」
- 中超-广州夺冠奖金累计近亿 欧冠巴萨5-0 米兰胜搜狐手机新闻「中超-广州夺冠奖金累计近亿 欧冠巴萨5-0 米兰胜」
- 「你若盛开,蝴蝶自来」| 高瓴创投、真格基金合伙人眼中的 AI 创业新机遇
- 小米之家(贵州贵阳观山湖区美的悦然广场专卖店)小米手机专卖店「小米之家(贵州贵阳观山湖区美的悦然广场专卖店)」
- 昆虫显微成像手机DIY「昆虫显微成像」
- 华为Mate60RS非凡大师怎么设置呼叫转移【教程介绍】华为手机怎么设置呼叫转移「华为Mate60RS非凡大师怎么设置呼叫转移【教程介绍】」
- 腾讯生存类手游手机版有什么2023 腾讯生存游戏合集生存游戏手机版「腾讯生存类手游手机版有什么2023 腾讯生存游戏合集」
- 来青浦看上海车展,今年有这些亮点!
- 反诈丨“1元购”新款苹果手机广告能信吗?一元手机「反诈丨“1元购”新款苹果手机广告能信吗?」
- 北京:开行10条扫墓公交专线 陵园周边挖潜增设停车位
- 4款主流VR一体机横评:越贵不一定越好vr手机「4款主流VR一体机横评:越贵不一定越好」
- 你收到的垃圾短信,90%来自三大运营商?手机欠费能收到短信吗「你收到的垃圾短信,90%来自三大运营商?」
- K米(KTV点歌神器) for Android v5.3.5 安卓版手机ktv「K米(KTV点歌神器) for Android v5.3.5 安卓版」
- 手机能读取ntfs格式的移动硬盘吗 ntfs格式移动硬盘如何在mac使用手机硬盘「手机能读取ntfs格式的移动硬盘吗 ntfs格式移动硬盘如何在mac使用」
- 京东分期免息要手续费吗?如何分期付款?京东怎么分期买手机「京东分期免息要手续费吗?如何分期付款?」
- 1001花期+路线!「追花日历」带你轻松开启赏花时刻!
- 1002暴雪已着手开发《军团再临》重制版,新游戏内容被发现
- 1003莎拉·布莱曼领衔,30台64场剧目汇聚北外滩友邦大剧院
- 1004京东首推裸眼3D技术:无需眼镜,品牌展示进入新纪元裸眼3d手机「京东首推裸眼3D技术:无需眼镜,品牌展示进入新纪元」
- 1005美财长谈泽连斯基:“一个被馊主意左右的演员”
- 996疑似系列终结?电影《电锯惊魂11》项目停滞中!
- 997在北大,看电影、聊哪吒
- 998苹果怎么一键锁屏手机一键锁屏「苹果怎么一键锁屏」
- 999充电汽车充电多少钱,电动汽车的电瓶充电满电需要多少钱一度电可以充多少次手机「充电汽车充电多少钱,电动汽车的电瓶充电满电需要多少钱」