文中包含PN532和串口转USB在linux下的使用nfc-list的方法,不包含破解水卡的内容
学校就是一个大坑,要去开水房打水还必须等到星期三才能充值,每天充值的窗口都是人,排队真tm累。
后来想想,大不了就试试破解吧!
研究了一下水卡要专门在卡上开一个户(我的直觉就是在一个扇区上开),加上开水房没有网线,所以肯定是卡上离线内容,所以不用害怕。
Jason推荐我买ACR122,但是我觉得太贵了,但是我贪小便宜买了国产易火眼的ER302,但libnfc根本不认识这个玩意儿,然后研究了一下libnfc的支持列表,最后花90买了一个PN532和一个USB到UART的转接器(其实还可以更省钱,只要直接用普通的串口转usb就行了)。
但是接上电脑,发现用nfc-list
,还是不认。
然后我用nfc-scan-device -i
查找闯入设备,总算找到了。
然后跑去nfc-tools的wiki上看了一下,找到了有关配置文件的内容。然后我就跑去/etc/nfc
创建了一个libnfc.conf
(有些系统可能自带这个配置文件,我是连nfc目录都没有,自己建的),输入了如下内容:
allow_autoscan = true
allow_intrusive_scan = true
打开了闯入设备的扫描选项,所以现在不需要进入加-i选项就可以扫描到了。
但是我不喜欢让这个设备成为“闯入设备”,配置文件的wiki上还有一个内容,就是在/etc/nfc/devices.d/
这个目录下可以自定义设备。首先在libnfc.conf
里把allow_intrusive_scan
改成false
(不改也没事的),在devices.d
下新建一个配置文件,就叫pn532.conf
(此处名字随意)。输入以下内容
name = "PN532_UART"
connstring = "pn532_uart:/dev/ttyUSB0:115200"
optional = true
connstring
要改成你nfc-scan-device -i
中找到的那个。举个例子,我执行命令后返回的是
soha@Soha-02Laptop ~/xueXiaoFanKa % nfc-scan-device -i
nfc-scan-device uses libnfc 1.7.1
1 NFC device(s) found:
- pn532_uart:/dev/ttyUSB0:
pn532_uart:/dev/ttyUSB0:115200
所以我写的是pn532_uart:/dev/ttyUSB0:115200
。
保存以后,应该就能当作正常的设备使用了。
接下来就是跑密码了,运行mfoc -O xxx.mfc
,其中xxx.mfc是dump出来数据的存储地址。
在旁边放一会儿,很快就找到了密码并且把数据dump出来了。
然后找出水卡扇区的规律,就可以自己改价格啦!