環境及工具
Win xp pro sp3 M1卡破解工具 NFCGUI-Pro.exe HexCmp.exe
先來看看我們的主角
起初剛辦卡的時候,辦卡阿姨說辦一次卡充一次錢,不提供續充!果斷不淡定了啊!用M1卡破解工具成功破解key,源數據dump下來一份。 之後就沒管了,想著先用著,沒有了再說!就在昨天充電的時候發現刷不上卡了,想著是沒錢了,回來dump下數據發現真的是沒錢了。
沒辦法,還要充電呢( ▼-▼ )。首先想到的是重放,這個最簡單省事(不過也可能不成功)。還記得最初辦卡時,dump下來的源數據吧,原封不動再寫進卡里( ̄▽ ̄)"
上圖中,10 27是十六進位顯示的,還有數據的存放到卡里是倒序寫入,所以正確的數據是0×2710即10000(十進位),再加上保留2位小數,那就是100.00正好是辦卡時的錢數。中間的EF D8是校驗位這個下面在修改任意金額時會分析。
寫入工具用的是RadioWar出品的NFCGUI-Pro1.5
注意幾點:
1.一定要選擇Key B寫入 2.兩個文件都是選擇的源dump的數據 3.看到最下面顯示Done 64 of 64 blocks write.說明寫入成功了
既然寫入成功了,懷著激動的心情跑到刷卡機上測試,yeah,重放成功!( ̄▽ ̄)"
既然重放可以,那再來試試修改任意金額。想修改任意金額必須要搞定它的校驗位,要想分析校驗位就需要大量的數據來支持。下面是幾組數據對比。
100塊:
99.5塊:
先搞定這兩組數據,(外面實在是太熱了37度~~~T_T)
上面的兩組數據整理如下:
看到上面的數據是不是覺得這校驗位弱爆了,可它就是這麼弱~~~為了方便我總結出一個公式:
((65535-55535)/T)*0.5=100。
有了公式下面修改任意金額就方便多了,就先修改為500元吧。
然後就是C32修改數據,這就不截圖了,很簡單。
接著我們把修改好的數據包再寫入到卡里,同樣是用NFCGUI-Pro1.5
成功測試圖:
總結
1 關於rfid的文章很多,特別是freebuf上有很多,想學習的可以多看看技術文章。 2 說下校驗位和金額位,有些卡中是要先異或然後取反,再倒序存入卡中。更有變態的是加密後存入。 3 分析校驗位是個細活要慢慢來急不得,記得上次分析某學校飯卡時,搞了幾十組數據分析了一天也沒搞定,最後, 還是晚上靜下來才分析完成。
原文地址:https://www.cnblogs.com/k1two2/p/4694315.html