移動(dòng)終端安全模塊技術(shù)研究
隨著移動(dòng)通信業(yè)務(wù)的發(fā)展、普及,尤其是3G時(shí)代的到來(lái),移動(dòng)終端逐漸演變成集通話、身份代表、信息獲取、電子支付等為一體的手持終端工具。伴隨著移動(dòng)終端用戶規(guī)模的迅速擴(kuò)大和諸多人員對(duì)移動(dòng)終端技術(shù)的了解,移動(dòng)終端正面臨著越來(lái)越多的安全威脅。下面列舉幾種典型的安全威脅。
(1)移動(dòng)終端身份序列號(hào)(例如GSM中的IMEI)的刪除和篡改等
由于IMEI號(hào)可用來(lái)統(tǒng)計(jì)用戶的終端類(lèi)型、限制被盜終端在移動(dòng)網(wǎng)內(nèi)的重新使用等用途,所以IMEI號(hào)應(yīng)該具有一定的保護(hù)措施。
(2)終端操作系統(tǒng)非法修改和刷新等
由于非法操作系統(tǒng)可能會(huì)影響用戶使用并干擾正常網(wǎng)絡(luò)運(yùn)行,因此操作系統(tǒng)應(yīng)當(dāng)阻止一切非法的修改和刷新等。
(3)個(gè)人隱私數(shù)據(jù)(例如銀行賬號(hào)、密碼口令等)的非法讀取訪問(wèn)等
移動(dòng)終端內(nèi)部可能會(huì)存有用戶的電話簿、短信、銀行賬號(hào)、口令等用戶隱私信息,假如這些信息被他人非法獲得,很可能給用戶造成直接的經(jīng)濟(jì)損失。
(4)病毒和惡意代碼的破壞
病毒和惡意代碼很可能會(huì)破壞移動(dòng)終端的正常使用,還可能會(huì)將用戶的隱私信息不知不覺(jué)地傳給他人。
(5)移動(dòng)終端被盜等
目前移動(dòng)終端被盜現(xiàn)象極其嚴(yán)重,終端被盜給用戶帶來(lái)直接經(jīng)濟(jì)損失,更嚴(yán)重的是用戶隱私數(shù)據(jù)的泄漏等。
總之,移動(dòng)終端存在的安全隱患可能會(huì)威脅到個(gè)人隱私、私有財(cái)產(chǎn)甚于國(guó)家安全。盡管移動(dòng)終端面臨著許多的安全威脅,但目前其安全問(wèn)題仍是整個(gè)移動(dòng)運(yùn)營(yíng)網(wǎng)絡(luò)中的一個(gè)安全盲點(diǎn)。
1 開(kāi)放的移動(dòng)終端內(nèi)部數(shù)據(jù)資源
圖1 是移動(dòng)終端內(nèi)部結(jié)構(gòu)的典型模型
一般,目前所有的敏感信息包括開(kāi)關(guān)機(jī)口令、敏感電話簿、機(jī)密短信、證書(shū)、用戶私鑰等信息都存放在片外存儲(chǔ)器中,另外用于調(diào)試訪問(wèn)片內(nèi)資源的JTAG口等是開(kāi)放的(目前沒(méi)有有效的方式封閉JTAG口)。所以攻擊者很輕易通過(guò)JTAG口等調(diào)試端口獲得DBB內(nèi)部或者Flash中的存儲(chǔ)信息。甚于很多終端的JTAG口直接連在終端外邊,攻擊者連機(jī)殼等都不必打開(kāi),就可以獲得內(nèi)部資源。攻擊者當(dāng)然也可以將Flash芯片取下并采用專(zhuān)門(mén)的設(shè)備將內(nèi)部數(shù)據(jù)讀出。
基于以上介紹,出于為移動(dòng)終端內(nèi)部敏感數(shù)據(jù)資源提供集中的安全保護(hù)措施角度考慮,提出了安全模塊的概念。
2 安全模塊及與其他相關(guān)部分的關(guān)系
2.1安全模塊定義
為移動(dòng)終端所有或大部分敏感信息提供集中存放和運(yùn)算的芯片模塊,這里稱作安全模塊。
下面列舉一些安全模塊的典型作用:
◆操作系統(tǒng)、身份序列號(hào)及其他信息的完整性保護(hù)等;
◆敏感信息的安全存儲(chǔ)包括銀行賬號(hào)信息、銀行密碼信息、CA證書(shū)、密鑰等;
◆要害數(shù)據(jù)的冗災(zāi)備份,如系統(tǒng)的各種配置信息等;
◆機(jī)卡互鎖等手機(jī)防盜技術(shù)的實(shí)施等;
◆密碼算法的存儲(chǔ)和運(yùn)算等。
2.2安全模塊與基帶芯片及上位機(jī)的關(guān)系
圖2是安全模塊與其他部分的關(guān)系圖。安全模塊與其他部分信息交互的端口,一個(gè)是安全模塊與上位機(jī)的接口——工作端口,一個(gè)是安全模塊與上位機(jī)的接口——調(diào)試端口,其中工作端口用于移動(dòng)終端正常工作時(shí),安全模塊與基帶芯片進(jìn)行敏感信息的傳送。調(diào)試端口用于移動(dòng)終端生產(chǎn)甚至維修時(shí)安全模塊預(yù)設(shè)數(shù)據(jù)和個(gè)性化數(shù)據(jù)的裝入等。
為了防止安全模塊與基帶芯片之間敏感數(shù)據(jù)傳送過(guò)程中的被竊取或者搭線竊聽(tīng)。安全模塊與基帶芯片之間的數(shù)據(jù)應(yīng)該密文傳送。傳輸中的會(huì)話密鑰,可以采用現(xiàn)有的密鑰協(xié)商協(xié)議臨時(shí)生成,例如Diff-Hellman等。
另外,安全模塊對(duì)上位機(jī)應(yīng)當(dāng)具有認(rèn)證功能,以防止非法主機(jī)對(duì)安全模塊的非法邏輯操作。
2.3基帶芯片部分說(shuō)明
基帶芯片中有一部分核心代碼,本部分代碼是安全的。這部分代碼的作用是與安全模塊會(huì)話密鑰的協(xié)商并及向移動(dòng)終端上層應(yīng)用安全模塊進(jìn)行數(shù)據(jù)交互的應(yīng)用程序端口。
3 安全模塊的文件邏輯模型和軟件邏輯模塊
3.1文件邏輯模型
根據(jù)安全模塊的功能,提出一種典型的安全模塊文件邏輯模型,如圖3所示。
從圖3可以看出,文件按分層結(jié)構(gòu)組織,共有三種類(lèi)型。操作系統(tǒng)可以處理和訪問(wèn)不同文件中的數(shù)據(jù)。
◆主文件(MF—MasterFile)
主文件代表一個(gè)功能大類(lèi),只有文件頭,沒(méi)有文件體。其下可以存放針對(duì)某一應(yīng)用領(lǐng)域的各種安全相關(guān)參數(shù)和數(shù)據(jù)。
◆目錄文件(DF—DirectoryFile)
目錄文件是一個(gè)或多個(gè)文件的邏輯分組,目錄文件只有文件頭,沒(méi)有文件體。在圖3的文件邏輯模型中,DFPpassD目錄包括開(kāi)關(guān)機(jī)口令文件EFOnOFF和文件資源訪問(wèn)口令·EFFile等;DFKEY目錄下包括CA證書(shū)文件EFCa和私鑰文件EF Priv等;DFMAC目錄包括操作系統(tǒng)MAC文件Efos和數(shù)據(jù)MAC文件EFData等;DFAdnSms目錄包括機(jī)密電話簿文件EFAdn和EFSms等。
◆基于數(shù)據(jù)文件(EF—ElementaryFile)
一個(gè)基本數(shù)據(jù)文件由文件頭和文件體組成。
可以參照GSM11.11的相關(guān)內(nèi)容進(jìn)行文件格式的具體設(shè)計(jì)。
3.2軟件邏輯模塊
◆初始化程序模塊:初始化安全模塊寄存器,配置各種參數(shù)。
◆MAC認(rèn)證模塊:實(shí)現(xiàn)手機(jī)操作系統(tǒng)和數(shù)據(jù)的完整性認(rèn)證。
◆與基帶芯片通信的命令解釋模塊:實(shí)現(xiàn)與基帶芯片的命令交互,包括存儲(chǔ)數(shù)據(jù)、讀取數(shù)據(jù)等功能。
◆基帶芯片認(rèn)證和密鑰協(xié)商模塊:對(duì)基帶芯片進(jìn)行認(rèn)證,并協(xié)商出安全模塊與基帶芯片之間的會(huì)話密鑰。
◆上位機(jī)認(rèn)證與通信模塊:認(rèn)證上位機(jī)的合法性并接受上位機(jī)的指令進(jìn)行自身數(shù)據(jù)和代碼的更新、升級(jí)等。
◆自毀數(shù)據(jù)模塊:對(duì)非法邏輯操作進(jìn)行審計(jì),并在達(dá)到一事實(shí)上閾值時(shí)刪除安全模塊的各種敏感數(shù)據(jù)達(dá)到自毀的效果。
◆其他根據(jù)安全需求需要考慮的功能模塊。
4 安全模塊的硬件模型
安全模塊以微處理為核心。該芯片必須能夠反抗芯片的各種威脅,如開(kāi)冒后的探針物理探測(cè)、邊信道(例如DPA、SPA)攻擊等,另外芯片體積要小,功耗要少。圖4是一種典型的安全模塊硬件模型圖。
5 移動(dòng)終端的安全啟動(dòng)過(guò)程
安全模塊與基帶芯片的啟動(dòng)工作流程如圖5和圖6所示。
加電后,安全模塊與基帶芯片處于主從工作模式,安全模塊為主,基帶芯片為從。安全模塊首先認(rèn)證基帶芯片的合法性以防止基帶芯片被替換或假冒。若基帶芯片通過(guò)合法性檢查,則安全模塊與基帶芯片開(kāi)始協(xié)商會(huì)話密碼;之后安全模塊向基帶芯片發(fā)送索取操作系統(tǒng)數(shù)據(jù)命令,基帶芯懲收到命令后將操作系統(tǒng)等數(shù)據(jù)傳送給安全模塊,安全模塊計(jì)算MAC值是否正確,若都正確,安全模塊就將自身的工作模式切換到從模式,讓基帶芯片處于主模式;之后,安全模塊處于接受基帶芯片命令并向外傳送敏感信息的狀態(tài)。
基帶芯片在加電后,通過(guò)內(nèi)部的安全代碼模塊接收安全模塊的認(rèn)證請(qǐng)求,并與安全模塊協(xié)商會(huì)話密鑰,之后將操作系統(tǒng)代碼等信息傳給安全模塊以接收安全模塊的完整性檢查,并等待安全模塊控制權(quán)的移交。當(dāng)安全模塊所有檢查通過(guò)后,安全模塊將控制權(quán)交給基帶芯片以實(shí)現(xiàn)基帶芯片的完全啟動(dòng)。
安全性分析:系統(tǒng)首先從安全模塊啟動(dòng),而且安全模塊和基帶芯片處于主從工作狀態(tài)。當(dāng)安全模塊沒(méi)有通過(guò)對(duì)基帶芯片的認(rèn)證,或者操作系統(tǒng)等數(shù)據(jù)的MAC結(jié)果不正確時(shí),安全模塊就會(huì)拒絕與基帶芯片協(xié)商會(huì)話密鑰,同時(shí)拒絕將敏感信息傳送出去。在這種情況下,假冒的基帶芯片有可能會(huì)繼續(xù)啟動(dòng)并達(dá)到一種穩(wěn)定的工作狀態(tài),但攻擊者仍無(wú)法獲得安全模塊中的敏感數(shù)據(jù),與筆者安全模塊設(shè)計(jì)的初衷還是一致的。
安全模塊的思想稍加改造就可以用在有類(lèi)似安全需求的其它電子設(shè)備中,因此安全模塊在設(shè)計(jì)時(shí),通用性盡量強(qiáng)一些,以滿足在多種領(lǐng)域中的應(yīng)用;同時(shí)安全模塊尺寸不宜過(guò)大,以節(jié)省芯片生產(chǎn)成本和移動(dòng)終端內(nèi)部寶貴的可用空間。
- 終端審計(jì)如何更好地服務(wù)內(nèi)網(wǎng)安全
- 移動(dòng)設(shè)備網(wǎng)絡(luò)防御戰(zhàn)略 align=right>【責(zé)任編輯:許鳳麗 TEL:(010)68476606】