嵌入式系統(tǒng)的網(wǎng)絡(luò)安全問題的解析
嵌入式是一種專用的計算機系統(tǒng),作為裝置或設(shè)備的一部分。通常,嵌入式系統(tǒng)是一個控制程序存儲在ROM中的嵌入式處理器控制板。事實上,所有帶有數(shù)字接口的設(shè)備,如手表、微波爐、錄像機、汽車等,都使用嵌入式系統(tǒng),有些嵌入式系統(tǒng)還包含操作系統(tǒng),但大多數(shù)嵌入式系統(tǒng)都是是由單個程序?qū)崿F(xiàn)整個控制邏輯。如果能在系統(tǒng)設(shè)計之初考慮廣泛使用的嵌入式系統(tǒng)的安全問題,可減少系統(tǒng)的安全維護工作。
1 綜合實例
嵌入式系統(tǒng)在醫(yī)療儀器中的應(yīng)用普及率極高。在設(shè)計過程中,根據(jù)需要對嵌入式系統(tǒng)重新編程,可避免前端流片(NRE)成本,減少和ASIC相關(guān)的訂量,降低芯片多次試制的巨大風險。此外,隨著標準的發(fā)展或者當需求出現(xiàn)變化時,還可以在現(xiàn)場更新,而且設(shè)計人員能夠反復(fù)使用公共硬件平臺,在一個基本設(shè)計基礎(chǔ)上,建立不同的系統(tǒng),支持各種功能,從而大大降低生產(chǎn)成本。使產(chǎn)品具有較長的生命周期,可以保護醫(yī)療儀器不會太快過時,醫(yī)療行業(yè)的產(chǎn)品生命周期比較長,因此這一特性非常重要。現(xiàn)代數(shù)字醫(yī)療儀器設(shè)備不但包括診療設(shè)備,而且還有數(shù)據(jù)存儲服務(wù)器和接口軟件。嵌入式系統(tǒng)可為醫(yī)療儀器設(shè)備設(shè)計、生產(chǎn)和使用提供先進的技術(shù)支持。
2 原因分析
?。?)價格因素。結(jié)構(gòu)簡單好用,價格便宜也是嵌入式設(shè)計追求目標。公司在選擇芯片時,滿足好用夠用就可以了。如果從軟硬件上增加過多的安全措施,成本則會提高。而簡約的嵌入式系統(tǒng)上大量使用的4位和8位機,也不能運行過多的安全任務(wù)。
?。?)面廣量大。嵌入式系統(tǒng)在生活、工作、娛樂、教育、軍事等方面大量使用。如果系統(tǒng)設(shè)計有缺陷,則影響面非常大。若有的嵌入式系統(tǒng)被入侵者利用,將會成為多點攻擊的武器。
?。?)電源的限制。許多嵌入式系統(tǒng)都是用電池供電,如果尋找方法將其電力提前耗盡而又沒有得到及時的更換, 則該系統(tǒng)將處于癱瘓狀態(tài),很容易造成安全漏洞,從而為入侵者開了方便之門。
?。?)開發(fā)隊伍和環(huán)境的制約。許多嵌入式系統(tǒng)都是小團隊做的。由于缺少安全方面的專家及經(jīng)費短缺,設(shè)計中對安全問題考慮不足。而用戶往往也只追求嵌入式產(chǎn)品的小巧精致,方便好用即可。
3 安全分析方法
有二種安全性分析技術(shù):故障模型及后果分析(Failure Mode and Effect Analysis,FMEA)和故障樹分析(Failure Tree Analysis,F(xiàn)TA)。安全性分析是對因果關(guān)系的探討,“因”即引起安全問題的原因,而“果”就是潛在的危害。
3.1 FMEA和嵌入式應(yīng)用實例
FMEA是一種可靠性設(shè)計的重要方法。它實際上是FMA(故障模式分析)和FEA(故障影響分析)的組合。它對各種可能的風險進行評價、分析,以便在現(xiàn)有技術(shù)的基礎(chǔ)上消除這些風險或?qū)⑦@些風險減小到可接受的水平。
圖1為一個較為典型的FMEA分析技術(shù)。
[!--empirenews.page--]
3.2 FTA及其嵌入式應(yīng)用實例
FTA也是一種用來分析安全性和可靠性問題的技術(shù)。FTA與FMEA分析方法不同。FTA從所有可能的事件開始,并圍繞事件的結(jié)果做工作。FTA是用圖示的方法直接從已確定安全事件(處于樹的頂層)開始,反向找出問題發(fā)生的原因。設(shè)計FMEA(也記為d-FMEA)應(yīng)在一個設(shè)計概念形成之時或之前開始,并且在產(chǎn)品開發(fā)各階段中,當設(shè)計有變化或得到其他信息時及時不斷地修改,并在圖樣加工完成之前結(jié)束。其評價與分析的對象是最終的產(chǎn)品以及每個與之相關(guān)的系統(tǒng)、子系統(tǒng)和零部件,圖2是應(yīng)用FTA分析嵌入式產(chǎn)品安全問題的一個簡單示例。
4 嵌入式系統(tǒng)安全問題解法方案
網(wǎng)絡(luò)安全是使網(wǎng)絡(luò)系統(tǒng)的硬件、軟件及數(shù)據(jù)受到保護,避免因意外或惡意的操作而遭到破壞、更改、泄露,從而保證系統(tǒng)連續(xù)、可靠、正常地運行,網(wǎng)絡(luò)服務(wù)不中斷。三個基本的網(wǎng)絡(luò)安全服務(wù)是:數(shù)據(jù)加密、內(nèi)容完整性和授權(quán)。
4.1 嵌入式系統(tǒng)安全的三個層次
嵌入式系統(tǒng)安全要綜合考慮物理層、平臺層以及應(yīng)用層三個方面。
?。?)物理層。嵌入式系統(tǒng)物理層的安全問題比較容易解決。就系統(tǒng)本身而言,根據(jù)系統(tǒng)的工作環(huán)境,在設(shè)計目標和設(shè)計要求時選擇符合相關(guān)標準的器件,進行規(guī)范化設(shè)計和施工就可以了。但從整個行業(yè)規(guī)范來看,由于網(wǎng)絡(luò)系統(tǒng)的脆弱性,致使電子通信的可靠性下降,而市場對安全信任的需求又越來越迫切,促使一些大型IT公司決定共同解決這個課題。為了建立工業(yè)規(guī)范并實現(xiàn)值得信任的計算方案,在1999年建立了“值得信任的計算平臺聯(lián)盟”(Trusted Computer Platform Association,TCPA)。其目標就是使信息和通信制造符合標準,在系統(tǒng)、子系統(tǒng)和部件中實現(xiàn)值得信任的計算規(guī)范。目前,TCPA有160多個成員,其中就有很多的生產(chǎn)硬件的企業(yè)。
?。?)平臺層。據(jù)統(tǒng)計,現(xiàn)有嵌入式產(chǎn)品中,4位機沒有使用操作系統(tǒng)的實例,8位機約有30%使用了操作系統(tǒng),而16位機以上的嵌入式產(chǎn)品帶有操作系統(tǒng)的占了70%以上。嵌入式操作系統(tǒng)的規(guī)模一般都比較小,不少產(chǎn)品開放了源碼,使得操作系統(tǒng)本身幾乎是透明的,不會存在“后門”的情況。但由于嵌入式操作系統(tǒng)受到系統(tǒng)規(guī)模的限制,不可能像Windows XP SP2那樣使用過多的安全措施。其主要作用還是隔離硬件層,便于產(chǎn)品開發(fā)和維護。
(3)應(yīng)用層。傳統(tǒng)的保證數(shù)據(jù)安全的方法是對數(shù)據(jù)進行加密傳輸。不少嵌入式處理器處理數(shù)據(jù)的能力不高,浮點運算能力不強,若要提供實時的數(shù)據(jù)加解密運算,處理器的速度往往不能勝任。根據(jù)系統(tǒng)要求,優(yōu)先選擇開銷小的安全協(xié)議和算法,或者由硬件來實施加解密算法。[!--empirenews.page--]
4.2 安全防御技術(shù)
網(wǎng)絡(luò)安全防御技術(shù)可分為主動防御技術(shù)和被動防御技木。網(wǎng)絡(luò)安全技術(shù)指致力于解決諸如如何有效進行介入控制,以及何如保證數(shù)據(jù)傳輸?shù)陌踩缘募夹g(shù)手段,主要包括物理安全分析技術(shù),網(wǎng)絡(luò)結(jié)構(gòu)安全分析技術(shù),系統(tǒng)安全分析技術(shù),管理安全分析技術(shù),及其它的安全服務(wù)和安全機制策略。
(1)主動防御技術(shù)
主動防御技術(shù)一般有數(shù)據(jù)加密、身份驗證、存取控制、授權(quán)和虛擬網(wǎng)絡(luò)等技木。下面介紹二種能在嵌入式系統(tǒng)中實施的、較新的安全技術(shù)。
①虛擬網(wǎng)絡(luò)技術(shù)(Virtual Private Network,VPN)
虛擬專用網(wǎng)絡(luò)(Virtual Private Network ,簡稱VPN)指的是在公用網(wǎng)絡(luò)上建立專用網(wǎng)絡(luò)的技術(shù)。其之所以稱為虛擬網(wǎng),主要是因為整個VPN網(wǎng)絡(luò)的任意兩個節(jié)點之間的連接并沒有傳統(tǒng)專網(wǎng)所需的端到端的物理鏈路,而是架構(gòu)在公用網(wǎng)絡(luò)服務(wù)商所提供的網(wǎng)絡(luò)平臺,如Internet、ATM(異步傳輸模式〉、Frame Relay (幀中繼)等之上的邏輯網(wǎng)絡(luò),用戶數(shù)據(jù)在邏輯鏈路中傳輸。它涵蓋了跨共享網(wǎng)絡(luò)或公共網(wǎng)絡(luò)的封裝、加密和身份驗證鏈接的專用網(wǎng)絡(luò)的擴展。VPN主要采用了彩隧道技術(shù)、加解密技術(shù)、密鑰管理技術(shù)和使用者與設(shè)備身份認證技術(shù)。
?、诿酃藜夹g(shù)(Honeypot)和蜜網(wǎng)技術(shù)(Honeynet)
蜜罐是一個包含漏洞的誘騙系統(tǒng),它是專門為吸引并“誘騙”那些試圖非法闖入他人計算機系統(tǒng)的人設(shè)計的。它通過模擬一個或多個易受攻擊的主機,給攻擊者提供一個容易受攻擊的目標。經(jīng)過多年的研究發(fā)展,蜜罐技術(shù)已經(jīng)發(fā)展成為誘騙攻擊者的一種非常有效而實用的方法,其應(yīng)用集中在對外部威脅的識別。蜜罐技術(shù)與防火墻技術(shù)、入侵檢測技術(shù)、病毒防護技術(shù)、數(shù)據(jù)加密和認證技術(shù)有很大不同,后者是在攻擊者對網(wǎng)絡(luò)進行攻擊時對系統(tǒng)進行被動的防護,而蜜罐技術(shù)可以采取主動的方式。
蜜網(wǎng)(其自由組織網(wǎng)址是http://www.honeynet.org)可以說是更安全、更強大的蜜罐,它由很多網(wǎng)絡(luò)上“蜜罐”的“陷阱”構(gòu)成,它以更合理的方式記錄下黑客的行動,同時盡量減少可能對其他系統(tǒng)造成的危害。成功的案例表明,蜜網(wǎng)誘使許多黑客白白浪費了大量精力。
?。?)被動防御技術(shù)
目前,被動防御技術(shù)有防火墻技術(shù)、安全掃描器、密碼檢查器、記賬服務(wù)、路由過濾等。
①防火墻(Firewall)技術(shù)
防火墻是內(nèi)部網(wǎng)與外網(wǎng)之間實施安全防范的系統(tǒng),可被認為是一種訪問控制機制,用于確定哪些內(nèi)部服務(wù)允許外部訪問,以及哪些外部服務(wù)允許內(nèi)部訪問。根據(jù)不同的配置,防火墻可以分為:數(shù)據(jù)包過濾防火墻、代理服務(wù)型防火墻、監(jiān)測型防火墻、網(wǎng)絡(luò)地址轉(zhuǎn)換型防火墻。防火墻技術(shù)是目前用得較多的安全技術(shù)。防火墻大多放在網(wǎng)關(guān)上,因此在上網(wǎng)的嵌入式設(shè)備上使用非常方便,效果也較好。
?、诎踩珯z測(Security Detection)
安全檢測功能可自動檢測遠程或本地主機安全性,用于觀察網(wǎng)絡(luò)是否在正常工作,收集主機的信息,并提出安全建議。大型操作系統(tǒng)一般都有此功能,當然也可在應(yīng)用級設(shè)計安全掃描程序。另外當系統(tǒng)遭受攻擊時,系統(tǒng)還可以對攻擊進行檢測,識別出網(wǎng)絡(luò)攻擊行為,并讓系統(tǒng)采取相應(yīng)的對策。安全任務(wù)既可以由嵌入式設(shè)備自身實施,也可以由上位機實現(xiàn)。
?、鄯?wù)登記(Service Log)
在系統(tǒng)中保留一個日志文件,與安全相關(guān)的事件可以記錄在日志文件中備查和分析,用以追查有關(guān)責任者,發(fā)現(xiàn)系統(tǒng)安全的弱點和可入侵點。嵌入式系統(tǒng)可以將工作日志記錄在其服務(wù)器。顯然這項功能會加重處理器和數(shù)據(jù)傳輸?shù)呢摀杂涗浀捻椖坎灰颂嗵殹?/p>
?、軘?shù)據(jù)備份(Data Backup)
將系統(tǒng)的重要數(shù)據(jù)和過程實時記錄下來,以便系統(tǒng)遭受損壞后盡快恢復(fù)。嵌入式系統(tǒng)由于資源受限,往往不可能對其數(shù)據(jù)進行本機備份,可通過網(wǎng)絡(luò)進行異地備份。
綜合以上的安全因素和防御方法可以看出,各種方法各有其特點,使用時要根據(jù)風險級別、系統(tǒng)設(shè)計目標和系統(tǒng)造價進行綜合考慮。對大量使用的、性能一般的嵌入式微處理系統(tǒng),防火墻和IPSec技術(shù)具有配置靈活、性價比較高等特點,是容易采用且較為成熟的技術(shù)。
5 結(jié)束語
由于嵌入系統(tǒng)安全問題的復(fù)雜性,決定了必須采用軟件工程方法來分析。對系統(tǒng)防御也必須綜合實施,沒有一個萬全之策。目前嵌入式方面的安全研究工作國內(nèi)還做得不多,因此還需要投入大量的研究。