前提
学校的水卡是IC卡,用手机的手电筒强光照射卡片,出现一个小芯片以及一圈线圈的特征
大致步骤:

1.买个射频读卡器读取卡片,遍历法跑完找到密钥(一般一个校区的密钥相同,可以直接给舍友)。

2.再就是下载“MIFARE经典工具”(安卓的,一般上边好像没有,试着网页下载,一定是这个名字,不是其他名字)

3.写入密钥到文件,读取秘钥,截图所有的分区数据,用点水改变金额,以此来确定是哪个分区数据变化了。

4.看分区的加密方式,知道加密规则后就可以自行改写数据了

第一步:破解秘钥(不想买秘钥的可以选择闲鱼搜索“水卡”or“破解水卡”,之前查得价格好像 来去路费+15左右人工费)

设备:ACCR122U 射频读卡器(可以tb找老板要相关软件和数据包)

平台:windows7

软件:NFCGUI-PRO.exe

水卡有16个扇区,每个扇区第一个字段的16个字节是扇区的秘钥对,我们要是想要导出数据就要通过穷举的方法测试出秘钥对,只有知道秘钥对后才可以导出卡片内文件。

秘钥下图所示,就是12个16进制数值(0-9 & A-F )组合而成,所以随便写个循环,文件也可。

破解出来的秘钥如下图,此卡秘钥为534E6F2044FF。(一个学区应该是一样的,只要你们是都到一个充水卡机器上用,他的秘钥就是一样)
、手机读NFC取水卡信息

1、首先写入读取的密钥

由图1可知,其实也可以把所有的密钥写入文件中,单读取会非常耗费时间,他回一个一个去尝试。

点击右边“编辑/增加密钥文件”--选择默认的文件--点击打开密钥文件--随便在一个密钥后面--回车另起一行--写入水卡密钥--保存

2、读标签

主界面--点击“读标签”-选择默认密钥文件--点击读取--等待。。。。。。。。。--读取成功

截屏记录下现在的所有分区数据

(并且右上方可以选择保存现在的分区数据,避免后面改错,号可以恢复初始数据)

3、确定水卡分区

水卡16个分区,不同分区保存不同数据,图书馆信息或者身份信息等,所以需要判别哪个分区是水卡数据。

去刷下水卡,再如第2步,读取数据,查看分区是哪个数据变化了。

下图可以看到扇区7是变化扇区,其中扇区6、8、11都是00000,说明未储存数据。

由上可知秘钥,接下来手机下载“MIFARE经典工具”(安卓的,一般上边好像没有,试着网页下载,一定是这个名字,不是其他名字)

开启手机NFC功能,水卡放在手机后面,一般多为背面正中,主要可以通过无线充电器接触部位判断。(不要带手机壳等隔绝物,否则容易丢失信号)

进入应用,界面如下图:

主要用左上角:“读标签” “写标签” “编辑转存文件” 三个功能
、首先写入读取的密钥

由图1可知,其实也可以把所有的密钥写入文件中,单读取会非常耗费时间,他回一个一个去尝试。

点击右边“编辑/增加密钥文件”--选择默认的文件--点击打开密钥文件--随便在一个密钥后面--回车另起一行--写入水卡密钥--保存

2、读标签

主界面--点击“读标签”-选择默认密钥文件--点击读取--等待。。。。。。。。。--读取成功

截屏记录下现在的所有分区数据

(并且右上方可以选择保存现在的分区数据,避免后面改错,号可以恢复初始数据)

3、确定水卡分区

水卡16个分区,不同分区保存不同数据,图书馆信息或者身份信息等,所以需要判别哪个分区是水卡数据。

去刷下水卡,再如第2步,读取数据,查看分区是哪个数据变化了。

下图可以看到扇区7是变化扇区,其中扇区6、8、11都是00000,说明未储存数据。
三、破解算法

可以发现扇区7的三行数据,1、2行完全相同。

第三行会改变,我之前尝试发现的规律有:

第一、二行 为实际剩余金额,第三行 为机器充值金额。

大部分卡,前四数字解码规律为:倒置两位数--进行16制转换(下载个16进制计算器就行)

eg:如上图数据,三行前4个数值分别为

58 00 ->00 58 (16进制)->88(10进制)->0.88(金额)

58 00->00 58 (16进制)->88(10进制)

64 00->00 64 (16进制)->100(10进制)->1.00(金额)

可看出重了1块,剩余0.88元。

而后面完整的就需要慢慢破解了:

58 00 00 00 03 00 00 00 00 00 00 00 00 00 46 17

一般可以知道很多00没用,多刷几次水卡得到多点数据,也可以发现这个规律。

后后面03 和46 17的含义就需要破解,

网上简单的规则有:后面数值先16转10进制(这是肯定的),再通过加减计算,与金额有一个

最近更新