由Mifare 1卡破解帶來(lái)的危險以及應對方法
今年年初以來(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ì)戎糜布壿嬰娐穼?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è)算法。
評論