真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

RFID入門:Mifare1智能洗澡卡破解分析

RFID入門:Mifare1智能洗澡卡破解分析

創(chuàng)新互聯(lián)專注于企業(yè)全網(wǎng)整合營銷推廣、網(wǎng)站重做改版、羅田網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場景定制、成都商城網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為羅田等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

科普前置知識:

Mifare Classic card提供1k-4k的容量,我們經(jīng)常見到的是Mifare Classic 1k(S50),也就是所謂的M1卡。M1卡有從0到15共16個(gè)扇區(qū),并且每個(gè)扇區(qū)都有獨(dú)立的密碼,每個(gè)扇區(qū)配備了從0到3共4個(gè)段,每個(gè)段可以保存16字節(jié)的內(nèi)容,反正從0開始數(shù) 就對了(和數(shù)組下標(biāo)為0開始一樣)。


每張M1卡都有一個(gè)全球唯一的UID號,這個(gè)UID號保存在卡的00扇區(qū)的00段,也稱為廠商段,其中前4個(gè)字節(jié)是卡的UID,第5個(gè)字節(jié)是卡UID的校驗(yàn)位,剩下的是廠商數(shù)據(jù)。并且這個(gè)段在出廠之前就會被設(shè)置了寫入保護(hù),只能讀取不能修改,當(dāng)然也有例外,有種叫UID卡的特殊卡,UID是沒有設(shè)置保護(hù)的,其實(shí)就是廠家不按規(guī)范生產(chǎn)的卡(我們在網(wǎng)上買的空白卡片一般都是這種可以修改UID號的卡)。


今天我們以破解一張洗澡卡為例:


用到的工具

讀卡設(shè)備:ACCR122U一個(gè)

空白M1卡片兩張

正常使用洗澡卡一張

上圖:

RFID入門:Mifare1智能洗澡卡破解分析

平臺:windows7

軟件:NFCGUI-PRO.exe


M1卡服務(wù)程序

破解思路:在M1卡的16個(gè)扇區(qū)內(nèi)的某一個(gè)扇區(qū)內(nèi)的字段中存儲著洗澡卡內(nèi)的信息,例如使用時(shí)間、使用次數(shù)、水卡金額等信息,想要修改卡內(nèi)的信息就要將卡片內(nèi)的記錄數(shù)據(jù)導(dǎo)出,每個(gè)扇區(qū)第一個(gè)字段的16個(gè)字節(jié)是扇區(qū)的秘鑰對,我們要是想要導(dǎo)出數(shù)據(jù)就要通過窮舉的方法測試出秘鑰對,只有知道秘鑰對后才可以導(dǎo)出卡片內(nèi)文件(具體原因請百度M1卡工作原理或查看:http://www.hufubo.com/?p=202),幸運(yùn)的是國內(nèi)大部分的M1卡都是使用的默認(rèn)密碼或者弱密碼(例如 FFFFFFFF FFFFFFFF),我們可以使用比較傻瓜式的軟件M1卡服務(wù)程序窮舉秘鑰對并導(dǎo)出卡內(nèi)的dump文件(通過破解軟件導(dǎo)出的數(shù)據(jù)文件都為xx.dump格式文件),然后通過一張卡多次消費(fèi)并導(dǎo)出dump文件來對比不同金額情況下扇區(qū)內(nèi)的信息來核算出具體的金額控制位,然后通過NFCGUI-PRO.exe程序?qū)⑿薷暮玫膁ump文件寫入到空白的M1卡內(nèi)。

具體實(shí)施:

聲明:在實(shí)施過程中有可能我的步驟不是最簡便和最有效的辦法,但是作為科普入門級的文章,只希望更多的人能理解實(shí)施的過程,以更好的去防護(hù)這種方法。


  • 先去洗澡卡終端查看卡內(nèi)的余額:

RFID入門:Mifare1智能洗澡卡破解分析

卡內(nèi)余額為26.91元,然后將ACR122u插在機(jī)器上,使用M1卡服務(wù)程序破解得出卡內(nèi)的DUMP文件


使用M1卡服務(wù)器程序破解:

RFID入門:Mifare1智能洗澡卡破解分析

破解成功:

RFID入門:Mifare1智能洗澡卡破解分析

由于這種M1卡秘鑰對為弱密碼所以大約幾十秒的時(shí)間就會破解成功,dump文件會生成在文件目錄下:

RFID入門:Mifare1智能洗澡卡破解分析

dumpfile 4da2e80e(2015-08-2523_4).dump文件就是生成的破解文件 可以看到生成的dump文件為1KB大小,但是具體寫入M1卡的時(shí)候是需要寫入4KB大小的dump文件的


ps:這些軟件本來是×××linux開發(fā)的,移植到win平臺上只能生成1kb的dump文件,我們可以使用修復(fù)工具:fixdump將1KB文件修復(fù)為4KB,也可以使用NFCGUI-PRO.exe


這個(gè)軟件自帶的修復(fù)功能修復(fù)為4KB文件,我是使用的NFCGUI-PRO.exe

修復(fù),如圖:

RFID入門:Mifare1智能洗澡卡破解分析

打開這個(gè)軟件點(diǎn)擊選擇文件-選擇剛才生成的1KB文件-就會提示“是否保存為4K文件格式”—選擇“是”-就是自帶修復(fù)成功

RFID入門:Mifare1智能洗澡卡破解分析

然后關(guān)閉軟件,剛才的1kb的DUMP文件就會自帶修復(fù)為4KB文件了。

通過上面的方法得出三個(gè)不同金額的dump文件。


2)通過十六進(jìn)制編輯器進(jìn)行dump文件的對比,找出金額控制位,我使用winhex進(jìn)行編輯dump文件:

RFID入門:Mifare1智能洗澡卡破解分析

因?yàn)檫@兩個(gè)文件都是同一張卡片不同金額的dump文件,所以假定有金額的數(shù)據(jù)不同,有刷卡次數(shù)記錄的數(shù)據(jù)不同,刷卡時(shí)間的記錄不同,(假定會有這些不同之處,也許只有記錄金額的變化),通過對比兩張卡片,發(fā)現(xiàn)在00000176 和00000192處有不同的數(shù)據(jù)塊


如圖;

余額為26.91:

RFID入門:Mifare1智能洗澡卡破解分析

余額為26.88:

RFID入門:Mifare1智能洗澡卡破解分析

發(fā)現(xiàn)這兩張卡內(nèi)的不同之處在于:

RFID入門:Mifare1智能洗澡卡破解分析

RFID入門:Mifare1智能洗澡卡破解分析

通過十六進(jìn)制轉(zhuǎn)換測試:

Hex(80 0A)=32778

HEX(7F F5)=32757


測試發(fā)現(xiàn)并不是這么簡單的直接轉(zhuǎn)換,于是將 800A 進(jìn)行翻轉(zhuǎn)為 0A80

HEX(0A80)=2688 2688符合卡內(nèi)余額為26.88的實(shí)際情況。

HEX(0A83)= 2691 2691符合卡內(nèi)月為26.91的實(shí)際情況。


可以總結(jié)得出金額位的加密方法為 金額轉(zhuǎn)換十六進(jìn)制后進(jìn)行翻轉(zhuǎn)存儲。

接下來分析 7F F5代表的含義


根據(jù)M1卡了解 金額位置后面會有校驗(yàn)位數(shù)據(jù),通俗講就是當(dāng)前面金額數(shù)據(jù)變了之后,校驗(yàn)位會根據(jù)另外的算法去改變值。


一般最簡單的算法都是二進(jìn)制取余后轉(zhuǎn)換為16進(jìn)制再加上金額位的加密方法


計(jì)算方法如下:

校驗(yàn)位7F F5-翻轉(zhuǎn)為F5 7F轉(zhuǎn)換二進(jìn)制為1111010101111111 二進(jìn)制取余為0000101010000000 轉(zhuǎn)換為十進(jìn)制為:

Hex(0000101010000000)=2688


可以得出金額校驗(yàn)位的加密方式為將金額轉(zhuǎn)換為二進(jìn)制后取余,取余后的二進(jìn)制轉(zhuǎn)換為16進(jìn)制,將16進(jìn)制翻轉(zhuǎn)后得到的結(jié)果就是金額校驗(yàn)位的信息


例如金額為26.88—2688–0000101010000000—1111010101111111–F5 7F–7F F5


計(jì)算出金額校驗(yàn)位應(yīng)填7F F5

RFID入門:Mifare1智能洗澡卡破解分析

計(jì)算出金額位和金額校驗(yàn)位的加密方式后可以進(jìn)行金額的修改


修改金額為600元則計(jì)算

金額位:600—60000—EA60—60EA

金額校驗(yàn)位:600—60000—1110101001100000—0001010110011111—159F—9F15

則金額位填:60EA

金額校驗(yàn)位填:9F15

直接在winhex內(nèi)修改dump文件:

RFID入門:Mifare1智能洗澡卡破解分析

直接保存文件為600.dump,dump金額就修改成功了


3)將文件寫入到空白卡片中

通過NFCGUI-PRO.exe軟件進(jìn)行dump文件寫入:

如圖:

RFID入門:Mifare1智能洗澡卡破解分析

打開NFCGUI-PRO.exe軟件后DUMP和Key文件選擇加載文件600.dump

將ACR122U插入到電腦后將空白卡片放到讀卡器上后選擇寫入文件

寫入成功:

RFID入門:Mifare1智能洗澡卡破解分析dnSeuOQat3XjArO9pRBibj4Go8j1bibU1UFw/0?wx_fmt=jpeg">

4)測試:

RFID入門:Mifare1智能洗澡卡破解分析

RFID入門:Mifare1智能洗澡卡破解分析

RFID入門:Mifare1智能洗澡卡破解分析

到這里就是M1卡破解的基本步驟,僅作科普文章,請勿做違法事件!

解決方案:

1)將卡片全部更換成CPU卡,CPU卡可以模擬M1卡結(jié)構(gòu),完全代替M1卡,安全性也比邏輯加密的M1卡更安全。

2)采用一卡一密系統(tǒng),一卡一密可以免去升級硬件的麻煩,最大程度保護(hù)IC卡系統(tǒng)。

3)采用滾動碼系統(tǒng),增加效驗(yàn),加大破解成本

軟件工具鏈接:http://pan.baidu.com/s/1sjJuY3V


分享文章:RFID入門:Mifare1智能洗澡卡破解分析
分享路徑:http://weahome.cn/article/jseipd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部