歡迎您訪問鄭州興邦電子股份有限公司官方網站!
    阿里巴巴誠信通企業
    全國咨詢熱線:40000-63966
    興邦電子,中國水控機第一品牌

    聯系興邦電子

    全國咨詢熱線:40000-63966

    售后:0371-55132951/55132952

    工廠:河南省 鄭州市 高新區蓮花街電子電器產業園

    由Mifare 1卡破解帶來的危險以及應對方法

    文章出處:http://www.xujuanpiju.com 作者:同方股份有限公司 袁育博   人氣: 發表時間:2011年09月29日

    [文章內容簡介]:今年年初以來,一個消息的傳出震驚了整個IC卡行業。最近,德國和美國的研究人員成功地破解了NXP的Mifare1芯片的安全算法。 通過分析,我們可以看出,使用CPU卡代替Mifare1卡是徹底解決Mifare卡危機的根本途徑。

        今年年初以來,一個消息的傳出震驚了整個IC卡行業。最近,德國和美國的研究人員成功地破解了NXP的Mifare1芯片的安全算法。Mifare1芯片主要用于門禁系統訪問控制卡,以及一些小額支付卡,應用范圍已覆蓋全球。因此這項“成果”引起了不小的恐慌,因為一個掌握該破解技術的小偷可以克隆任何一個門禁卡,從而自由進出政府機關大樓或公司辦公室;可以批量的克隆或偽造各種儲值卡大肆購物而不被發現。國內發行的這種卡,估計有幾億張在投入使用,它的安全性涉及到眾多的運營單位和持卡人的利益。

        近日,有研究人員宣布MIFARE 系列產品的安全性存在薄弱環節,在他的研究室里,通過研究讀寫器和卡之間的通信數據,找到了這種卡的加密算法和認證通信的協議,并有兩種方法可以得到MIFARE class邏輯加密卡的分區密碼。通過這種方法,破壞者可以使用非常廉價的設備在40ms內就可以輕易獲得一張M1卡的密碼。面對這種災難性的事實,有些公司宣稱他們有辦法彌補這一漏洞,用戶可以繼續使用這種卡片而不必擔心。那么,M1卡的破解真的有那么大的破壞力么,目前的一些“安全”手段真的有效么。回答這一問題,我們需要先從了解Mifare1系列卡片的結構和安全認證機制開始。 

        Mifare系列非接觸IC卡是荷蘭Philips公司的經典IC卡產品(現在Philips公司IC卡部門獨立為NXP公司,產品知識產權歸NXP所有)。它主要包括在門禁和校園、公交領域廣泛使用的Mifare one S50(1K字節)、S70(4K字節),以及簡化版Mifare Light和升級版MifarePro 4種芯片型號。這幾種芯片中,除Mifare Pro外都屬于邏輯加密卡,即內部沒有獨立的CPU和操作系統,完全依靠內置硬件邏輯電路實現安全認證和保護的IC卡。其主要結構如圖所示: 

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

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

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

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

        這樣就可以通過截獲單片機與RC500之間的通訊來獲取M1卡的密鑰。而要做到這一點,一個使用過RC500的對單片機技術稍微了解的技術人員都能夠輕而易舉的實現。 

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

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

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

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

        外部人員作案:
        作案人盜取一個正式使用的終端設備,通過線路截獲方式獲取單片機發送給RC500的密鑰,從而破解M1卡的密鑰。
        作案人盜取終端內的PSAM卡,通過向PSAM卡發送密鑰分散指令的方式得到每一張M1卡的子密鑰。 

        內部人員作案: 

        終端設備的開發人員利用工作之便盜取終端內的M1卡密鑰明文或經過單片機發送給RC500的M1卡密鑰明文。
        發卡機構工作人員利用工作之便截取PC機通過M1卡讀卡器發送給M1卡的密鑰明文。或直接操作PSAM卡盜取密鑰明文。
        系統開發人員利用工作之便盜取PSAM卡密鑰明文。

        無論哪種可能,都會對整個系統的安全造成致命的影響。實質上,這種一卡一密的做法是借用了CPU卡認證機制中的一卡一密概念,然而它在有意無意間忽略了一個非常重要的事實,即CPU卡和邏輯加密卡是完全不同的兩種卡片,它們的認證機制完全不同。CPU卡由于內部具有CPU處理器和操作系統COS,認證的過程完全是在用戶卡與SAM卡之間進行的,認證過程中傳送的是隨機數和密文,讀卡器基站芯片只是一個通訊通道;認證過程不能復制;使用的算法是公開算法,其安全性是基于CPU卡對密鑰的保護而非對算法的保護。密鑰在用戶卡和SAM卡內都不能讀出,而且密鑰的安裝是通過密文進行,系統上線后即使是發卡人員和開發人員也無法得到密鑰明文,從根本上保證了系統的安全性。正是由于意識到了M1卡潛在的安全性問題,建設部才多次開會推廣使用CPU卡。雙界面CPU卡更是由于其應用的靈活性和對金融規范的支持得到了各方的贊賞。 

        當然,一個系統的安全性不僅僅取決于采用了哪種卡片和哪種安全機制,而且通過系統設計上的安全手段也能夠彌補一些卡片安全上的不足。一個產品的安全性不能依賴于某一個方面的單個安全,更多的應從一個系統的整體的邏輯上去完善安全、把可能出現的不安全特征通過整體的系統完善起來.針對原有不安全的系統進行改造。例如在建設部的IC卡規范中對于M1卡的一卡一密就規定了在SAM中計算卡片密碼前必須校驗卡中的MAC認證碼,這在很大程度上降低了盜用SAM卡的可能性。然而遺憾的是大部分M1卡應用系統并沒有采用類似的補救手段,而且這種手段也不能完全杜絕克隆卡、偽造卡的使用。黑名單等防范手段雖然有效,但畢竟屬于事后防范,難以從根本上解決問題。特別是在當前Mifare1卡片被破解的背景下,簡單的采用打補丁的方法更是一種掩耳盜鈴的行為。
     
        對于一個IC卡應用系統而言,卡片的安全性好比一座摩天大廈的基礎,針對一種卡片的安全機制必定制定相應的保護措施以保護這個基礎。而當卡片的安全性發生了根本的變化時,原有的保護措施已經失去了效果,整個大廈的基礎發生了動搖,此時再采取補丁措施,無異于給大廈地面上的結構進行加固,措施再好也難以改變基礎動搖這一事實。根本的解決之道就是重新打牢基礎,從根基上完善系統的安全保護體系。 

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

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

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

        MIFARE卡被破解的消息在今年年初被披露以來,一石激起千層浪。眾多Mifare的用戶開始擔心自己系統的安全。通過系統的分析M1卡破解的原理及帶來的影響,我們可以得出結論:M1卡確實已經不再安全,基于M1卡的系統的安全基礎已經動搖,我們必須采取行動,選擇適當的產品替換M1卡,重新加固即將倒塌的安全基石。
     
        同MIFARE1卡相比,非接觸CPU卡是一種真正意義上的“智能卡”。CPU卡內集成電路中包括中央處理器(CPU)、只讀存儲器(ROM)、隨機存取存儲器(RAM)、電可擦除可編程只讀存儲器(EEPROM)等主要部分,猶如一臺超小型電腦。CPU卡采用了多種芯片級防攻擊手段,基本上不可偽造;CPU卡所特有的內外部認證機制以及以金融IC卡規范為代表的專用認證機制,能夠完全保證交易的合法性;在認證和交易過程中,CPU密鑰永遠不會外露,它每次送出的都是經過加密的隨機數。在認證和交易過程中所使用的密鑰都是在安全的發卡環境中產生并密文安裝到SAM卡和用戶卡中,整個過程密鑰不外露。CPU卡的應用防火墻功能可以保障同一張卡中不同應用的安全獨立性。對安全性要求較高的金融行業都以CPU卡作為下一代銀行卡的標準。采用非接觸式CPU卡可以杜絕偽造卡、偽造終端、偽造交易,最終保證了系統的安全性。 

        由于非接觸式CPU卡具有以上無可比擬的優點,非常適用于電子錢包、電子存折、公路自動收費系統、公共汽車自動售票系統、社會保障系統、IC卡加油系統、安全門禁等等眾多的應用領域。非接觸CPU卡將逐步取代邏輯加密卡而成為IC卡的主要選型。 

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

    MIFARE I卡與非接觸CPU卡比較

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

        以安防門禁系統為例,在一個門禁管理系統中,主要包括以下幾個部分 

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

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

        門禁系統中門禁單元設備的標準配置如下圖。 

        讀卡器是門禁控制系統當中的卡識別設備,將用戶刷卡信息傳送給控制器和管理系統,供控制系統進行判斷處理。
        電門鎖、閘機等是門禁系統的執行機構,執行對門、通道的開關控制。 

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

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

        2、對原系統中的發卡子系統進行改造,更換讀卡器,使之能夠發CPU卡。由于各個門禁廠商的軟件平臺都不同,因此這項改造需要原門禁系統廠商配合完成。 

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

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

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

        同方股份有限公司是國內知名的智能卡應用開發服務和產品提供商,是國內最早從事CPU卡研制和應用開發的公司之一。早在1998年清華同方研發中心與清華大學計算機系共同成立的智能卡COS研究小組開發的《金融IC卡操作系統ZTCOS1.0》就獲得了中國人民銀行銀行卡檢測中心頒發的《中國金融集成電路卡PBOC1.0檢測證書》。公司緊跟世界最先進的IC卡技術,是國內在ISO14443 TypeB非接觸標準產品和應用開拓者和領先者。公司承建的沈陽城市一卡通系統是國內最早最大規模的城市CPU卡一卡通應用項目,至今雙界面CPU卡實際發卡量已經突破350萬張,在國內城市通卡領域有著巨大的影響力。同方股份有限公司依托在非接觸智能卡多年的開發和應用經驗,致力于城市一卡通應用系統開發和相關產品研制,已形成了非接觸CPU卡、讀卡終端在內的完整的非接觸CPU卡產品體系。公司開發的雙界面CPU卡已獲得了《中國金融集成電路卡PBOC2.0檢測證書》。面對非接觸智能卡應用蓬勃發展的機遇,同方股份有限公司正深入開拓市場,加速新產品的開發研制,助力于中國非接觸智能卡行業的騰飛。

    本文關鍵詞:Mifare1卡破解,破解,M1卡,非接,ifare1卡破解,破解,M1卡,非接觸,fare1卡破解,破解,M1卡,非接觸C,are1卡破解,破解,M1卡,非接觸CP,re1卡破解,破解,M1卡,非接觸CPU,e1卡破解,破解,M1卡,非接觸CPU卡,1卡破解,破解,M1卡,非接觸CPU卡,,卡破解,破解,M1卡,非接觸CPU卡,M,破解,破解,M1卡,非接觸CPU卡,Mi,解,破解,M1卡,非接觸CPU卡,Mif,,破解,M1卡,非接觸CPU卡,Mifa,破解,M1卡,非接觸CPU卡,Mifar,解
    回到頂部