由Mifare 1卡破解帶來(lái)的危險以及應對方法

發(fā)布時(shí)間:2010-12-31 14:44    發(fā)布者:conniede
關(guān)鍵詞: CPU , Mifare , 讀卡器 , 門(mén)禁
今年年初以來(lái),一個(gè)消息的傳出震驚了整個(gè)IC卡行業(yè)。最近,德國和美國的研究人員成功地破解了NXP的Mifare1芯片的安全算法。Mifare1芯片主要用于門(mén)禁系統訪(fǎng)問(wèn)控制卡,以及一些小額支付卡,應用范圍已覆蓋全球。因此這項“成果”引起了不小的恐慌,因為一個(gè)掌握該破解技術(shù)的小偷可以克隆任何一個(gè)門(mén)禁卡,從而自由進(jìn)出政府機關(guān)大樓或公司辦公室;可以批量的克隆或偽造各種儲值卡大肆購物而不被發(fā)現。國內發(fā)行的這種卡,估計有幾億張在投入使用,它的安全性涉及到眾多的運營(yíng)單位和持卡人的利益。近日,有研究人員宣布MIFARE 系列產(chǎn)品的安全性存在薄弱環(huán)節,在他的研究室里,通過(guò)研究讀寫(xiě)器和卡之間的通信數據,找到了這種卡的加密算法和認證通信的協(xié)議,并有兩種方法可以得到MIFARE class邏輯加密卡的分區密碼。通過(guò)這種方法,破壞者可以使用非常廉價(jià)的設備在40ms內就可以輕易獲得一張M1卡的密碼。面對這種災難性的事實(shí),有些公司宣稱(chēng)他們有辦法彌補這一漏洞,用戶(hù)可以繼續使用這種卡片而不必擔心。那么,M1卡的破解真的有那么大的破壞力么,目前的一些“安全”手段真的有效么;卮疬@一問(wèn)題,我們需要先從了解Mifare1系列卡片的結構和安全認證機制開(kāi)始。

Mifare系列非接觸IC卡是荷蘭Philips公司的經(jīng)典IC卡產(chǎn)品(現在Philips公司IC卡部門(mén)獨立為NXP公司,產(chǎn)品知識產(chǎn)權歸NXP所有)。它主要包括在門(mén)禁和校園、公交領(lǐng)域廣泛使用的Mifare one S50(1K字節)、S70(4K字節),以及簡(jiǎn)化版Mifare Light和升級版MifarePro 4種芯片型號。這幾種芯片中,除Mifare Pro外都屬于邏輯加密卡,即內部沒(méi)有獨立的CPU和操作系統,完全依靠?jì)戎糜布壿?a href="http://selenalain.com/keyword/電路" target="_blank" class="relatedlink">電路實(shí)現安全認證和保護的IC卡。

元用于完成卡片的密碼認證,控制各個(gè)數據扇區的讀寫(xiě)權限;Crypto Unit數據加密單元就是其認證和加解密運算的算法引擎。Mifare系列IC卡是NXP公司的專(zhuān)利產(chǎn)品,它采用了一種NXP特有的加密算法來(lái)完成認證和加解密運算。由于這種算法是NXP特有且不公開(kāi)的算法,Mifare系列IC卡采用了一種特殊的手段來(lái)實(shí)現在不公開(kāi)算法的前提下完成認證,即將同樣的算法引擎放置在NXP出產(chǎn)的專(zhuān)用Mifare讀寫(xiě)基站芯片中(如常用的RC500和RC531),認證過(guò)程由基站芯片“代替”用戶(hù)系統與Mifare芯片之間完成。這一認證過(guò)程就是常常被Mifare系列芯片宣傳的“三重認證”,其實(shí)質(zhì)就是基站芯片與Mifare芯片之間相互傳遞隨機數以及隨機數的密文,通過(guò)對隨機數密文的解密比對實(shí)現對卡片的認證。Mifare芯片所引以為豪的“數據加密傳輸”也是由基站芯片加密后傳送給Mifare芯片的。這個(gè)過(guò)程可以簡(jiǎn)化為下圖所示:



如圖所示,M1卡所宣稱(chēng)的三次認證及輸入加密傳輸等安全特性指的是M1卡與RC500等NXP基站芯片(或兼容芯片)之間的認證和加密。由于NXP對M1卡與基站芯片間的通訊協(xié)議和加密認證機制嚴格保密,因此從這里進(jìn)行破解難度很大。然而不幸的是,最終這個(gè)算法和機制還是被破解了。研究人員找出了算法和通訊協(xié)議中的漏洞,可以輕易地通過(guò)幾十次試探攻擊(約40ms)就能夠獲得一張卡片的所有密鑰。事實(shí)上,在Mifare芯片的兼容產(chǎn)品出現的那一天起,這個(gè)秘密就已經(jīng)不是秘密了,因為完全兼容,實(shí)際就意味著(zhù)已經(jīng)掌握了這個(gè)算法。

在Mifare1卡片安全問(wèn)題暴露后,一些公司公開(kāi)宣稱(chēng)已經(jīng)有了解決的辦法,其中的法寶就是所謂“一卡一密”,也就是每一張卡片的每一個(gè)扇區的密鑰都不相同,使用CPU卡裝載系統根密鑰,根據Mifare1卡的唯一序列號計算子密鑰,防止一張卡片被破解而影響整個(gè)系統。其實(shí)這種解決方案在Mifare1卡破解之前就已經(jīng)出現。那么,一卡一密真的能解決Mifare1的安全問(wèn)題么,我們還是要從Mifare1卡的認證機制著(zhù)手進(jìn)行分析。

我們已經(jīng)知道,Mifare1卡的認證實(shí)質(zhì)上是卡與基站芯片之間的認證。常用的RC500等基站芯片已經(jīng)為業(yè)界廣為熟知,它的接口和通訊協(xié)議都是公開(kāi)的。在基站與Mifare1卡認證前,需要通過(guò)LoadKey命令將Mifare1卡的密碼裝載到基站芯片中。這一過(guò)程是一個(gè)明文寫(xiě)入的過(guò)程,是由終端設備(如讀卡器)主控單片機傳送給RC500的,并且單片機對RC500的命令傳輸是非加密的。如下圖所示:



這樣就可以通過(guò)截獲單片機與RC500之間的通訊來(lái)獲取M1卡的密鑰。而要做到這一點(diǎn),一個(gè)使用過(guò)RC500的對單片機技術(shù)稍微了解的技術(shù)人員都能夠輕而易舉的實(shí)現。

那么,在讀卡器中安裝SAM卡,通過(guò)SAM卡計算卡片密鑰實(shí)現一卡一密是否就安全了呢。想法非常美好,然而結果卻非人所愿,這樣的做法不但沒(méi)有增加安全,反而更加加大了安全漏洞。如下圖所示:



如圖所示,M1卡通過(guò)SAM卡實(shí)現一卡一密本質(zhì)上是將SAM卡內的主密鑰通過(guò)對M1卡的卡號分散后得到M1卡的子密鑰,但是這個(gè)子密鑰仍然要通過(guò)終端單片機明文傳送給RC500芯片完成對M1卡的認證。更為嚴重的是SAM卡送出的是Mifare1卡的明文密碼,黑客只要獲得一張SAM卡,就能夠通過(guò)它獲得所有卡片的密碼,連破解手段都不用。

此外,在M1卡消費密碼被泄露的情況下,即使采用了聯(lián)機充值的方法,也無(wú)法保障運營(yíng)商的利益,因為在此情況下,盜竊者使用偽造的M1卡,完全可以不用系統的充值密碼,而直接采用M1卡的缺省密碼對卡片進(jìn)行“充值”,然后用真實(shí)的消費密碼在終端上消費。在此情況下,即使采用了黑名單機制也難以避免運營(yíng)商和授卡商戶(hù)遭受損失,因為黑名單機制是一種事后防范機制,防止的是再次發(fā)生同一偽卡的交易,而在M1卡小額消費日益普及的今天,盜竊者只需將偽卡使用一次,就足以獲得比一張偽卡成本高得多的收益。

這樣,我們可以假設一下幾種情況:

外部人員作案:

作案人盜取一個(gè)正式使用的終端設備,通過(guò)線(xiàn)路截獲方式獲取單片機發(fā)送給RC500的密鑰,從而破解M1卡的密鑰。

作案人盜取終端內的PSAM卡,通過(guò)向PSAM卡發(fā)送密鑰分散指令的方式得到每一張M1卡的子密鑰。

內部人員作案:

終端設備的開(kāi)發(fā)人員利用工作之便盜取終端內的M1卡密鑰明文或經(jīng)過(guò)單片機發(fā)送給RC500的M1卡密鑰明文。

發(fā)卡機構工作人員利用工作之便截取PC機通過(guò)M1卡讀卡器發(fā)送給M1卡的密鑰明文;蛑苯硬僮鱌SAM卡盜取密鑰明文。

系統開(kāi)發(fā)人員利用工作之便盜取PSAM卡密鑰明文。

無(wú)論哪種可能,都會(huì )對整個(gè)系統的安全造成致命的影響。實(shí)質(zhì)上,這種一卡一密的做法是借用了CPU卡認證機制中的一卡一密概念,然而它在有意無(wú)意間忽略了一個(gè)非常重要的事實(shí),即CPU卡和邏輯加密卡是完全不同的兩種卡片,它們的認證機制完全不同。

CPU卡由于內部具有CPU處理器和操作系統COS,認證的過(guò)程完全是在用戶(hù)卡與SAM卡之間進(jìn)行的,認證過(guò)程中傳送的是隨機數和密文,讀卡器基站芯片只是一個(gè)通訊通道;認證過(guò)程不能復制;使用的算法是公開(kāi)算法,其安全性是基于CPU卡對密鑰的保護而非對算法的保護。密鑰在用戶(hù)卡和SAM卡內都不能讀出,而且密鑰的安裝是通過(guò)密文進(jìn)行,系統上線(xiàn)后即使是發(fā)卡人員和開(kāi)發(fā)人員也無(wú)法得到密鑰明文,從根本上保證了系統的安全性。正是由于意識到了M1卡潛在的安全性問(wèn)題,建設部才多次開(kāi)會(huì )推廣使用CPU卡。雙界面CPU卡更是由于其應用的靈活性和對金融規范的支持得到了各方的贊賞。

當然,一個(gè)系統的安全性不僅僅取決于采用了哪種卡片和哪種安全機制,而且通過(guò)系統設計上的安全手段也能夠彌補一些卡片安全上的不足。一個(gè)產(chǎn)品的安全性不能依賴(lài)于某一個(gè)方面的單個(gè)安全,更多的應從一個(gè)系統的整體的邏輯上去完善安全、把可能出現的不安全特征通過(guò)整體的系統完善起來(lái).針對原有不安全的系統進(jìn)行改造。例如在建設部的IC卡規范中對于M1卡的一卡一密就規定了在SAM中計算卡片密碼前必須校驗卡中的MAC認證碼,這在很大程度上降低了盜用SAM卡的可能性。然而遺憾的是大部分M1卡應用系統并沒(méi)有采用類(lèi)似的補救手段,而且這種手段也不能完全杜絕克隆卡、偽造卡的使用。黑名單等防范手段雖然有效,但畢竟屬于事后防范,難以從根本上解決問(wèn)題。特別是在當前Mifare1卡片被破解的背景下,簡(jiǎn)單的采用打補丁的方法更是一種掩耳盜鈴的行為。

對于一個(gè)IC卡應用系統而言,卡片的安全性好比一座摩天大廈的基礎,針對一種卡片的安全機制必定制定相應的保護措施以保護這個(gè)基礎。而當卡片的安全性發(fā)生了根本的變化時(shí),原有的保護措施已經(jīng)失去了效果,整個(gè)大廈的基礎發(fā)生了動(dòng)搖,此時(shí)再采取補丁措施,無(wú)異于給大廈地面上的結構進(jìn)行加固,措施再好也難以改變基礎動(dòng)搖這一事實(shí)。根本的解決之道就是重新打牢基礎,從根基上完善系統的安全保護體系。

同MIFARE1卡相比,非接觸CPU卡是一種真正意義上的“智能卡”。CPU卡內集成電路中包括中央處理器(CPU)、只讀存儲器(ROM)、隨機存取存儲器(RAM)、電可擦除可編程只讀存儲器(EEPROM)等主要部分,猶如一臺超小型電腦。具有信息量大、防偽安全性高、可脫機作業(yè),可多功能開(kāi)發(fā)等優(yōu)點(diǎn)。CPU卡采用強大而穩定的安全控制器,增強了卡片的安全性,而非接觸傳輸接口又能滿(mǎn)足快速交易的要求(如公交的快速通過(guò))。CPU卡采用了多種芯片級防攻擊手段,基本上不可偽造;CPU卡所特有的內外部認證機制以及以金融IC卡規范為代表的專(zhuān)用認證機制,能夠完全保證交易的合法性;在認證和交易過(guò)程中,CPU密鑰是不在線(xiàn)路上以明文出現的,它每次的送出都是經(jīng)過(guò)隨機數加密的,而且因為有隨機數的參加,確保每次傳輸的內容不同,保證了交易的安全性。在認證和交易過(guò)程中所使用的密鑰都是在安全的發(fā)卡環(huán)境中產(chǎn)生并密文安裝到SAM卡和用戶(hù)卡中,整個(gè)過(guò)程密鑰不外露。CPU卡的應用防火墻功能可以保障同一張卡中不同應用的安全獨立性。對安全性要求較高的金融行業(yè)都以CPU卡作為下一代銀行卡的標準。采用非接觸式CPU卡可以杜絕偽造卡、偽造終端、偽造交易,最終保證了系統的安全性。

同時(shí),非接觸CPU卡的大容量存儲空間又可以滿(mǎn)足預期的大金額消費應用所要求的更多客戶(hù)信息的存儲。而這時(shí)安全就不僅僅是存儲在卡內的電子貨幣的安全,還包括個(gè)人信息的安全,非接觸式CPU卡的安全機制可以為此提供良好的保障。

由于非接觸式CPU卡具有以上無(wú)可比擬的優(yōu)點(diǎn),非常適用于電子錢(qián)包、電子存折、公路自動(dòng)收費系統、公共汽車(chē)自動(dòng)售票系統、社會(huì )保障系統、IC卡加油系統、安全門(mén)禁等等眾多的應用領(lǐng)域。非接觸CPU卡將逐步取代邏輯加密卡而成為IC卡的主要選型。在M1卡被破解的形勢下,采用非接觸CPU卡取代M1卡是解決M1卡危機的最終解決方案。

MIFARE卡被破解的消息在今年年初被披露以來(lái),一石激起千層浪。眾多Mifare的用戶(hù)開(kāi)始擔心自己系統的安全。通過(guò)系統的分析M1卡破解的原理及帶來(lái)的影響,我們可以得出結論:M1卡確實(shí)已經(jīng)不再安全,基于M1卡的系統的安全基礎已經(jīng)動(dòng)搖,我們必須采取行動(dòng),選擇適當的產(chǎn)品替換M1卡,重新加固即將倒塌的安全基石。

CPU卡采用了多種芯片級防攻擊手段,基本上不可偽造;CPU卡所特有的內外部認證機制以及以金融IC卡規范為代表的專(zhuān)用認證機制,能夠完全保證交易的合法性;在認證和交易過(guò)程中,CPU密鑰永遠不會(huì )外露,它每次送出的都是經(jīng)過(guò)加密的隨機數。在認證和交易過(guò)程中所使用的密鑰都是在安全的發(fā)卡環(huán)境中產(chǎn)生并密文安裝到SAM卡和用戶(hù)卡中,整個(gè)過(guò)程密鑰不外露。CPU卡的應用防火墻功能可以保障同一張卡中不同應用的安全獨立性。對安全性要求較高的金融行業(yè)都以CPU卡作為下一代銀行卡的標準。采用非接觸式CPU卡可以杜絕偽造卡、偽造終端、偽造交易,最終保證了系統的安全性。

由于非接觸式CPU卡具有以上無(wú)可比擬的優(yōu)點(diǎn),非常適用于電子錢(qián)包、電子存折、公路自動(dòng)收費系統、公共汽車(chē)自動(dòng)售票系統、社會(huì )保障系統、IC卡加油系統、安全門(mén)禁等等眾多的應用領(lǐng)域。非接觸CPU卡將逐步取代邏輯加密卡而成為IC卡的主要選型。

以Mifare1為代表的非接觸邏輯加密卡與CPU卡相比,非接觸邏輯加密卡與非接觸CPU卡同屬非接觸IC卡,但這兩種卡片是完全不同檔次的卡。

以下對MIFARE I卡與非接觸CPU卡做一比較:



通過(guò)分析,我們可以看出,使用CPU卡代替Mifare1卡是徹底解決Mifare卡危機的根本途徑。然而,對于數量眾多的Mifare1卡應用系統,我們如何能夠以最小的投入最快的速度完成這一升級轉換呢,是否需要將系統推倒重來(lái)呢。其實(shí)大可不必。上文我們講到,一個(gè)系統的安全不僅僅依賴(lài)于采用了哪一種卡。一個(gè)卡系統往往由多個(gè)子系統構成,其中受到Mifare1卡破解影響的只是直接與卡相關(guān)的很少的幾個(gè)部分,我們只需要對這些部分進(jìn)行改造升級就完全可以保障我們系統的安全穩定運行。

以安防門(mén)禁系統為例,在一個(gè)門(mén)禁管理系統中,主要包括以下幾個(gè)部分



管理中心是一個(gè)軟件平臺,負責整個(gè)系統的協(xié)調、指揮工作,主要功能包括:規定和調整系統設置要求并實(shí)行;負責監控主要的進(jìn)入口和公共場(chǎng)所;負責處理門(mén)禁系統發(fā)生的警報;負責提供對事件記錄;負責發(fā)卡注冊。

門(mén)禁控制單元是硬件平臺,是類(lèi)似于通道管理性質(zhì)的各類(lèi)控制器,如:門(mén)鎖控制器、電梯控制器、停車(chē)場(chǎng)控制器和考勤終端等(可擴充功能),都屬于門(mén)禁控制單元。門(mén)禁控制單元是管理中心設置的各種管理手段的執行設備。

門(mén)禁系統中門(mén)禁單元設備的標準配置如下圖。



讀卡器是門(mén)禁控制系統當中的卡識別設備,將用戶(hù)刷卡信息傳送給控制器和管理系統,供控制系統進(jìn)行判斷處理。

電門(mén)鎖、閘機等是門(mén)禁系統的執行機構,執行對門(mén)、通道的開(kāi)關(guān)控制。

在整個(gè)門(mén)禁管理系統中,門(mén)禁IC卡是安全管理的基礎核心。此次M1卡被破解,正是將門(mén)禁系統的最核心的安全控制打破,使門(mén)禁卡的復制偽造成為可能。要解決門(mén)禁系統的安全問(wèn)題,需將M1卡替換為CPU卡。而整個(gè)系統中與卡片有直接交互的只有兩個(gè)地方:后臺系統中的發(fā)卡子系統和最前端的識別系統,即門(mén)禁讀卡頭。對于絕大多數門(mén)禁系統而言,門(mén)禁讀卡頭只是將卡片卡號讀取出來(lái)通過(guò)控制器送到后臺系統,系統通過(guò)卡號及后臺授權情況進(jìn)行控制。這樣我們在進(jìn)行系統升級改造時(shí),只需要改造門(mén)禁讀卡頭和發(fā)卡子系統,使之能夠識別讀寫(xiě)CPU卡,并對CPU卡完成認證,其他系統和軟件都無(wú)需改動(dòng),即可快速完成從M1卡到CPU卡的遷移。

具體方案如下:

1、更換門(mén)禁讀卡器,使用支持CPU卡的門(mén)禁讀卡器。由于門(mén)禁讀卡器與控制器之間的通訊接口有統一的規范,這種更換改造很容易實(shí)現。

2、對原系統中的發(fā)卡子系統進(jìn)行改造,更換讀卡器,使之能夠發(fā)CPU卡。由于各個(gè)門(mén)禁廠(chǎng)商的軟件平臺都不同,因此這項改造需要原門(mén)禁系統廠(chǎng)商配合完成。

3、如果直接改造發(fā)卡系統軟件有困難,可以開(kāi)發(fā)新的CPU卡發(fā)卡子系統,與原系統后臺數據庫對接,實(shí)現CPU卡發(fā)卡。此種方式實(shí)現相對簡(jiǎn)單,但需要了解原系統的數據庫接口,仍需要原廠(chǎng)商的一些支持。不過(guò),許多門(mén)禁管理軟件支持直接輸入卡號的發(fā)卡方式,這就為系統改造創(chuàng )造了非常便利的條件。

與門(mén)禁系統相似,城市公交一卡通系統雖然更為復雜,但系統中的清分清算等主要部分都并不與IC卡直接關(guān)聯(lián)。如圖所示:



在一卡通系統中,與卡直接相關(guān)的子系統包括:發(fā)卡子系統、消費終端、卡務(wù)管理子系統;對發(fā)卡子系統的改造主要是將初始化M1卡流程改造為初始化CPU卡;卡務(wù)管理子系統的改造也相對簡(jiǎn)單,實(shí)現CPU卡讀寫(xiě)操作即可;決定改造是否成功的關(guān)鍵是消費終端的升級改造,不僅需要能夠讀寫(xiě)CPU卡,而且要將M1卡的交易流程升級為CPU卡標準交易流程,對系統開(kāi)發(fā)商而言需要有足夠的對CPU卡應用的經(jīng)驗和理解。



同方股份有限公司是國內知名的智能卡應用開(kāi)發(fā)服務(wù)和產(chǎn)品提供商,是國內最早從事CPU卡研制和應用開(kāi)發(fā)的公司之一。早在1998年清華同方研發(fā)中心與清華大學(xué)計算機系共同成立的智能卡COS研究小組開(kāi)發(fā)的《金融IC卡操作系統ZTCOS1.0》就獲得了中國人民銀行銀行卡檢測中心頒發(fā)的《中國金融集成電路卡PBOC1.0檢測證書(shū)》。公司緊跟世界最先進(jìn)的IC卡技術(shù),是國內在ISO14443 TypeB非接觸標準產(chǎn)品和應用開(kāi)拓者和領(lǐng)先者。公司承建的沈陽(yáng)城市一卡通系統是國內最早最大規模的城市CPU卡一卡通應用項目,至今雙界面CPU卡實(shí)際發(fā)卡量已經(jīng)突破350萬(wàn)張,在國內城市通卡領(lǐng)域有著(zhù)巨大的影響力。同方股份有限公司依托在非接觸智能卡多年的開(kāi)發(fā)和應用經(jīng)驗,致力于城市一卡通應用系統開(kāi)發(fā)和相關(guān)產(chǎn)品研制,已形成了非接觸CPU卡、讀卡終端在內的完整的非接觸CPU卡產(chǎn)品體系。公司開(kāi)發(fā)的雙界面CPU卡已獲得了《中國金融集成電路卡PBOC2.0檢測證書(shū)》。面對非接觸智能卡應用蓬勃發(fā)展的機遇,同方股份有限公司正深入開(kāi)拓市場(chǎng),加速新產(chǎn)品的開(kāi)發(fā)研制,助力于中國非接觸智能卡行業(yè)的騰飛。
本文地址:http://selenalain.com/thread-48447-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页