亚洲狼窝一区二区在线观看-米奇精品一区二区三区在线观看-一区二区三区美女免费作爱视频-av中文字幕不卡在线播放

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

聯(lián)系興邦電子

全國咨詢熱線:40000-63966

售后:0371-55132951/55132952

工廠:河南省 鄭州市 高新區(qū)蓮花街電子電器產(chǎn)業(yè)園

智能卡的攻擊技術(shù)分析及安全設(shè)計策略

文章出處:http://m.luckydriving.com 作者:中國一卡通網(wǎng) 收編   人氣: 發(fā)表時間:2011年09月28日

[文章內(nèi)容簡介]:分析智能卡面臨的安全攻擊,研究相應(yīng)的防御措施,對于保證整個智能卡應(yīng)用系統(tǒng)的安全性有重大的意義。本文首先分析了目前主要的智能卡攻擊技術(shù),并有針對性地提出相應(yīng)的安全設(shè)計策略。

    0 引言 

    在智能卡應(yīng)用日益廣泛的今天,智能卡應(yīng)用系統(tǒng)的安全問題非常重要。通常認(rèn)為智能卡本身具有較高的安全性 ,但隨著一些專用攻擊技術(shù)的出現(xiàn)和發(fā)展,智能卡也呈現(xiàn)出其安全漏洞,從而導(dǎo)致整個應(yīng)用系統(tǒng)安全性降低。分析智能卡面臨的安全攻擊,研究相應(yīng)的防御措施,對于保證整個智能卡應(yīng)用系統(tǒng)的安全性有重大的意義。本文首先分析了目前主要的智能卡攻擊技術(shù),并有針對性地提出相應(yīng)的安全設(shè)計策略。 

    1 智能卡設(shè)計簡述 

    智能卡是將具有存儲、加密及數(shù)據(jù)處理能力的集成電路芯片鑲嵌于塑料基片上制成的卡片,智能卡的硬件主要包括微處理器和存儲器兩部分,邏輯結(jié)構(gòu)如圖1 所示。 

    智能卡內(nèi)部的微處理器一般采用8 位字長的中央處理器,當(dāng)然更高位的微處理器也正在開始應(yīng)用。微處理器的主要功能是接受外部設(shè)備發(fā)送的命令,對其進(jìn)行分析后,根據(jù)需要控制對存儲器的訪問。訪問時,微處理器向存儲器提供要訪問的數(shù)據(jù)單元地址和必要的參數(shù),存儲器則根據(jù)地址將對應(yīng)的數(shù)據(jù)傳輸給微處理器,最后由微處理器對這些數(shù)據(jù)進(jìn)行處理操作。此外,智能卡進(jìn)行的各種運(yùn)算(如加密運(yùn)算) 也是由微處理器完成的。而控制和實(shí)現(xiàn)上述過程的是智能卡的操作系統(tǒng)COS??▋?nèi)的存儲器容量一般都不是很大,存儲器通常是由只讀存儲器ROM、隨機(jī)存儲器RAM 和電擦除可編程存儲器EEPROM組成。其中,ROM 中固化的是操作系統(tǒng)代碼,其容量取決于所采用的微處理器;RAM 用于存放操作數(shù)據(jù),容量通常不超過1KB; EEPROM中則存儲了智能卡的各種信息,如加密數(shù)據(jù)和應(yīng)用文件等,容量通常介于2KB 到32KB 之間,這部分存儲資源可供用戶開發(fā)利用。 

智能卡的硬件結(jié)構(gòu)

圖1  智能卡的硬件結(jié)構(gòu)

    2 智能卡攻擊技術(shù)分析 

    在智能卡的設(shè)計階段、生產(chǎn)環(huán)境、生產(chǎn)流程及使用過程中會遇到各種潛在的威脅。攻擊者可能采取各種探測方法以獲取硬件安全機(jī)制、訪問控制機(jī)制、鑒別機(jī)制、數(shù)據(jù)保護(hù)系統(tǒng)、存儲體分區(qū)、密碼模塊程序的設(shè)計細(xì)節(jié)以及初始化數(shù)據(jù)、私有數(shù)據(jù)、口令或密碼密鑰等敏感數(shù)據(jù),并可能通過修改智能卡上重要安全數(shù)據(jù)的方法,非法獲得對智能卡的使用權(quán)。這些攻擊對智能卡的安全構(gòu)成很大威脅。 

    對智能卡的攻擊可分為三種基本類型:

    (1) 邏輯攻擊:在軟件的執(zhí)行過程中插入竊聽程序bugs 
    (2) 物理攻擊:分析或更改智能卡硬件
    (3) 邊頻攻擊:利用physical phenomena 來分析和更改智能卡的行為 

    2.1 邏輯攻擊技術(shù)分析 

    許多方面存在潛在的邏輯缺陷:
    (1) 潛藏的命令:
    (2) 不良參數(shù)與緩沖器溢出
    (3) 文件存取
    (4) 惡意進(jìn)程applet?
    (5) 通信協(xié)議
    (6) 加密協(xié)議,設(shè)計與執(zhí)行過程 

    2.2 物理攻擊 

    多種方法和工具可用于實(shí)現(xiàn)物理攻擊 

    (1) 化學(xué)溶劑、蝕刻和著色材料
    (2) 顯微鏡
    (3) 探針臺
    (4) FIB聚離子束? 

    物理攻擊的安全對策在以下方面加以改進(jìn):

    (1) 形體尺寸
    (2) 多層化
    (3) 保護(hù)層
    (4) 傳感器
    (5) 不規(guī)則總線?
    (6) 封膠?邏輯 

    2.3 邊頻攻擊 

    1)差分能量分析(DPA) 

    差分能量分析(DPA)攻擊是通過用示波鏡檢測電子器件的能量消耗來獲知其行為。攻擊者只需知道算法的明文(輸入)或密文(輸出),通過分析和比較一系列的能量軌跡就可重現(xiàn)加密密鑰。 

    DPA攻擊的基礎(chǔ)是假設(shè)被處理的數(shù)據(jù)與能量消耗之間存在某種聯(lián)系,換句話說,假設(shè)處理0比1所用的能量要少(反之亦然)。那么對兩個不同數(shù)據(jù)執(zhí)行同一算法的兩個能量軌跡會由于輸入數(shù)據(jù)的不同而產(chǎn)生微小的差別。用計算機(jī)嚴(yán)格按時鐘計算兩條軌跡的差得到差分軌跡,差分軌跡中出現(xiàn)峰值的時刻即是輸入數(shù)據(jù)產(chǎn)生差別的時鐘周期。如此檢查加密算法的所有輸入以及每一對0和1產(chǎn)生的差分軌跡,就可以識別出它們出現(xiàn)在程序代碼中的確切時間,從而獲取加密密鑰。 

    2)能量短脈沖干擾 

    微處理器要求在穩(wěn)定的電壓下工作,能量供應(yīng)的中斷就好象突然沖擊程序運(yùn)行或復(fù)位電路。然而,一個短而巧妙的脈沖可以引起單步的程序錯誤而微處理器仍能繼續(xù)執(zhí)行程序。例如, CPU讀取存儲單元的內(nèi)容,三極管用一個閾值來檢測存儲單元的值以確定所讀的是邏輯0或1。突然出現(xiàn)的能量短脈沖對存儲值和邏輯值都會產(chǎn)生影響。不同的內(nèi)部容量會使存儲值受到不同的影響,有可能會使真實(shí)的值被歪曲。如圖3所示,與邏輯0對應(yīng)的低電平在正常的操作狀態(tài)下可能低于閾值電平,然而由于短脈沖的能量下壓可能導(dǎo)致其高于閾值電平。許多加密算法都易受這一類故障注入的影響。采用差分故障分析(DFA, Differential Fault Analysis )技術(shù)將正確的與錯誤的密碼編碼相比較從而析出秘藏的密鑰。 

讀存儲器時能量短脈沖干擾

圖3 讀存儲器時能量短脈沖干擾

    短脈沖干擾的第二種攻擊方式是將PIN校驗(yàn)失敗轉(zhuǎn)為成功以欺騙處理器。更為嚴(yán)格的一種方式是在處理器正要將校驗(yàn)失敗寫入存儲器時完全關(guān)閉電源,從而避免PIN校驗(yàn)失敗計數(shù)器溢出。 

    短脈沖干擾的第三種應(yīng)用是攻擊發(fā)送限制計數(shù)器,從而導(dǎo)致整個存儲器內(nèi)容輸出到串行接口。 

    3 智能卡的安全設(shè)計策略 

    安全應(yīng)用的設(shè)計者使用智能卡而無視其許多的弱點(diǎn)(攻擊點(diǎn)?),可供選擇的解決方案有著其自己的安全漏洞,甚至于更不安全。本節(jié)為設(shè)計者提供一些應(yīng)用技巧,以達(dá)到適當(dāng)水平的安全。 

    3.1 攻擊者的商業(yè)狀況 

    大多數(shù)嚴(yán)重的威脅來自于尋求經(jīng)濟(jì)利益的攻擊者。這一類攻擊者會慎重考慮成本與收入之間的平衡。防范措施的技巧多在于增加攻擊成功的難度和成本。 

    3.2 設(shè)計步驟 

    智能卡應(yīng)用系統(tǒng)的設(shè)計者使用現(xiàn)成?的智能卡產(chǎn)品來設(shè)計系統(tǒng)、軟件和協(xié)議,實(shí)現(xiàn)系統(tǒng)應(yīng)用。盡管面臨重重威脅,他仍然需要交付一個足夠安全的系統(tǒng)。

    以下是達(dá)成這一目標(biāo)所需要采取的步驟:
    (1)確定應(yīng)用系統(tǒng)所需的安全程度及特殊的安全要求。同時還需要將技術(shù)上、商業(yè)上、公共關(guān)系上(品牌價值)潛在的安全成本考慮在內(nèi)。
    (2)進(jìn)行風(fēng)險分析并評估安全威脅。
    (3)分析攻擊者的商業(yè)狀況,考慮從善意的黑客到犯罪組織等各種類型的攻擊者。
    (4)選擇能達(dá)到所要求的安全級別的智能卡解決方案。 

    3.1 邏輯攻擊的安全策略 

    邏輯攻擊的安全對策 

    (1) 結(jié)構(gòu)化設(shè)計
    (2) 正規(guī)的校驗(yàn)
    (3) 測試
    (4) 接口與應(yīng)用的標(biāo)準(zhǔn)化
    (5) 集中?應(yīng)用JAVA卡操作系統(tǒng)
    (6) 普及評估實(shí)驗(yàn)室

    3.2 物理攻擊的安全策略 

    物理攻擊的安全對策在以下方面加以改進(jìn): 

    (7) 形體尺寸
    (8) 多層化
    (9) 保護(hù)層
    (10) 傳感器
    (11) 不規(guī)則總線?
    (12) 封膠?邏輯 

    3.3 安全設(shè)計策略 

    面對上述種種攻擊手段,智能卡在設(shè)計時應(yīng)根據(jù)所要求的安全級別采用響應(yīng)安全設(shè)計策略,其基本思想是:增加芯片上集成電路的復(fù)雜性;提高電路的抗干擾能力;增加噪聲來掩蓋真正的電源功率的消耗;提高對異常信號的控制功能等等。具體預(yù)防措施如下: 

    (1)限制程序計數(shù)器技術(shù)
    在上面所述的短脈沖攻擊中,由于攻擊者可以利用程序計數(shù)器來增加對內(nèi)存數(shù)據(jù)的訪問, 因此在智能卡程序設(shè)計時一定要限制程序計數(shù)器的使用, 以免被攻擊者所利用。 

    (2)隨機(jī)的時鐘信號
    許多邏輯和邊頻攻擊技術(shù)是要攻擊者預(yù)見某條指令執(zhí)行的準(zhǔn)確時間。如果處理器在每一次復(fù)位后執(zhí)行一個相同的指令,很容易被攻擊者發(fā)現(xiàn)。推測處理器的行為也能簡化對協(xié)議的分析。因此預(yù)防措施是在可觀察和關(guān)鍵的操作之間插入隨機(jī)的時鐘,這樣可以有效地防止這種攻擊。 

    (3)低頻傳感器
    當(dāng)智能卡芯片用低頻的時鐘電路驅(qū)動時,用電子流測試來觀察總線的技術(shù)日益簡單。因此芯片的設(shè)計者要對低于某一時鐘頻率的行為報警,以防止這種行為的發(fā)生。應(yīng)設(shè)計這樣一種電路:外部的復(fù)位信號不能直接作用到內(nèi)部復(fù)位線上, 只能引起一個外部分頻器來降低時鐘信號頻率,以激發(fā)低頻探測器,而它又可激發(fā)內(nèi)部復(fù)位線,最終停止分頻器,而處理器通過傳感器測試并開始正常的操作。這種設(shè)計的處理器在上電后沒有正常的內(nèi)部復(fù)位就不會運(yùn)行。其它防御非入侵式攻擊的傳感器也要嵌入到處理器的正常操作中去,否則可以通過破壞電路的方式繞過它們。 

    為了增加攻擊者的難度, 可以將電路設(shè)計為多個電路層。使微探針技術(shù)的使用受到一定限制,從而保證了一定的安全性。但同時也增加了電路設(shè)計的復(fù)雜性和提高了制造成本。 

    (5)頂層的傳感器網(wǎng)
    在芯片的表面加上一層格狀的網(wǎng)絡(luò)能夠有效地防止激光切割及探針類的探測技術(shù)。這種技術(shù)也能有效地防止對低層電路的進(jìn)一步探測。這種傳感器網(wǎng)與一個寄存器的標(biāo)志位相關(guān)聯(lián),當(dāng)入侵行為發(fā)生的時候,寄存器的標(biāo)志位發(fā)生改變,使內(nèi)存的內(nèi)容清零。 

    (6)自毀技術(shù)
    在芯片的最外層沉積一層薄薄的金屬膜, 并在其上可加UZ 的電壓,然后在最外面用塑料封裝起來。這樣,芯片就好像穿了一層導(dǎo)電的衣服。如攻擊者用精密機(jī)械探針插入芯片內(nèi)企圖探測里面的密碼時, 會引起短路而燒毀芯片。
 
    (7)抗電磁探測密碼技術(shù)
    采用平衡電路降低信號能量以及設(shè)置金屬防護(hù)以抑制電磁發(fā)射。導(dǎo)電衣服對芯片內(nèi)發(fā)出的電磁輻射有一定的屏蔽或衰減作用,使其輻射出來的電磁波減弱。因此可以在芯片里面加上1個隨機(jī)數(shù)發(fā)生器, 其結(jié)果是使輻射出的電磁波更加混亂, 即便是靈敏的電磁探頭測到它的電磁輻射也無法分析到里面的真實(shí)密鑰。 

    (8)鎖存電路
    在智能卡的處理器中設(shè)置鎖存位。當(dāng)出現(xiàn)異常情況,如溫度、壓力、電壓、電流等出現(xiàn)不安全的情況并對芯片內(nèi)的敏感數(shù)據(jù)產(chǎn)生威脅時,它會發(fā)出解鎖電平,同時立即清除芯片中的敏感數(shù)據(jù)&注意此項(xiàng)功能的設(shè)置與用戶所采用的安全策略有關(guān),否則容易引起用戶不滿。
 
    (9)隨機(jī)多線程
    設(shè)計多線程處理器結(jié)構(gòu),由硬件控制處理器,在每一個指令組隨機(jī)有N 個或多個線程在執(zhí)行。這樣的處理器由多組寄存器、程序計數(shù)器、指令寄存器等組成,組合邏輯采取隨機(jī)改變的方式。 

    (10)破壞測試電路:在智能卡卡生產(chǎn)時一般會保留測試電路用以測試智能卡卡是否合格,而有些智能卡卡在發(fā)行時仍然保留了這些測試電路,從而為攻擊者提供了巨大的便利,因此,在智能卡檢測合格后,應(yīng)該破壞掉這些電路。

    4 結(jié)論 

    智能卡應(yīng)用系統(tǒng)是一個安全環(huán)境很復(fù)雜的系統(tǒng),本文為分析這個系統(tǒng)面臨的安全攻擊提供了一個思路,為系統(tǒng)的安全設(shè)計提供了依據(jù)。下一步工作是量化各安全設(shè)計策略,探索在降低安全威脅與增加安全成本之間尋找最佳平衡點(diǎn)的方法。

本文關(guān)鍵詞:攻擊技術(shù),安全設(shè)計,智能卡攻擊,智能卡
回到頂部