SIM卡操作系統(tǒng)(COS)的安全分析
文章出處:http://xianjuhong.com 作者:宋麥玲 陳云亮 人氣: 發(fā)表時間:2011年09月29日
1引言
SIM卡是Subscriber Identity MOdule的縮寫,即用戶識別模塊。用來標識一個特定移動用戶的網(wǎng)絡連接。SIM卡的主要功能是來存儲用戶數(shù)據(jù)和完成客戶身份鑒權以及客戶信息加密過程。此功能主要是由SIM卡內(nèi)的一部具有操作系統(tǒng)的微處理器完成。COS的全稱是Cllip Opemting System(片內(nèi)操作系統(tǒng)),它一般是緊緊圍繞著它所服務的智能卡的特點而開發(fā)的。由于不可避免地受到了智能卡內(nèi)微處理器芯片的性能及內(nèi)存容量的影響.因此。COS在很大程度上不同于我們通常所能見到的微機上的操作系統(tǒng)(例如DOS、UNIX等)。在本文中我們探討的是SIM卡中的COS系統(tǒng)。主要的功能是維護SIM卡中的文件系統(tǒng),處理手機下發(fā)給SIM卡的各種命令。并且提供SIM卡應用程序開發(fā)包(即STK)來實現(xiàn)增值服務的開發(fā)。COS的出現(xiàn)不僅大大地改善了智能卡的交互界面,使智能卡的管理變得容易,而且更為重要的是,使智能卡本身向著個人計算機化的方向邁出了一大步。為智能卡的發(fā)展開拓了極為廣闊的道路。
2 COS的基本模型
SIM卡中集成了微處理器CPU、存儲器和芯片操作系統(tǒng)(COS),構(gòu)成一個完整的計算機系統(tǒng),具有獨立的數(shù)據(jù)處理能力,SIM卡的結(jié)構(gòu)如圖1所示。
COS系統(tǒng)在SIM卡的結(jié)構(gòu)中處于中間層。介于底層硬件與上層應用之間。它向下組織、協(xié)調(diào)系統(tǒng)硬件,實現(xiàn)I /O,存儲管理等功能。向上為應用提供服務。在SIM卡中的COS系統(tǒng)主要是為了實現(xiàn)移動通信的服務。我們參考網(wǎng)絡IS0模型。如圖2所示把COS系統(tǒng)的結(jié)構(gòu)分為以下四個層次。
圖1 SIM卡結(jié)構(gòu)圖
圖2 COS屢次結(jié)構(gòu)
這樣的層次劃分的主要原則是。將應用代碼從COS主體中獨立出來,提供一個統(tǒng)一的接口進行管理;將和底層SIM卡硬件相關的操作提取出來。便于和上層代碼的復用和移植;整個系統(tǒng)通過統(tǒng)一的調(diào)度管理。各個層次間提供一個接口以服務的方式進行調(diào)用。下層的內(nèi)部實現(xiàn)對上層來說是透明的。
3 COS的安全體系
根據(jù)接觸式IC卡國際標準IS0,IEC7816_4,COS安全體系包括三部分:安全狀態(tài),安全屬性,安全機制。
安全狀態(tài)是指SIM卡當前所處的安全級別。即當前安全狀態(tài)寄存器的值.這種狀態(tài)在SIM進行完復位應答后初始化或者在處理完某種命令后得到的。
安全屬性,它定義了執(zhí)行某個命令需要的一些條件,即在進行某種操作時要求安全狀態(tài)寄存器的值是什么。
安全機制從廣義上說是SIM卡支持的各種安全模式。從狹義上說是安全狀態(tài)實現(xiàn)轉(zhuǎn)移所采用的方法和手段。
一種安全狀態(tài)通過上述安全機制轉(zhuǎn)移到另一種狀態(tài)。把該安全狀態(tài)與某個安全屬性相比較,如果一致,則表明能夠執(zhí)行該屬性對應的命令:如果不一致。則相關命令不能被執(zhí)行。從而達到了安全控制的目的。這就是COS安全體系的基本工作原理。如圖3所示。
圖3安全狀態(tài)轉(zhuǎn)移
4 COS的應用安全
4.1應用腳本的安全
SIM卡對下載的應用腳本必須具備保證完整性和安全性的功能。由于應用腳本的下載實現(xiàn)是以短信的方式來實現(xiàn)的,而在現(xiàn)有短信傳輸機制中,是進行的明文數(shù)據(jù)傳輸,在用戶通過無線網(wǎng)絡來進行菜單和新業(yè)務的定制過程中。有些消息是經(jīng)過了有線網(wǎng)絡。這就給攻擊者提供了對空中下載服務系統(tǒng)進行篡改、假造、重傳等攻擊的機會。因此為了提供一個安全可靠的數(shù)據(jù)傳輸通道,在下載過程中要對下載的應用腳本數(shù)據(jù)提供身份認證和同步處理機制。
下面對身份認證進行一下簡單的介紹??罩邢螺d系統(tǒng)采用了雙向認證的技術。用戶在提出下載請求時,空中下載系統(tǒng)會對用戶進行合法性的驗證。這樣確保了只有合法用戶發(fā)出的下載請求才能被響應;同時SIM卡還要對空中下載系統(tǒng)的合法性進行驗證。這樣避免了惡意代碼對用戶SIM卡的入侵。同時雙向認證機也保證了交互信息的完整性和正確性??罩邢螺d系統(tǒng)在收到用戶的請求信息后。馬上計算此信息的MAC碼,并與請求信息中的MAC碼匹配.若相同則說明發(fā)送此信息的用戶是合法的,且在數(shù)據(jù)的傳送中未被修改。SIM卡收到下載數(shù)據(jù)后,同樣計算該下載數(shù)據(jù)的MAC碼。并與下載的數(shù)據(jù)中的MAC碼進行匹配。相同則證明該下載數(shù)據(jù)是合法的,且是完整有效的,否則丟棄該下載數(shù)據(jù)。
4.2 GSM網(wǎng)絡的安全機制
GSM網(wǎng)絡對用戶身份標識的認證是通過一種挑戰(zhàn)應答的機制來實現(xiàn)的。GSM系統(tǒng)中的安全認證參數(shù)三元組包括一個128bit長的偽隨機數(shù)RAND。32bit長的認證響應SREs和一個64bit長的臨時加密密鑰KC。移動用戶的身份認證過程描述如下:
(a)移動用戶把TMSI和訪問網(wǎng)絡服務請求發(fā)給移動基站,基站將TMSI和請求發(fā)給拜訪局。
(b)拜訪局根據(jù)TMSI從數(shù)據(jù)庫中調(diào)出移動用戶的認證參數(shù)(RAND,RES,KC),并傳送RAND給移動用戶。
(c)移動電話中的SIM卡利用移動用戶的秘密密鑰和RAND通過身份認證算法和密鑰生成算法生成認證響應RES’何KC,并將RES'經(jīng)過基站發(fā)給拜訪局。
(d)拜訪局比較RES???’和RES;如果相同則拜訪局為該移動用戶重新分配一個新的 TMSI’。并且利用加密密鑰KC加密TMSI,后發(fā)給移動用戶,并確認登記成功。
上述移動用戶身份認證過程不僅可以實現(xiàn)移動用戶的身份認證性。也可以實現(xiàn)移動用戶身份保密性。GSM網(wǎng)絡采用了臨時身份號的方法。在一定程度上可以保護移動用戶的真實身份IMSI。但是當移動電話第一次使用時.它傳其IMSI和其他數(shù)據(jù)給網(wǎng)絡端的拜訪局進行登記。
5結(jié)束語
移動通信的發(fā)展給用戶帶了方便和自由.然而信息在空中的無線傳播也給移動通信帶了潛在的威脅。通信的內(nèi)容可能會被竊聽、通信對方的身份可能被假冒。SIM卡作為用戶身份的安全載體,采用了加密和身份認證技術來保護用戶的通話內(nèi)容,防止非法用戶訪問移動網(wǎng)絡。在很大程度上提高了移動通信的安全性。本文對SIM卡的安全基礎——COS系統(tǒng),做了十十分詳盡的分析。為今后電子商務的應用開發(fā)打下了堅實的基礎。
(文/中國地質(zhì)大學計算機學院 宋麥玲 陳云亮)