安徽芯紀元科技有限公司 中國電子科技集團公司第38研究所集成電路研發中心 陸俊峰
嵌入式系統在各個領域的應用范圍不斷擴大,其占據越來越多的重要性。與此同時,互聯網技術下使得信息的網絡的連接日漸便捷、高效,網絡攻防的重要發展方向朝著嵌入式系統轉換。在信息時代,黑客無疑將攻擊目標轉向嵌入式系統,嵌入式系統安全暴露出的問題日漸顯現。通過梳理和匯總不同應用領域中嵌入式系統的安全性研究,剖析當前可信運行環境在應用中存在著安全風險問題,通過深入分析問題原因,提出可信運行環境是提高嵌入式系統安全性比較有效的解決方案,進而提出了安全增強的可信運行環境架構,以期嵌入式系統健康運行。
隨著互聯網技術在嵌入式系統運行中的廣泛應用,可信運行環境架構受到了更多的社會關注與現實應用。在當今時代中,圍繞著可信操作系統設計以及相關安全性問題的探討是一大熱門,并逐漸成為各領域研究的重要方向。當前該問題研究的重要內容之一便是基于嵌入式系統安全可信操作系統及其關鍵服務。
嵌入式系統作為一種特殊的計算機系統,其嵌入于特定的控制機械或電子設備內部,以此來執行特定的功能。在執行任務時,其需對系統的可靠性、經濟性、實時性以及系統體積、功耗等做出嚴格要求。按照IEEE(Institute of Electrical and Electronics Engineers)國際相關組織中對嵌入式系統的概念界定,認為該系統主要是“管理、調節和幫助機器或設備的重要部分”,從而確保設備整體的正常運行。從技術維度來分析,嵌入式系統作為專用計算機系統,以應用為中心,最大限度配合整體設備運行;從系統維度來看,嵌入式系統作為一特殊綜合體,其兼具軟件與硬件于一身。從二十世紀六十年代嵌入式系統的雛形開始,以應用為中心就逐步成為嵌入式系統的最重要特點之一。
嵌入式系在通信、國防、消費電子、航空航天等多個領域得以廣泛應用和發展。需要注意的是,嵌入式系統不同于計算機系統,二者有著鮮明的特點。嵌入式系統研究中比較關注軟硬件功能間的和諧發展。嵌入式系統開發是一項涉及交叉性、專業領域知識,比如在機械控制、電路設計等系統開發中,都是交叉領域專業知識交織在一起。為此,要全面、清晰、精準地把握好嵌入式系統技術的相關知識,深入掌握其軟硬件架構以及應用內容,以形成系統性體系,以免發生偏差性問題。
UEFI組織針對嵌入式系統中所出現的信任根與信任鏈展開了較為詳細的概念界定。在最佳環境中,信任根要要以硬件機制為載體,在系統通電的條件下,僅僅可以在無法修正的存儲儀器中完成代碼提取,難以對此展開有目的的修改,其限制性要素較多。信任鏈以信任根為起點,啟動代碼的獲取要建立在可信認證的基礎上,需要完成完整性校驗。必須要有可信啟動代碼得到檢驗,其后續的啟動碼能夠完成檢驗過程,在系統真正啟動后,這一檢驗過程便會結束。在實際操作中,在TrustZone的硬件框架中要實現可以同時防御物理攻擊和軟件攻擊的信任根日益成為在嵌入式系統安全可信運行的關鍵問題之一,同樣是在可信運行環境架構中所值得研究與討論的關鍵性存在。
可信運行環境要借助軟硬件隔離機制要實現其功能與維護穩定性。其一,要以硬件為基礎,實現對可信運行環境及其所涉及到的處理器、內存等展開相應的隔離。TrustZone技術能夠為不同的處理器核上產生虛擬核和NMU來實現資源以及地址等內容的分離與處理,并在AMBAAXI3系統總線和AXI-to-APB橋來達到對總線資源以及外設資源等的有效分離與間隔。值得注意的是,當前TrustZone技術無法對外存資源進行有效分離與管理,缺乏可支持的硬件設施。
(1)通用操作系統
為實現應用系統的有效運行,要確保可信運行環境與通用操作系統二者能夠有效發揮其作用。基于此,通用操作系統如果出現安全性問題則會影響到可信運行環境的穩定性。如果想要進入安全服務體系,則要借助通用操作系統的客戶端實現對TEE客戶端API的命令申請來完成可信應用操作。值得注意的是,可信應用無法判斷申請應用的客戶端是否符合要求,其安全性問題無法保證。在現實中,攻擊者借助所找到的系統漏洞來對突破客戶端限制而獲取相應資源和服務,也能夠借助服務請求來判斷系統所存在的漏洞情況。
(2)可信操作系統
隨著可信運行環境的應用領域不斷擴展,軟件系統構建的要求與日俱增。當前可信操作系統早已發展成較為完善的體系,兼具可拓展性與可交互性兩種功能。由于應用環境的差異,可信操作系統的功能也產生了差異性變化,比如在網絡通信、生物識別等不同條件下的功能要求會有區別。針對這樣的問題,GP組織實現了對TEE系統的整合升級,在原本架構上提高了服務接口的標準,以此實現對可信運行環境的差異性調控。目前來說,可信操作系統僅僅在TrustZone環境下運行,能夠實現對GP TEE規范的管理與連接。但是在這一操作中,設計者并未根據系統安全性能的考慮以及安全操作標準來構建可信系統,也難以為外部用戶提供可值得信賴的證明。
按照常規情況,一些不希望被非法用戶獲取的信息會被關鍵領域的嵌入式計算機存儲設備中存儲。為了確保安全可信運行環境,確保數據不被外界非法竊取或者進行違規非法侵入操作。具體講,在系統中嵌入認證及自毀機制來實現系統高安全性。
在系統安全管理中,需要禁止非法用戶的使用。在針對非法用戶非法入侵中,嵌入式控制系統需對用戶進行必須要的身份認證,采取嚴苛的認證手段,保證系統的安全性。比如常見的系統中普遍采取的單一的認證方式。在嵌入式系統的認證性能中,要確保應用在系統中存在多樣化的認證方式。比如較為成熟的SD卡認證、口令認證、指紋認證等。這三種技術認證一方面能保證方便集成到系統,另一方面也可以保證用戶實際操作。
(1)SD卡認證
SD卡(Secure Digital Memory Card)是一種基于信息加密技術存儲設備,其自身輕巧、可加密、傳輸速度高,被廣泛應用于手持設備。其具有記憶容量高、傳輸率快、移動靈活性大以及安全性好等優勢。目前在很多嵌入式系統中第一級身份認證往往采用SD卡認證。采用SD卡,用戶可以輕松攜帶,使用方便,最大限度防止設備丟失。用戶使用SD卡簡單方便,使用時只需取出SD卡,并將它插入對應匹配的系統SD卡槽中,正常情況下系統會對SD卡數據進行讀取,并將SD卡內存儲的信息進行存儲。最后,對計算得到的內容與底板內預存的用戶信息表進行解析,并形成有效比對,系統自
動識別查詢得出相應項完成認證。(2)口令認證
在系統使用前,其內部已經嵌入合法用戶的口令字,并存儲在系統內。口令認證建立在SD卡認證基礎上,能夠通過進一步的安全設置來提升系統供電開機的安全性。用戶在第一級認證完成后,第二級進入口令認證,雙重認證啟動并成功后,系統才可以供電給系統計算單板,并完成系統啟動等待系統的其他操作。
(3)指紋認證
系統在指令執行前對身份識別也是非常有必要的。系統性能的保證和維護,需要指令執行得到快速響應。為此,需提供一種即快速又安全的認證手段。指紋認證的方式是在目標系統內集成一個快捷的指紋模塊,作為指紋身份認證的接口,可以最大限度保證系統安全。
自毀技術的應用,實際上對于系統數據道德應用來說具有很強的安全性,能夠有效規避數據外泄風險,確保信息資料不受到外界的破壞與盜取。系統損毀機制能夠實現自行毀壞,按照系統所遭受的攻擊程度與類別,會自主研判自毀程度與選取自毀行為。嵌入式系統控制計算機系統,最大限度確保系統整體的安全、可靠等特性。如若嵌入式控制系統被非法用進行非法控制操作,會對嵌入式控制系統安全可信運行環境形成巨大威脅。當遭遇突發風險事件時,系統有必要采取系統自行損毀,最大限度保證應用的安全性。為此,如果深入研究損毀模塊的內容,則需要按照損毀形式、程度、模式等不同的角度切入,以獲得全面性數據。
借助可靠、科學的可信操作系統中嵌入式系統,可以盡可能提高安全性,對于系統中所產生的敏感性信息以及敏感性操作開展相應的保護與隱蔽,并在可信運行環境的基礎上實現對入侵系統的完善與調整,從而確保系統能夠在安全、穩定的環境下運行。嵌入式系統可信運行環境在當前不用行業中均受到了足夠的重視,相信在未來時間內,在技術革新、創新與升級下,這項技術必將能能夠產生更大的社會效益,以此實現技術領域的轉型升級。