Transcript IC卡安全

Module 8:IC卡安全
電子商務安全
8-1
Module 8: IC卡安全

Module 8-1:IC卡簡介
 Module 8-2:IC卡安全架構
 Module 8-3:IC卡安全技術標準
 Module 8-4:IC卡應用模式
 參考文獻
電子商務安全
8-2
Module 8-1:IC卡簡介
電子商務安全
8-3
Module 8-1: IC卡簡介

IC卡之類型
 IC卡之檔案結構
 IC卡之通訊協定
 IC卡之存取控制
電子商務安全
8-4
IC卡之類型

接觸式IC卡
 接觸式IC卡上IC晶片接觸點
C1
C5
C2
C6
C3
C7
C4
C8
C1 : Vcc
5V  0.25V
C5 : GND (ground)
C2 : RST (Reset)
C6 : V pp (programming Voltage)
C3 : CLK (Clock)
C7 : I / O
C4 : RFU
C8 : RFU
(Reservedfor future use )
中華民國資訊安全學會
電子商務安全
8-5
IC卡之類型
CPU卡內部電路概念圖
 IC卡內之CPU一般為8bit單晶片處理器,如8051, 6805等。
ROM
Card OS
RST
界
面
CLK
I/O
CPU
EEPROM/Flash
Data File, PIN keys
UART
密碼協同處理
Crypto-coprocessor
電子商務安全
8-6
IC卡之類型

非接觸式(contactless)IC卡
非接觸式IC卡內部電路概念圖
整
電
磁
波
中華民國資訊安全學會
電子商務安全
記
憶
體
流
CPU
介
面
密碼
處理
8-7
IC卡之類型

混和式(hybrid) IC卡
 含有接觸式與非接觸式兩種介面之 IC卡 (ICC)
接觸式與非接觸式各用其獨立之 IC晶片
接觸式與非接觸式共用一顆 IC晶片
中華民國資訊安全學會
中華民國資訊安全學會
電子商務安全
8-8
IC卡之檔案結構
 IC卡是以檔案為處理單位
 檔案結構含標頭(header)與檔案本體(body)兩部份
 IC卡是採階層式的檔案架構
 IC卡安全需考量檔案之存取控制與加密處理,故需先了解IC
卡之檔案架構。
電子商務安全
8-9
IC卡之檔案結構-----檔案型態

檔案類別:
依 ISO 7816 part 4 標準
類似DOS或UNIX系統
1.目錄檔(Directory File) :
主檔(Master File ---MF)
專屬檔(Dedicated file---DF)
2.基本檔(Elementary File---EF):資料檔
工作檔(Working file)
內部檔(Internal file)
電子商務安全
8-10
IC卡之通訊協定

IC卡之啟動與處理概述
將接觸式IC卡插入讀卡機,或將非接觸式IC卡近接
讀卡機
IC卡經由讀卡機取得+5V電源及鐘訊CLK
IC卡與讀卡機間建立交談通訊程序
讀卡機存取IC卡資料
完成處理,IC卡退出(或遠離) 讀卡機
電子商務安全
8-11
IC卡之通訊協定

接觸式IC卡之啟動與處理步驟
1.讀卡機經C2送Reset (RST) 信號至IC卡:讀卡機起動交握程
序,讓IC卡內之CPU重置各暫存器 (Registers),並起動重置
回應處理。
2. IC卡經C7(I/O)送重置回應(ATR, Answer To Reset) 至讀卡機:
以讓讀卡機了解IC卡之基本參數設定。
3. 讀卡機經C7(I/O)送命令 (command) 至IC卡:讀卡機要求IC
卡執行特定工作。
4. IC卡回應 (Response)執行結果及狀態給讀卡機。
5.重覆步驟(3)(4)直至完成交談處理。
6.終止交談程序,IC卡退出(或遠離) 讀卡機。
電子商務安全
8-12
IC卡之通訊協定

接觸式IC卡與讀卡機之通訊協定
讀卡機
IC卡
(1)
Re
set
 
( 2)
ATR
  
(3)
Com
 m
and


( 4)
Re sponse
  
(5)
重覆步驟(3)(4)至完成工作
(6)
終止交談
  
電子商務安全
C2 ( RST)
C7 ( I / O )
C7 ( I / O )
C7 ( I / O )
8-13
IC卡之存取控制
IC卡之存取控制是針對檔案之存取控制。
所有檔案都有一存取相關規則資料,存放於該檔案
的Header內,Header由檔案管理系統管理。因此,
IC卡的安全決定於檔案管理系統存取政策。
每個檔案都以該檔案的FID識別,控制存取該檔案
之資料。
電子商務安全
8-14
IC卡之存取控制-----檔案選擇
 採用物件導向管理方式,檔案必須先選取才可存取。
 任一時間只有一個檔案可被選取
 主檔可在檔案樹狀結構中任一層直接選取。
電子商務安全
8-15
IC卡之存取控制-----檔案選擇
主檔(MF)的選取:
 以FID“3F00”選取
 reset後直接進入MF
專屬檔(DF)的選取
 利用專屬檔的FID或包含已註冊的AID之DF 檔名。
 選取檔案命令必須包含2 bytes專屬檔的FID,檔案必須選取後
才可被存取。
電子商務安全
8-16
IC卡之存取控制-----檔案選擇
專屬檔(DF)的選取
利用專屬檔的短檔案識別符(Short FID)
只可對DF動作
專屬命令:READ BINARY, UPDATE
BINARY, UPDATE RECORD
優點:
1.利用單一命令,可對檔案同時選擇及存取。
2.高執行速度
電子商務安全
8-17
Module 8-2:IC卡安全架構
電子商務安全
8-18
Module 8-2: IC卡安全架構

IC卡之安全防護概念
 IC卡之安全攻擊
 IC卡之安全防護
電子商務安全
8-19

IC卡之安全防護概念
 IC卡是ㄧ密碼模組。
 IC卡主要用於
儲存公開金鑰或私密金鑰之憑證(certificate)裝置。
儲存使用者之祕密參數。
儲存個人私密資料。
儲存隨附高階物品之產品資料。
電子商務安全
8-20
卡片身分鑑別
檔案存取控制
檔案加密處理
運算訊息隱藏
安全防護
攻擊
IC卡
應用系統
讀
卡
機
電子商務安全
IC卡
中華民國資訊安全學會
8-21
 IC卡依不同之應用情境,可能會遭受不同之安全威脅
與攻擊。
側錄:經由有線或無線從旁盜錄資料
假冒:假冒系統或使用者
洩漏:經由有線或無線從內部洩漏資料出去
攔截:經由有線或無線攔截通訊資料
竊取:竊取非經授權之內部資料
竄改:竄改所竊取之內部資料或所攔截之通訊資料
隱私:揭露個人隱私資料
電子商務安全
8-22
 IC卡依不同之應用情境,可提供下列部分或全部之安
全防護服務。
鑑別性
機密性
完整性
存取控制
不可否認
電子商務安全
8-23
IC卡之安全攻擊

IC卡與一般微處理機架構類似,為因應身分鑑別、
資料加解密、簽章驗證等密碼處理功能需求,通
常內含一密碼協同處理器(Crypto Coprocessor)。
 IC卡常被應用於資訊安全應用處理上。因此,常
面臨不當攻擊,所以IC卡設計上須考慮安全防護
措施。
電子商務安全
8-24
IC卡之安全攻擊----- IC卡硬體架構與程式執
行
EEPROM
ROM
Processor &
Co-processor
RAM
串列輸出
ROM---IC卡的OS (COS),在晶片製造時完成
EEPROM—記憶應用程式與相關的靜態資料
RAM—應用程式執行過程所產生之暫態資料
電子商務安全
8-25
IC卡之安全攻擊----- IC卡硬體架構與程式執
行

應用程式被IC卡執行之四個主要步驟 (由終端機觀
點):
*選擇載入IC卡的應用程式
*提供使用者鑑別
*讀寫運算IC卡資料
*退出應用程式
電子商務安全
8-26
IC卡之安全攻擊----- IC卡的可能攻擊方法
IC卡的四種可能攻擊:
•侵入式攻擊(Invasion Attack)
•軟體攻擊(Software Attack)
•側通道攻擊(Side-Channel Attack)
•故障攻擊(Fault Attack)
電子商務安全
8-27

侵入式攻擊(Invasion Attack)
利用微探針(Microprobing)直接量測晶片,取得相
關資訊的技術。這類攻擊主要利用晶片製造過程中,
用於量測晶片的儀器設備。
*不需知道太多晶片相關資訊
防禦技術:硬體電路必須具有侵入偵測與反應設
計。
電子商務安全
8-28

侵入式攻擊步驟
反向工程
匯流排辨識
區塊功能辨識
晶圓量測
記憶體內容萃取
晶圓修改
電子商務安全
8-29

軟體攻擊(Software Attack)
軟體攻擊是利用應用軟體、IC卡與讀卡機之通訊
協定、密碼演算法、COS等軟體程式之弱點,而取
得密碼模組之內部秘密參數等相關資訊。例如猜
測PIN碼、未授權之檔案存取、惡意程式碼、SIM
卡之暴力攻擊。
電子商務安全
8-30

側通道攻擊(Side-Channel Attack)
側通道攻擊是經由非正常通道,即側通道,監測
密碼模組在執行過程中,因運算動作與運算元之
不同,造成密碼模組在某些物理特性上之變動,
而側錄此變動波形,再經由分析此洩漏之訊息,
解讀出密碼模組之內部秘密參數。例如密碼模組
的功率消耗(SPA/DPA)攻擊、電磁輻射(EMA)攻
擊,執行時間(Timing)攻擊。
電子商務安全
8-31

側通道攻擊電力消耗曲線攻擊
依據密碼演算法在模組內執行時,因運算元內容不
同,消耗不同的電流,此功率消耗將呈現在由外界
供應之電力的電源線上,攻擊者可以量測電流變化,
配合密碼演算法資訊,利用分析工具找出密碼模組
相關機密資訊。此類攻擊又可分為:簡單電力攻擊
(Simple Power Attack),差分電力攻擊(Differential
Power Attack)與時間攻擊(Timing Attack)
電子商務安全
8-32
 簡單電力攻擊(SPA)與差分電力攻擊(DPA)
電子商務安全
8-33
 電磁波攻擊(Electromagnetic Analysis
EMA
Attack)
 電磁波洩漏(Electromagnetic leakage)
任何電子電路在訊號處理中,其運算處理所需之變動
電流皆會產生變動磁場,而形成電磁波。
任何電子電路或多或少,都會產生電磁波輻射。
若電路設計不佳,如阻抗不匹配、接地不良、未做隔
離,則內部之運算訊息會藉由電磁波輻射洩漏出去。
由電磁波輻射洩漏之訊息可經天線接收,再解調回原
訊息而被側錄。
IC卡可經緊貼於背面之靈敏天線側錄而被攻擊。
電子商務安全
8-34

故障攻擊(Fault Attack)
運用外力造成密碼模組在執行時發生錯誤,由錯誤
輸出配合與密碼模組相關設計資訊,找出機密資料。
外力造成密碼模組運算錯誤,可能是暫時性的,在
攻擊事後,該密碼模組可經由程序回復正常工作;
也可能該外力造成密碼模組嚴重毀損,而無法回復。
即故障現象可分為:暫態故障與永久故障。
電子商務安全
8-35

故障攻擊(Fault Attack)
---暫態故障分析
利用外力造成模組暫時性的故障。施加的外力例
如X光、改變時脈、高壓放電等。
---永久故障分析
破壞密碼模組硬體電路,造成故障現象。
電子商務安全
8-36

GSM 用戶SIM卡的可能攻擊方法(暴力攻擊)
將SIM卡放入讀卡機CAD中,執行
MF後,依下列之分析程序攻擊。
[1] 選擇讀取基本檔案 (EF-2FE2),此時
使用者便可以獲得儲存在檔案中此
卡之ID碼 (ICCID)。
[2] 選擇讀取基本檔案 (EF-6F07)下,以
獲得儲存在檔案中此卡之IMSI。
[3] 選擇讀取基本檔案(EF-6F7E),以獲
得儲存在檔案中之 TMSI、LAI、
RAND、SRES等資料。


CAD : card acceptance
device ,即 smart card reader
電子商務安全
8-37
[4] 選擇讀取基本檔案(EF-6F20),以獲得
儲存在檔案中之加密金鑰(Kc)。
[5]此時CAD下達執行RUN GSM Algorithm
指令,並產生亂數Ki傳送給SIM卡。此
時SIM卡將利用檔案內之RAND及收到
來自CAD之Ki,分別送至A3及A8演算
法,產生SRES及Kc,回傳給CAD。
CAD便可以比對,收到之SRES及Kc與
先前讀取之SRES及Kc是否相等。若相
等,即破解此卡之Ki。若不相等,持
續重複上述步驟,直到相等為止。
[6]從步驟[1]至[5],使用者可獲得此卡之
基本資料,ICCID、IMSI、TMSI、Ki
等。將上述資料寫入空白SIM內相對應
之檔案目錄內即可複製SIM卡。

此為典型之暴力攻擊法。
電子商務安全
8-38
IC卡之安全防護----- IC卡檔案管理之存取控制
應用程式 1
應用程式 2
應用程式 3
密碼處理中心
BIOS
資料儲存
(RAM, EEPROM)
串列輸出
電子商務安全
8-39
IC卡之安全防護 ----- IC卡檔案管理之存取控制
作業系統(OS)要求:
所有運算都由存在於卡內作業系統負責統籌,因
此作業系統必須負責IC卡機密資料存取相關運作。
 存取控制(Access Control)
確定只有合法使用者可存取修改使用者個人資料。
可分為:
* 邏輯存取控制(logical access control)
* 實體存取控制(physical access control)

電子商務安全
8-40
IC卡之安全防護 ----- IC卡檔案管理之存取控
制
應用程式對密碼協同處理器的存取必須受限
---檢查合法存取矩陣
 應用程式對密碼協同處理器的防護必須提供
---內建一檢查程式(工具),以檢查應用程式對資
料存取的方法是否符合規則
 應用資料與內部資料儲存對映關係必須保護
---內建一轉換,以存取EEPROM資料位置值

電子商務安全
8-41
IC卡之安全防護----- IC卡實體安全之晶片設
計與產品週期

實體攻擊防護---侵入式攻擊防護
分割整個製程過程的每個步驟,
確定各個步驟負責的廠商只知與負責工作相關資訊,
無法了解IC卡設計詳情。
符合 FIPS 140 安全等級需求
電子商務安全
8-42
IC卡之安全防護----- IC卡實體安全之晶片設
計與產品週期

Card life cycle:
Chip Design
ROM Design
Application Design
Chip Manufacture
Manufacture Key
Fabricator
Fabrication Key
Card Issuer
Issuer Key
Transaction key
User
電子商務安全
Pin
8-43
IC卡之安全防護----- IC卡實體安全之晶片設
計與產品週期

晶片設計:
防止以簡單設備複製IC電路設計,設計時加入對記
憶體存取保護電路。
ROM 設計:
ROM受作業系統保護,防止設計內容被複製
ROM分兩區塊,其中一區可在power on (ATR)存取,
另一區則必須在存取條件符合或存取動作正確時才
可存取。
電子商務安全
8-44
IC卡之安全防護----- IC卡實體安全之晶片設
計與產品週期

晶片製造:
確實管制製造材料儀器使用
製造商擁有獨立金鑰
限制製造商擁有所有資料

封裝:
封裝工廠不應知道晶圓實際設計內容
封裝工廠擁有獨立金鑰,可執行功能測試
限制封裝工廠擁有所有資料。
電子商務安全
8-45
IC卡之安全防護----- IC卡實體安全之晶片設
計與產品週期
 發卡單位:
只知IC卡提供功能
可針對卡片執行個人化規劃
必須確定發卡單位不應該知道IC卡設計詳情。
 使用者:擁有個人金鑰,確保個人資料存
取。
電子商務安全
8-46
IC卡之安全防護 ----- IC卡攻擊防護之防禦方
法

實體攻擊防護---非侵入式攻擊
*軟體攻擊防護
*側通道(Side-Channel)攻擊防護
*故障攻擊防護
電子商務安全
8-47
IC卡之安全防護 ----- IC卡攻擊防護之防禦方
法

軟體攻擊防護
1. 加入Tamper-resistance
2. Code 轉換,使程式設計者無法直接從模組 讀取
程式
3. 在程式撰寫時注意特殊指令運用,避開特殊功能,
撰寫過程、測試後必須徹底消除所有測試點。
4. 多樣性(Diversity)與個人化(Individualization)
電子商務安全
8-48
IC卡之安全防護 ----- IC卡攻擊防護之防禦方
法

側通道攻擊防護---SPA/DPA防護
*降低模組功率消耗
*遮蓋模組功率消耗曲線
1.雜訊遮蓋 2. 濾波
*隔離模組電源線
*引入冗餘指令
電子商務安全
8-49

側通道攻擊防護---時間攻擊防護
* 避免特殊指令使用
*平衡演算法執行時間
* 隨機化模組時脈頻率
電子商務安全
8-50

電磁波分析攻擊防護
*電子電路之良好阻抗匹配(impedance matching)設計
*電子電路之良好屏蔽(shielding)設計
*電子電路之良好接地(grounding)設計
電子商務安全
8-51