IC卡破解方法_第1頁
IC卡破解方法_第2頁
IC卡破解方法_第3頁
IC卡破解方法_第4頁
IC卡破解方法_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、RFID破解方法網(wǎng)上看了很多RFID破解的文章,大部分都是工具使用, 一步步該怎么操作, 基本上 沒有講原理的,估計導(dǎo)致了很多初學(xué)者非常迷惑,特別是一旦按照操作步驟操作的 時候出錯時更加迷惑,不知道是什么狀況,國內(nèi)radiowar也同樣沒有看到過特別介 紹原理性的文章。建議大家還是多看看外文原版的資料說明,會理解的更透徹些,才能更快的加 入到RFID安全研究及測試中。G多看看論壇里面提問跟回答http:/ /http:/ http:/www.libnfc.o

2、rg這篇文章就當(dāng)是我自以為是的普及性介紹,我想應(yīng)該還是會給很多人解惑。首先,先說說目前 RFID破解涉及到的幾種方法,我盡量以最直白的語言描述。1、最簡單ID卡破解常見破解辦法:ID卡復(fù)制,ID卡除了復(fù)制也沒有其他研究的了,畢竟 太簡單了。基本原理介紹:ID卡屬于大家常說的低頻卡,一般大部分情況下作為門禁卡或者大部分大學(xué)里 使用的飯卡,一般為厚一些的卡,是只讀的,卡里面只保存有一串唯一的數(shù)字序號 ID,可以把這串?dāng)?shù)字理解為你的身份證號,刷卡的時候,讀卡器只能讀到ID號,然后通過跟后臺數(shù)據(jù)庫進行匹配,如果是門禁卡,那么數(shù)據(jù)庫里面就是存在這樣的ID號,如果匹配上門就開了,匹配不上門就開不了。如果是

3、學(xué)校的飯卡,刷卡的時候,實際上操作的是你對應(yīng)ID號相關(guān)的數(shù)據(jù)庫中的數(shù)據(jù)。ID卡本身不存在任何其他數(shù)據(jù),所以,學(xué)校使用的ID卡飯卡,只能復(fù)制卡,刷別人的錢(數(shù)據(jù)庫中的錢),再沒有其他辦法。破解方法:通過ID卡讀卡器,讀取卡內(nèi)的ID號,然后把這串ID號寫入到ID 卡空卡中即可,各類工具特別多,需要一個ID卡讀卡器。最簡單的淘寶有賣的工具, 兩節(jié)7號電池,按讀卡按鈕讀要復(fù)制的卡的ID,然后再按寫卡按鈕,把讀到的ID號寫入到空白卡中,即完成了卡復(fù)制工作,優(yōu)點就是方便,缺點就是我們看不到整 個過程,對我們安全研究來說作用不大。2、射頻IC卡破解寫在前面的技術(shù)鋪墊:射頻IC卡種類繁多,標(biāo)準也繁多,這些不在

4、介紹范圍內(nèi),但是以下攻擊介紹 的原理類似,下面不特別說明就是指的M1S50卡,這也是目前廣泛使用的,并且大家做測試時最常見的IC卡。常見的破解方法:1)跟ID卡一樣,復(fù)制IC卡的UID號碼寫入到新的空白IC卡中。2)破解IC卡的密碼,從而改寫IC卡中的數(shù)據(jù)。3)破解IC卡的密碼之后,把所有數(shù)據(jù)導(dǎo)出再寫入到一個新的空白IC卡中,也就是IC卡全卡復(fù)制(NFC手機及PM3等設(shè)備也支持把自己 模擬成一個IC卡,實際上也屬于卡復(fù)制一類)。IC卡破解基本上都逃不脫以上的幾種應(yīng)用,這里面又涉及到一個簡單的IC的內(nèi)部結(jié)構(gòu)的說明,便于理解就簡單說明一下。IC卡(S50)分為16個扇區(qū)(0-15 ),每個扇區(qū)又分

5、為4個區(qū)域塊(0-63), 每個扇區(qū)都有獨立的一對密碼keyA和keyB (先記著獨立兩個字,后面要思考問題)負責(zé)控制對每個扇區(qū)數(shù)據(jù)的讀寫操作,keyA和keyB分布在每個扇區(qū)的第四塊中,第 0扇區(qū)的第一個數(shù)據(jù)塊,存儲著IC卡的UID號(想成身份證號),其他扇區(qū)可以存儲其他的數(shù)據(jù),如錢等數(shù)據(jù)。一般IC卡的UID是唯一的也是寫死的不能更改,其他塊的數(shù)據(jù)是可以 更改的,所以也就有了普通IC空白卡以及UID可寫空白卡(可以認為是不遵守規(guī)范的商家制作的)?,F(xiàn)在我們開始想象破解的幾種環(huán)境:1) 讀卡器把IC卡當(dāng)成ID卡一樣只識別UID正確即可,不管IC 卡內(nèi)其他數(shù)據(jù),這時候,只需要把卡的UID讀出來,并

6、使用一個 UID 可寫的空白卡,把 UID寫入即可。2)讀卡器首先識別 UID是否正確,然后再識別其他扇區(qū)的數(shù)據(jù),通過keyA或者keyB對數(shù)據(jù)進行讀寫操作。這樣首先UID得正確,其次,keyA或者keyB得正確(后面為了說的方便,我們就不說keyA或者keyB,直接說IC卡密碼)。這樣如果知道了 IC卡密碼,我們也不需要復(fù)制新卡,那么就可以 更改IC卡中的數(shù)據(jù),比如更改飯卡中的錢數(shù)。如果我們想復(fù)制一張一 模一樣的卡,那么就把原卡的所有扇區(qū)的數(shù)據(jù)全面導(dǎo)出來,再寫入新 的UID可寫卡中即可。3)讀卡器不識別 UID,只管對扇區(qū)的密碼進行驗證,如果驗證成功則允許對卡內(nèi)數(shù)據(jù)操作等。(如某“GG快捷酒

7、店”的門卡,就不管UID,只要扇區(qū)密碼正確即可),那我們可以通過扇區(qū)密碼更改門卡中 的數(shù)據(jù),如房號,住宿的時間等,也可以通過一個普通的IC卡(uid不能更改)復(fù)制一張門卡(跟原卡 UID不同),也可以通過一個UID可寫的卡,復(fù)制一張跟原卡完全相同的卡(跟原卡UID也相同)?;旧弦簿褪且陨蠋追N環(huán)境,改寫UID、通過扇區(qū)密碼改寫扇區(qū)數(shù)據(jù)、通過把原卡數(shù)據(jù)導(dǎo)出重新導(dǎo)入到新的IC卡中復(fù)制一張卡。IC卡的UID是不通過密碼控制的,可以直接通過讀卡器獲得,后面講IC卡的通信過程會說明。那么我們做IC卡破解時,主要的問題就是破解IC 卡每個扇區(qū)的控制密碼,如果密碼破解了,那要怎么操作都隨便了。IC卡密碼破解

8、的幾種方法:1)使用默認的密碼攻擊,很多應(yīng)用IC卡都沒有更改默認密碼,所以導(dǎo)致可以直接使用默認密碼來嘗試接入IC卡,常見的默認密碼有:ffffffffffff000000000000a0a1a2a3a4a5b0b1b2b3b4b5aabbccddeeff4d3a99c351dd1a982c7e459ad3f7d3f7d3f7714c5c886e97587ee5f9350fa0478cc39091533cb6c723f68fd0a4f256e9FFzzzzzzzzzzA0zzzzzzzzzz2)nestedauthentication攻擊(大家常說的驗證漏洞攻擊)前面講到每個扇區(qū)都有獨立的密碼,

9、一些情況下,比如某飯卡,扇 區(qū)3中存儲著錢等數(shù)據(jù),扇區(qū)3的更改了默認密碼,扇區(qū)5中也存儲著一些數(shù)據(jù),扇區(qū)5也更改了密碼,其他扇區(qū)沒有更改默認密碼。我們要操作扇區(qū)3跟5,不知道密碼怎么辦?使用nestedauthentication攻擊,這種攻擊方式是在已知了16個扇區(qū)中任意一個扇區(qū)的密碼之后,采用的攻擊方式,可以獲得其他扇 區(qū)的密碼。我們前面都提到了,16個扇區(qū)的密碼都是獨立的,那么怎么能通過某個扇區(qū)的密碼獲得其他扇區(qū)的密碼呢?如果可以,那說明扇區(qū)就不 是獨立的呀,有人會說,由于M1卡的加密算法被破解了,我只能說那是還沒有理解,具體算法不講,只說明一下,算法只是使得猜解密碼的 時間變短,使得猜

10、解密碼成為可能。pent hit?:26Recebit $ :B4H0Eent bits:Received bit =bent bits:9370Ftd7 MReceived bits時ddbent bits =SB00S7 cdntinr, arat-Reader這是什么樣的原理呢?首先先了解,這是一個對等加密算法,也就是讀卡器跟tag中都保存著同樣的密碼,也都是用同樣的算法加密,然 后看rfid的驗證過程:開始交互的時候,tag就已經(jīng)把uid給reader說了,主要牽扯到 防沖撞機制,之后才開始驗證。b:XjFcnfp-flnt lev I.ext?NFCACS ACR122 / ACR1

11、22U21O - PN532 vl.6 openedFound tAM iith IJIP譏兀gITQfi :師EHSAK: 08第一次驗證時,讀卡器首先驗證0扇區(qū)的密碼,tag給讀卡器發(fā)送一個隨機數(shù)nt (明文),然后讀卡器通過跟密碼相關(guān)的加密算法加密 nt,同時自己產(chǎn)生一個隨機數(shù)nr,(密文)發(fā)送給tag,tag用自己的密碼解密之后,如果解密出來的nt就是自己之前發(fā)送的 nt,則認為正確,然后通過自己的密碼相關(guān)的算法加密讀卡器的隨機數(shù)nr (密文)發(fā)送給讀卡器,讀卡器解密之后,如果跟自己之前發(fā)送的隨機數(shù)nr相同,則認為驗證通過,之后所有的數(shù)據(jù)都通過此算法加密傳輸。首先記住這里面只有第一次的

12、nt是明文,之后都是密文,而且nt是tag發(fā)送的,也就是驗證過程中,tag是主動的。我們破解的時候,讀卡器中肯定沒有密碼(如果有就不用破解了), 那么tag發(fā)送一個nt給讀卡器之后,讀卡器用錯誤的密碼加密之后發(fā) 送給tag,tag肯定解密錯誤,然后驗證中斷,這個過程中,我們只看 到tag發(fā)送的明文隨機數(shù),tag根本沒有把自己保存的密碼相關(guān)的信息 發(fā)送出來,那怎么破解呢?所以,要已知一個扇區(qū)的密碼,第一次驗證的時候,使用這個扇區(qū)驗證成功之后,后面所有的數(shù)據(jù)交互都是密文,而且是 tag首先發(fā)送隨 機數(shù)nt,這個nt是個加密的數(shù)據(jù),我們前面也說過每個扇區(qū)的密碼是 獨立的,那么加密實際上就是通過tag

13、這個扇區(qū)的密碼相關(guān)的算法加密的nt,這個數(shù)據(jù)中就包含了這個扇區(qū)的密碼信息,所以我們才能夠通過算法漏洞繼續(xù)分析出扇區(qū)的密碼是什么。這也是為什么 n estedauthe nticatio n攻擊必須要知道某一個扇區(qū)的密碼,然后才能破解其他扇區(qū)的密碼,這個攻擊方式,我倒覺得,加 密傳輸跟扇區(qū)密碼獨立幫了很大的忙,如果每次nt都是明文發(fā)送,那還真沒法破解其他扇區(qū)了。3) darkside 攻擊假設(shè)某個IC卡的所有扇區(qū)都不存在默認密碼怎么辦?暴力破解根本不可能,那這時候就是算法的問題導(dǎo)致的darkside攻擊,我們照樣不說具體算法什么漏洞之類,同樣,我們考慮首先要把tag中的key相關(guān)的數(shù)據(jù)騙出來,也

14、就是讓tag發(fā)送出來一段加密的數(shù)據(jù),我們通過這段加密的數(shù)據(jù)才能把 key破解出來,如果tag不發(fā)送加密的數(shù)據(jù)給我們, 那沒法破解了。前面我們也說了,第一次驗證的時候tag會發(fā)送明文的隨機數(shù)給讀 卡器,然后驗證讀卡器發(fā)送加密數(shù)據(jù)給tag,tag驗證失敗就停止,不會發(fā)送任何數(shù)據(jù)了,這樣看,根本就沒有辦法破解密碼。實際上經(jīng)過研究人員大量的測試之后,發(fā)現(xiàn)算法還存在這樣一個漏洞,當(dāng)讀卡器發(fā)送的加密數(shù)據(jù)中的某8bit全部正確的時候tag會給讀卡器發(fā)送一個加密的 4bit的數(shù)據(jù)回復(fù)NACK其他任何情況下tag都會直 接停止戶。那么這個4bit的加密的NACK就相當(dāng)于把tag中的key帶出來了, 然后再結(jié)合算

15、法的漏洞破解出 key,如果一個扇區(qū)的key破解出來,就 可以再使用n estedauthe nticati on攻擊破解其他扇區(qū)密碼。4) 正常驗證過程獲得 key1-3都是通過一般的讀卡器,把tag中的密碼破解出來,破解的原理中,不管密碼破解算法的漏洞,實際上都是要讓tag中發(fā)送出來一段密文。那如果讀卡器本身就保存有密碼,卡也是授權(quán)的卡,也就是說卡和讀卡器都是正確授權(quán)的,那么他們之間的加密數(shù)據(jù)交換就可以直接使用 PM3等監(jiān)控下來,然后通過“ GOR效驗與算Key”程序算出密碼來。這種情況下一般都是內(nèi)部人員做案,或者把讀卡器中的SAM偷出來,SAM實際上就是保存讀卡器中密碼的一個模塊,然后通

16、過另外的讀 卡器插入SAM用正常的授權(quán)的卡刷卡,然后監(jiān)控交換數(shù)據(jù),從而算出 密碼。5)另一個方面前面4類方法基本上把目前的 rfid卡破解講清楚了,文字太多, 所以也就沒有截圖,還有一個地方大家不知道考慮了么?我們提到的都是卡和讀卡器之間的數(shù)據(jù)交換,這是加密的數(shù)據(jù), 但是有沒有想過讀卡器跟電腦相連這塊,電腦中肯定沒有加密芯片,所以 這塊肯定是明文傳輸,在某種環(huán)境中,比如通過電腦的控制程序?qū)朊?碼(假設(shè)是二進制等不能直接觀看的密碼文件)到讀卡器的時候,我們 通過監(jiān)控USB口(串口)數(shù)據(jù)通信,是不是就能明文看到密碼呢?截個圖:012 3 4LJfi780J01234b o- o o o o n

17、n o o o 1 f I I 1 1杠開宅碼丈件IB111111111111 111111111111 111111111111 111111111111 nnnn 11111111 limit HHini 1I1M1H Innin H1T11H 711111W 11111111 Tiinnt iniiiii iinimpiiiTmiiTi軟件裝載密碼到讀卡器使用USB監(jiān)控抓到的明文數(shù)據(jù),包含了導(dǎo)入到讀卡器中的密碼明 文。常用工具說明1) mfocmfocgui以及目前網(wǎng)絡(luò)上,淘寶上充斥的各類破解工具都是基于nestedauthentication攻擊原理,就是內(nèi)置了一些默認密碼,首先使用默認密碼對每個扇區(qū)進行測試,如果某個扇區(qū)存在默認密碼,然后就是用nestedauthentication攻擊獲得其他扇區(qū)的密碼。2) PM3的darkside 攻擊,Mfcuk等為darkside 攻擊工具,一個扇 【設(shè)備京碼碼H 出(CapitakJ H 輩?S日 Jimp 畧炒雪帷區(qū)密碼都不知道的情況下破解用的,由于破解算法的原理本身就不是100%成功的,所以如果長時間破解不出來,就停了重新?lián)Q個nt

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論