6.4 威脅
6.4 威脅
6.4.1 安全集成電路芯片相關威脅
在智能卡芯片生命周期中,TOE可能會受到各種各樣的攻擊。他們中間有些是無意識的行為,例如在交易過程中可能出現的一些誤操作;有些是蓄意的,例如使用非法卡作弊、截取并篡改交易過程中所交換的信息等行為。根據各種攻擊所采用的手段和攻擊的對象的不同,我們考慮了以下幾種威脅。
在生命周期2-7階段,安全芯片大體存在以下七類威脅:
a) 物理威脅
b) 邏輯威脅
c) 與訪問控制相關的威脅
d) 與不可預測的相互作用相關的威脅
e) 有關密碼功能的威脅
f) 監控信息的威脅
6.4.2 物理威脅
對集成電路的物理探測(T.P_Probe)
攻擊者可能對智能卡芯片實施物理探測,以獲取智能卡芯片的設計信息和操作內容。
物理探測可能是利用智能卡芯片失效性分析和采用半導體逆向工程技術來從智能卡芯片中獲取數據。這種探測可能包括對電氣功能的探測,由于這種探測需要直接接觸智能卡芯片內部,所以仍把它歸為物理探測。攻擊者的目的是獲取諸如硬件安全機制、訪問控制機制、鑒別系統、數據保護系統、存儲器分區,以及密碼算法程序等設計細節。弄清軟件設計中諸如初始化數據、個人化數據、口令或密鑰等也是他們的目標。智能卡芯片可能會在為上電或已上電狀態下受到探測攻擊并且在遭受這樣的攻擊后可能會處于無法操作狀態。
對安全芯片的物理更改(T.P_Alter)
攻擊者可能對智能卡芯片實施物理更改,以獲取智能卡芯片的設計信息和操作內容,或者改變安全功能及安全功能數據,從而非法使用智能卡芯片。
對智能卡芯片的更改可能利用智能卡芯片失效性分析或采用半導體逆向工程技術來實現。攻擊者的目的是獲取諸如硬件安全機制,訪問控制機制、鑒別系統、數據保護系統、存儲器分區,以及密碼算法程序等設計細節。弄清軟件設計中諸如初始化數據、個人化數據、口令或密鑰等也是他們的目標。更進一步的目標可能是修改或操縱調試階段的鎖定操作、初次使用標記、卡使用鎖定、鎖定功能配置、卡鎖定標志、卡終止標志等,以便非法使用智能卡芯片。
環境壓力(T.MALFUNCTION)
6.4.3 邏輯威脅
信息泄露(T.INF-LEAK)
攻擊者可以利用智能卡使用期間泄露的信息暴露保密的安全功能數據,信息泄露可能是正常操作固有的或者是由攻擊者導致的。
缺陷插入(T.Flt_Ins)
攻擊者可能通過反復地插入選定的數據,并觀察相應的輸出結果,從而獲得智能卡芯片安全功能或用戶相關的信息。
這種威脅的特點是有目的選擇和控制輸入數據,而不是隨機選擇或控制。通過插入選定的數據并觀察輸出結果的變化,是對密碼設備的一種常見攻擊手段,這種手段也可用于對智能卡芯片的攻擊。其目的是通過觀察智能卡芯片如何對選定的輸入做出響應來獲取與安全功能或用戶相關的信息。這種威脅的特點是有意選擇和控制輸入數據,而不是隨機選擇數據或控制輸入輸出操作中的物理特性。
錯誤輸入(T.Inv_Inp)
攻擊者可能通過引入無效的輸入數據來危及智能卡芯片的安全功能數據的安全。
錯誤輸入操作形式包括錯誤的格式、索要的信息超過記錄范圍、試圖找到并執行無正式書面文件的命令。這樣的輸入可能在正常使用過程中的任意時間發生,包括訪問授權前。其結果是該攻擊可能會危及安全功能,在操作中產生可利用的錯誤或者泄漏所保護的數據。
未授權程序裝載(T.Ua_Load)
攻擊者可能利用未授權的程序探測或修改智能卡芯片安全功能代碼及數據。
6.4.4 與訪問控制相關的威脅
非法訪問(T.Access)
使用者或攻擊者可能在未經信息或資源的擁有者或責任者許可的條件下對信息或資源進行訪問。
授權角色都有特定的權限來訪問智能卡芯片的信息,如果訪問超出規定權限,會導致安全相關信息的暴露。
對初始使用權的欺騙(T.First_Use)
6.4.5 與不可預測的相互作用相關的威脅
使用被禁止的生命周期功能(T.Lc_Ftn)
攻擊者可能會利用相關命令,尤其是測試和調試命令來獲取智能卡芯片安全功能數據或敏感的用戶數據,這些命令在智能卡芯片生命周期的以往某些階段是必要的,但在現階段是被禁止的。
6.4.6 有關密碼功能的威脅
密碼攻擊(T.Crypt_Atk)
攻擊者可能實施密碼攻擊或窮舉攻擊危及智能卡芯片的安全功能。
這種攻擊可能用到一些加密函數、編碼/解碼函數或隨機數發生器、攻擊者的目標時發現密碼算法中的脆弱性或通過窮舉來發現密鑰和輸入數據。攻擊者的目的在于暴露智能卡芯片的安全功能數據從而危及用戶敏感數據的安全。
隨機數的缺陷(T.RND)
6.4.7 監控信息的威脅
信息泄露(T.I_Leak)
智能卡芯片必須提供控制和限制智能卡芯片信息泄漏的方法,以免有用的信息暴露在電源、地面、時鐘、復位或者I/O線路中。攻擊者可對正常使用期間智能卡芯片泄漏的信息加以利用。
智能卡芯片必須被設計和編程為,例如通過分析電源消耗不能泄漏處理運算或危及安全的信息。該類泄漏包括功耗、I/O特性、時鐘頻率的變化或所需處理時間的變化等。這可理解為一個隱蔽的傳輸途徑,但與操作參數的測量密切相關。這些泄漏信息可通過直接(接觸)測量或測量輻射信號得到,并且可能與正在執行的操作有關。能量分析就是一個信息泄漏的例子。
綜合分析,相關性分析(T.Link)
攻擊者可能觀察到一個實體使用的多種資源和服務,聯系這些使用,便可推導出這個實體希望保護的安全功能數據。
6.4.8 各種其他威脅
環境壓力(T.Env_Strs)
攻擊者可通過將智能卡芯片暴露在有壓力的環境下來達到項安全功能數據引入錯誤的目的。
將集成電路暴露在超出其使用范圍的情況下,將導致其故障或安全臨界元素的失敗,從而達到允許操縱程序或數據的目的。這種情況可能是正常參數的極值(高或低)如溫度、電壓、時鐘頻率,也可能是不正常的環境如外部能量場。該攻擊的目的在于產生一個直接的錯誤導致安全信息的泄漏,或者是模擬中止進程來產生一個結束使用期限的失敗。
接續攻擊(T.Lnk_Att)
攻擊者在智能卡芯片不穩定或其安全功能的某些方面下降時實施后續攻擊,從而獲取安全功能數據或敏感的用戶數據。
克隆(T.Clon)
攻擊者可能克隆部分或全部智能卡芯片的功能以開發進一步的攻擊手段。
攻擊者可能通過對智能卡芯片本身的詳細觀察來獲取克隆部分或全部智能卡芯片所必需的信息。攻擊者通過開發智能卡芯片的物理模型來實驗其不同的功能和處理過程,從而實現進一步的攻擊以達到成功暴露安全功能數據和敏感用戶數據的目的。
智能卡芯片的更改和重新使用(T.Carrier_Tamper)
攻擊者在原始載體上修改智能卡芯片并偽裝成原始的智能卡芯片從而非法使用用戶數據。
移動、修改或者重新將智能卡芯片插入到載體中偽裝成原始的智能卡芯片,其目的在于訪問被保護的資產。
管理者權力濫用(T.Priv)
管理者或其他特權用戶可能通過執行暴露智能卡芯片安全功能或受保護數據的操作而威脅其安全特性。
一個特權用戶或管理者可以實施基于上述所有威脅的攻擊。
6.4.9 智能卡管理相關威脅
T.IMPERSONATE
攻擊者可能會嘗試冒充持卡人以獲得提供給持卡人的服務,冒充持卡人意味著泄露或者猜測存儲在CVM中的PIN碼。
直接威脅的資產: D.PIN, D.APP_I_DATA, D.APP_C_DATA。
T.REPLAY
攻擊者通過重新使用授權用戶以前完成 (或部分完成)的操作可以刺探智能卡的安全。
重放已完成或部分完成的操作企圖繞過安全機制或暴露安全相關的信息;例如攻擊者可以嘗試發送他在先前會話中截獲的APDU命令到智能卡;攻擊者也可以使用以前傳送到他的身份驗證信息以暴露或修改存儲在智能卡中被其他應用目前使用的信息;例如,攻擊者可以利用曾經有效的身份驗證信息,但不再有效,如舊的PIN值或密鑰。
直接威脅的資產: D.PIN,D.ISD_KEYS, D.CASD_KEYS, D.APSD_KEYS, D.APP_C_DATA, D.APP_I_DATA, D.APP_CODE以及 D.CARD_MNGT_DATA。
T.BRUTE-FORCE
攻擊者可搜尋整個用戶可訪問的數據空間以便識別出平臺以及應用數據。
可以重復傳輸(調用)APDU命令(API方法)以嘗試暴力提取諸如密鑰或PIN秘密。重復使用請求范圍有效的命令以暴露盡可能多的數據空間,例如,攻擊者可能利用不同形式的輸入系統地實驗;攻擊可基于黑盒軟件工程技術建立算法的性質和謂詞。如果詳盡地執行,它可方便特定應用的逆向工程,以及提取使用和安全相關的信息;攻擊也可以在智能卡使用時產生錯誤。
直接威脅的資產:D.PIN、D.ISD_KEYS, D.CASD_KEYS, D.APSD_KEYS。
T.INVALID-INPUT
攻擊者可確定安全相關的信息,通過無效輸入的引入導致智能卡出現故障或其他危害安全的行為;
無效的輸入可能采取未正確格式化的操作,請求超出注冊限制的信息,或嘗試尋找可能未公開的命令等形式;提供正常操作這種輸入可在智能卡正常使用階段的任何時候產生,包括訪問授權前。攻擊也可以使用無效的數據和不恰當的操作,如不在范圍的請求(或格式)的命令(或功能),以其他不符合可接受的用法的方式;這種攻擊的結果可以是危害安全功能、操作過程中產生可利用的錯誤以及受保護的數據的泄漏等。
直接威脅的資產:所有資產。
T.INVALID-ORDER
攻擊者通過意外的順序激活接口提供的功能破毀內部的數據結構。
直接威脅的資產:D.CARD_MNGT_DATA,D.SEC_DATA,D.JCS_DATA
T.FORCED-RESET
攻擊者通過對選擇的操作的不適當的終止可能強制智能卡進入不安全的生命周期狀態。
直接威脅的資產:所有資產
T.LIFE-CYCLE
攻擊者訪問其預期的可用性范圍之外的應用,如此違反應用的不可逆的生命周期階段(例如,攻擊者重新個人化應用)。
直接威脅的資產: D.APP_I_DATA, D.APP_C_DATA, D.CARD_MNGT_DATA。
T.UNAUTHORIZED_CARD_MNGT
攻擊者進行下列未經授權的智能卡管理操作(例如冒充智能卡的參與者),以便利用授予這個參與者的特權或服務取得諸如欺騙這樣的好處。
a) 裝載包文件
b) 安裝包文件
c) 遷移包或Applet
d) 個人化Applet或安全域
e) 刪除包文件或者Applet
f) 更新Applet或者安全域的特權
直接威脅的資產: D.ISD_KEYS, D.CASD_KEYS, D.APSD_KEYS, D.APP_C_DATA, D.APP_I_DATA, D.APP_CODE以及 D.CARD_MNGT_DATA。
T.OBJ-DELETION
攻擊者執行Java Card的垃圾回收功能,以便查找垃圾回收的缺陷,從而使得智能卡進入不安全狀態。
6.4.10 運行環境相關威脅
6.4.11 保密性
T.CONFID-APPLI-DATA
攻擊者執行應用暴露屬于另一個應用的數據。
直接威脅的資產: D.APP_C_DATA, D.PIN 以及D.APP_KEYs.
T.CONFID-JCS-CODE
攻擊者執行應用暴露Java Card系統的代碼。
直接威脅的資產: D.JCS_CODE.
T.CONFID-JCS-DATA
攻擊者執行應用暴露屬于Java Card系統的數據。
6.4.12 完整性
T.INTEG-APPLI-CODE
攻擊者執行應用改變自身或其他應用的代碼。
直接威脅的資產: D.APP_CODE。
T.INTEG-APPLI-CODE.LOAD
當應用包被傳送到智能卡安裝時,攻擊者修變自身或其他應用的代碼。
直接威脅的資產: D.APP_CODE。
T.INTEG-APPLI-DATA
攻擊者執行應用改變自身或其他應用的數據。
直接威脅的資產: D.APP_I_DATA, D.PIN 以及 D.APP_KEYs。
T.INTEG-APPLI-DATA.LOAD
當應用包被傳送到智能卡安裝時,攻擊者修變包含在應用包中的初始化數據。
直接威脅的資產: D.APP_I_DATA 以及 D_APP_KEY。
T.INTEG-JCS-CODE
攻擊者執行應用修改Java Card系統的代碼。
直接威脅的資產: D.JCS_CODE。
T.INTEG-JCS-DATA
攻擊者執行應用修改Java Card系統或者API的數據。
6.4.13 身份竊取
T.SID.1
一個應用冒充另一個應用甚至Java Card運行環境,以便非法訪問智能卡或者最終用戶或終端相關一些資源。
直接威脅的資產: D.SEC_DATA(其他資產可能受到損害如果這種攻擊成功,例如,JCRE的身份被竊取),D.PIN以及D.APP_KEYs.
T.SID.2
攻擊者修改特權角色的TOE屬性(例如,默認的Applet和當前選擇的Applet),它允許非法冒充這個角色。
6.4.14 未經授權執行
T.EXE-CODE.1
應用執行未經授權的方法。
直接威脅的資產: D.APP_CODE。
T.EXE-CODE.2
應用執行任意數據或者一個方法的片段。
直接威脅的資產: D.APP_CODE。
T.NATIVE
應用執行一個繞過如防火墻等TOE安全功能的本地方法。
6.4.15 拒絕服務
T.RESOURCES
攻擊者通過消耗智能卡資源(RAM或者NVRAM)阻止Java Card系統正確操作
6.4.16 服務
6.4.17 環境相關威脅
T.LEAKAGE
攻擊者可能會利用智能卡在使用過程中從TOE泄露出的信息以暴露機密的資產;這種攻擊是非侵入的,并不要求和智能卡內部進行直接的物理接觸,通過放射、功耗的變化、I / O特性、時鐘頻率或處理時間要求的變化等可能會發生泄漏;其中一個例子是差分能量分析攻擊(DPA),另一個安全問題是利用集成電路的敏感性把TOE置于不安全狀態。
T.FAULT
GB/T 34095-2017 信息安全技術 用于電子支付的基于近距離無線通信的移動終端安全技術要求
推薦文章: