校园NFC卡片漏洞解析附带代码研究笔记
AI-摘要
GPT
AI初始化中...
介绍自己
生成本文简介
推荐相关文章
前往主页
前往tianli博客
注意事项
本次研究的目的是为了安全测试、漏洞分析或学术研究,且不涉及实际滥用
切勿用于违法用途,否则后果自负
前言
使用的探测设备是熊猫的GP3Ultra,点击前往查看信息
目前IC卡的漏洞可通过模拟诱导读卡器发出秘钥信息来顺利读取卡片内部真实数据
如果好奇的话,可以看一下理论部分了解一下大概
关于校园卡片的分析
我手里的这张校卡属于多功能卡,可以在校园内打电话,接水和吃饭,它用到了三个扇区
关于NFC卡片相关的理论知识,可以看下方的视频:
我们学校的水卡数据部分在解密和扣费后发现数据变化位于第四扇区
在测试过程中发现它使用了校验码,实现加密和避免数据错误

于是范围缩小到第四扇区分析,可以发现有两行数据除了结尾的起始符和终止符,都是一样的,而每一行里面都有两组相同的组合
于是经过多组测试,由于已经离校,我就拿测试数据给大家看看加密方式,下面是另一组

在多次测试下,我发现7对应8,A对应5,存在着一种对应的情况,于是将其写在表上,可以发现它采用了一种简单的逆序加密
0
F
1
E
2
D
3
C
4
B
5
A
6
9
7
8
8
7
9
6
A
5
不只是这样,它的数字部分同样进行了倒置处理
打开十六进制计算器,例如第二个图在测试时候是40块钱,输入十六进制A00F

十进制对应不上,在多次测试下,偶然发现输入4000时候为FA0,正好是A00F的倒置,于是同样尝试测试另一组,最终顺利破解

额外的分析
同样,我对卡片第四扇区的第一排感兴趣,它是一串由充值时间构成的代码,在我利用AI分析下,发现其采用了一种工业硬件交互间的算法
从而实现交互时候的稳定性,避免数据混乱导致无法使用卡片,一旦只改时间数据,同样无法使用,后来分析下,得出来它使用的是CRC-16算法,对算法感兴趣可以看看这个
分享成果
同样,下方是我这段研究过程中开发的一段代码用来进行测试,感觉现在没什么用了,就分享出来,给大家学习一下
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 华灵社区
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果