新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 確保嵌入式系統(tǒng)的網(wǎng)絡(luò)安全性

確保嵌入式系統(tǒng)的網(wǎng)絡(luò)安全性

作者: 時間:2006-04-28 來源:網(wǎng)絡(luò) 收藏

系統(tǒng)設(shè)計師經(jīng)常認為他們必須在安全性、可靠性和產(chǎn)品上市時間之間進行艱難的平衡。大多數(shù)設(shè)計師將上市時間定在第一位,“足夠好的”可靠性放在第二位,之后才考慮安全性問題。

但世界處于不斷變化之中。首先,安全性已經(jīng)成為所有具有網(wǎng)絡(luò)連接性能設(shè)備的必備條件,因此將其列為第三的位置不再能滿足要求。其次,微處理器、操作系統(tǒng)和開發(fā)工具的不斷進步使得更高的可靠性設(shè)計成為可能,也為產(chǎn)品的安全性和更快上市打下了堅實的基礎(chǔ)。

當然要實現(xiàn)這個目標的前提是選擇正確的架構(gòu),該架構(gòu)包括處理器、操作系統(tǒng)和軟件部分在內(nèi),并在一開始就把高可靠性作為設(shè)計目標。一般產(chǎn)品可靠性指標可以采用傳統(tǒng)的架構(gòu)和開發(fā)技術(shù)“在測試中達到”,但高可靠性的設(shè)計必須從一開始就加以考慮。

任何理智的工程師都會采用的設(shè)計方式,將應(yīng)用系統(tǒng)劃分成多個軟件模塊,并通過定義完善的接口來控制這些模塊之間的互操作。但提供最高級別的可靠性需要采取更多的措施,除了外,還得具有劃分、隔離和分離的能力。要想獲得最高等級的可靠性,你需要將模塊放進相互間隔離的存儲器區(qū)域。然后需要使用處理器的存儲器管理以及合適的操作系統(tǒng),來控制主機資源的通信和使用,并加強模塊的分離性。

令人稱奇的是,分離可以使復雜產(chǎn)品更快地上市。

應(yīng)該

(這點很顯然),然后分割設(shè)計,使每個模塊只執(zhí)行單一的功能且與所有其它模塊隔離開來。每個模塊還可以被看門狗進程(另外一個模塊)重新啟動,如果該模塊發(fā)生了故障,那么相應(yīng)的看門狗就會重啟這個模塊。這樣設(shè)計的系統(tǒng)肯定具有更高的可靠性。換句話說,用更少的工作量就能滿足系統(tǒng)可靠性要求。

保持模塊的簡單化。復雜會導致脆弱性(涉及安全問題)和不可重復的行為(涉及開發(fā)和可靠性)。不同種類、多內(nèi)核設(shè)計將增加系統(tǒng)的復雜性。應(yīng)該確保你已在單個處理器中得到所需的處理能力,避免那些復雜設(shè)計。

確保你正在使用的處理器和操作系統(tǒng)具有不可或缺的存儲器管理功能。沒有存儲器保護就想建立非凡、可靠和安全的產(chǎn)品是不可能的。存儲器保護幫助你對系統(tǒng)進行分割,并實現(xiàn)“深度防御”,從而保證系統(tǒng)某部分的弱點不會級聯(lián)起來影響其它部分。

置所有東西于內(nèi)核之外。內(nèi)核是唯一一個系統(tǒng)中其它部分都要依賴的部件,因此它必須異常穩(wěn)固。在內(nèi)核空間運行任何對象只會降低可靠性,并帶來安全性問題。

選擇能夠符合公認的安全和可靠性標準的內(nèi)核架構(gòu)。任何人都可以聲稱擁有可靠安全的操作系統(tǒng),但很少有人獨立地驗證過他們聲明的內(nèi)容。在安全領(lǐng)域,需要選擇一個基于由國家安全機構(gòu)開發(fā)的獨立內(nèi)核保護機制的架構(gòu)。

使用強制執(zhí)行高安全編碼標準的工具。Misra C是汽車工業(yè)軟件可靠性協(xié)會(MISRA)為汽車工業(yè)開發(fā)的一個安全的C子集,其中許多代碼非??煽亢桶踩R虼丝稍趦?nèi)部使用Misra標準,并選擇用來強制執(zhí)行這些標準的工具。

不應(yīng)該

低估可靠性的價值。可靠性不僅能使產(chǎn)品更受歡迎,更有利潤,還能有效減少開發(fā)難題。

在產(chǎn)品功能完善后才開始測試和修復缺陷。你的目標應(yīng)該是:當產(chǎn)品功能完善時,你就已經(jīng)能交貨了。只有在設(shè)計一開始就考慮了可靠性(使用可靠性高的內(nèi)核),并在開發(fā)過程中使用存儲器漏洞檢測、實時錯誤檢查以及保護措施,盡早發(fā)現(xiàn)缺陷來保持內(nèi)核的可靠性,才能使你的產(chǎn)品更快地上市。如果工程師在沒有缺陷的產(chǎn)品中增加一個缺陷(缺陷是工程師增加進去的,而不是自然產(chǎn)生的),這時候你要能夠快速找到此缺陷,并立即完成修復。

認為你的網(wǎng)絡(luò)產(chǎn)品不會成為攻擊目標。該產(chǎn)品可能不包含有價值的數(shù)據(jù),但只要把它放到網(wǎng)上去,它就可能泄漏產(chǎn)品以外的信息。隨著產(chǎn)品的逐漸成熟,它所擁有的信息可能就會值得攻擊。

低估入侵技術(shù)。要知道入侵技術(shù)也在突飛猛進。隨著技術(shù)日趨先進,往日令人不感興趣的目標(比如你的產(chǎn)品)也會變得值得一擊。

認為可以日后再為安全或可靠性重新設(shè)計架構(gòu)。當然,安全性非常高的系統(tǒng)(例如飛機)需要采用面向可靠性和安全性的架構(gòu),因而需要嚴格苛刻和代價高昂的開發(fā)過程。但任何功能很強的產(chǎn)品,包括消費類和工業(yè)控制類產(chǎn)品都會從相同的底層技術(shù)中獲益,盡管其開發(fā)過程要更加經(jīng)濟。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


關(guān)鍵詞: 嵌入式 模塊化 硬件

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉