彭安妮,周威,賈巖,張玉清,
?
物聯網操作系統安全研究綜述
彭安妮1,周威1,賈巖2,張玉清1,2
(1. 中國科學院大學國家計算機網絡入侵防范中心,北京 101408;2. 西安電子科技大學網絡與信息安全學院,陜西 西安 710071)
隨著物聯網的迅速普及和應用,物聯網系統核心(操作系統)的安全問題越發顯得急迫和突出。首先,對現階段市場上廣泛應用的物聯網操作系統及其特征進行了介紹,分析了其與傳統嵌入式操作系統的異同;然后,在調研和分析大量物聯網操作系統相關文獻的基礎上,從構建完整安全系統的角度對現有物聯網操作系統安全研究成果進行有效的分類和分析;進一步指出了物聯網操作系統安全所面臨的挑戰和機遇,總結了物聯網操作系統安全的研究現狀;最后,結合現有研究的不足指出了物聯網操作系統安全未來的熱點研究方向,并特別指出了物聯網系統生存技術這一新的研究方向。
物聯網;安全;操作系統
數據表明,物聯網逐漸成為繼計算機、互聯網之后,世界信息產業發展的第3次浪潮,并得到各個國家與企業的高度重視,發展十分迅速。根據Statista門戶網站的最新統計數據[1],物聯網市場規模不斷擴大,設備數目高速增長,互聯設備數量2016年已經達到176億,預計到2020年將突破300億。而物聯網操作系統作為物聯網行業發展的關鍵技術,其發展趨勢也十分迅猛。目前,ARM、谷歌、微軟、華為、阿里等國內外公司均推出了物聯網操作系統[2]。
由于物聯網存在設備的異構性、設備間的互用性以及部署環境的復雜性等因素,物聯網應用普遍安全性較低、不便于移植、成本較高。其中,物聯網操作系統作為連接物聯網應用與物理設備的中間層,對解決這些問題起著主要作用。物聯網操作系統可以屏蔽物聯網的碎片化特征,為應用程序提供統一的編程接口,從而降低開發時間和成本,便于實現整個物聯網統一管理。鑒于物聯網操作系統作為物聯網系統架構的核心,其安全問題將會嚴重影響整個物聯網生態系統,所以物聯網操作系統也逐漸成為攻擊者的重點目標。
近年,隨著物聯網應用領域擴大,物聯網系統安全問題愈發嚴重。例如,2010年曝光的“震網病毒”,攻擊者利用其入侵多國核電站、水壩、國家電網等工業與公共基礎設施的操作系統,造成了大規模的破壞[3]。2016年,爆發的現今最大規模的“IoT僵尸網絡Mirai”,其控制物聯網設備的方法除了利用默認的用戶名口令,還主要利用了物聯網設備中的系統漏洞如緩沖區溢出等,從而控制了大量的物聯網設備。
隨著物聯網設備與應用逐漸增多,物聯網操作系統面臨的安全風險也逐漸增大。任何一個存在系統漏洞的物聯網設備,都會給整個物聯網系統帶來潛在的安全威脅,因此,亟待提出能更加有效保護物聯網操作系統的安全機制。然而現階段關于物聯網操作系統安全研究的文獻較少,已有的研究成果也存在嚴重的不足。物聯網設備、通信協議和應用場景的多樣化與異構性也使對物聯網操作系統很難構建一個系統的安全體系。為了使研究人員更加清楚地了解物聯網安全研究現狀,促進物聯網操作系統安全發展,本文對物聯網操作系統安全現狀進行了深入分析,指出了挑戰和機遇以及未來的研究方向,主要貢獻如下。
1) 對現有典型物聯網操作系統進行了全面調研與分析,總結了物聯網操作系統的關鍵新特性與存在的安全問題,并根據不同的物聯網應用場景提出了相應的安全需求。
2) 通過調研大量的現階段物聯網操作系統相關研究成果,將物聯網操作系統安全相關文獻按照“系統安全構建—系統安全性分析—系統攻擊防御”這3個角度進行了分類,并將不同安全技術對應到不同的應用場景需求,從而可以更加清晰、全面地了解物聯網操作系統安全研究現狀。
3) 結合現有物聯網操作系統的安全問題與研究現狀,深入分析導致安全問題產生的根本原因,并指出了物聯網操作系統安全研究中面臨的挑戰與機遇。
4) 結合物聯網操作系統安全發展中的挑戰與機遇,為相關研究者指出未來的熱點研究方向,特別指出了物聯網系統生存技術這一新的研究方向。
現階段物聯網設備與應用雖然多種多樣,但其操作系統主要由各種嵌入式操作系統改進而來,所以其邏輯架構層次本質與嵌入式系統架構是相似的,如圖1所示。

圖1 物聯網系統架構
需要注意的是,物聯網與嵌入式系統架構具有2個不同:1) 物聯網系統架構中各個層次并不是固定的,如工業和醫療領域的某些控制設備,其自身受資源限制可能并沒有操作系統層,只是通過遠程應用的命令直接進行控制,另外,還有許多輕量級嵌入式物聯網設備,其應用直接與簡化的RTOS進行交互并沒有中間件層;2) 物聯網硬件設備、操作系統和應用經常在物理上也是可分離的,如智能家居中的傳感器、IP攝像頭等,其物理設備上只具備簡單的操作系統,而其應用則是在遠程移動設備或者云服務器上。本文主要討論系統架構中操作系統層次的安全問題與安全研究現狀。
為了更好地保證物聯網操作系統安全,保障物聯網設備工作的正常高效,首先應該了解物聯網操作系統新的特征。其特征使物聯網操作系統能夠與物聯網的其他層次結合得更加緊密,數據共享更加方便,同時也是影響物聯網操作系統安全的主要因素。本文在調研現有物聯網操作系統后,選取有代表性的10個物聯網操作系統,總結其各自主要特性,如表1所示。表1進一步提煉出物聯網操作系統5個重要特征,表2對物聯網操作系統和嵌入式操作系統的主要特征進行了比較。

表1 物聯網10個操作系統及其特性
1) 硬件驅動和操作系統內核可分離性。由于物聯網設備異構性較大,不同的設備會有不同的固件與驅動程序,所以對操作系統內核與驅動的可分離性要求更高,進而提高操作系統內核的適用性和可移植性。
2) 可配置剪裁性。物聯網終端的硬件配置各種各樣,有小到十幾千字節內存的微型嵌入式應用,也有高達幾十兆字節內存的復雜應用領域。因此,對物聯網操作系統可裁剪性和配置性的要求比對傳統嵌入式操作系統要求更高,同一個操作系統,通過裁剪或動態配置,既能夠適應低端的需求,又能夠滿足高端復雜的需求。
3) 協同互用性。傳統的嵌入式系統大多獨立完成某個單一的任務,而在物聯網環境下各種設備之間相互協同工作的任務會越來越多,所以對物聯網操作系統之間通信協調的要求會越來越高。
4) 自動與智能化。隨著物聯網應用技術的發展,物聯網設備需要人為干預的操作越來越少,而自動化與智能化的操作越來越多,所以物聯網操作系統比傳統的嵌入式操作系統更加智能。
5) 安全可信性。傳統工業設備的嵌入式操作系統單獨處于封閉環境中,同時傳統的嵌入式設備與用戶的關聯并不那么緊密。而隨著物聯網設備在工業與生活中的普遍應用,其將會面臨更加嚴重的網絡攻擊威脅,同時物聯網設備存儲和使用的數據更加敏感和重要。這些系統被控制后將對個人、社會和國家安全造成嚴重威脅,因此,對于物聯網設備的安全和可信性要求越來越高。

表2 物聯網操作系統與傳統嵌入式系統特征比較
本文進一步分析了上述物聯網操作系統的安全設計,指出了其主要存在的3個問題。
1) 直接沿用原有的安全機制。例如,Android Things直接沿用了Android系統的一些基礎安全機制,并沒有深入分析物聯網設備實際的軟硬件特性與需求,還有eLinux也主要是基于Linux內核安全機制,并沒有為物聯網設備設計額外的安全機制。
2) 缺乏對終端系統安全設計。現有的物聯網操作設計時普遍只關注其功能要求。例如,Contiki主要為實時性做了優化設計,RIOT主要為支持各種通信協議進行了改進。大多并沒有考慮對系統安全進行額外的設計。即使像mbed操作系統,雖然在設計時考慮安全因素,但其主要安全保護措施是為了保護通信安全如SSL,但對系統本身還沒有采取有效的防護措施。
3) 沒有充分利用設備自身硬件架構安全特性。上述物聯網操作系統如FreeRTOS、RIOT、Tizen等普遍是運行在ARM Cortex-M系列的CPU核心上的。但是對于Cortex-M自身提供的硬件安全機制如內存保護單元(MPU),在這些操作系統設計中卻沒有具體的應用。而這些自帶的硬件安全機制如果進行合理的配置和使用,可在不增加額外硬件配置的條件下實現高效的系統防御措施。
現階段物聯網應用場景逐漸增多,不同場景下的需求不同,設備軟硬件資源存在差異,故各應用場景對應的系統安全需求側重點也不相同。在介紹物聯網操作系統安全研究現狀之前,本節首先對各個應用場景的安全需求進行分析簡述,只有明確其安全需求,才能采取有針對性的安全機制。
2.3.1 智能家居
在智能家居越發普及的同時,各種智能家居設備系統中保存和使用的用戶隱私信息也越來越多。這些數據不僅包含與用戶身份認證直接相關的指紋、密碼等隱私信息,還包括用戶日常生活中的隱私信息,例如,溫度傳感器記錄了家中各個房間的實時溫度信息;智能電表記錄了家中的用電情況等。而且目前用戶隱私保護意識較差,智能家居產品也缺乏隱私數據使用規范,導致智能家居設備隱私數據泄露日趨嚴重[14]。
智能家居操作系統的首要安全需求是保護用戶的隱私數據,操作系統需要在不影響應用端使用這些隱私數據的同時防止隱私數據泄露。
2.3.2 智能醫療
在智能醫療場景下,設備收集的用戶隱私信息會更多,同時智能醫療設備的隱私信息會共享給諸多醫療單位,加劇用戶醫療隱私信息泄露的風險[15]。另一方面,該場景下設備運行的穩定性需要得到保證,醫療設備尤其是胰島素泵[16]、心臟起搏器[17]等人體嵌入式設備尤為重要,一旦這些醫療設備的操作被惡意控制,將會直接威脅用戶的生命安全,針對智能醫療設備[18]的勒索軟件也開始逐漸增多。
對于智能醫療設備的操作系統,一方面需要對收集、使用和傳輸的隱私數據進行嚴格保護,另一方面需要對設備的關鍵程序操作也進行實時的監控,在異常行為最終執行之前采取對應的處理措施,切實保障智能醫療設備的安全運行。
2.3.3 智能工業
現階段工業生產中應用的物聯網設備越來越多,這些物聯網設備在方便企業進行更加智能自動化管理和操作的同時,也擴大了其攻擊面。例如,“震網病毒”等對關鍵工業設施的攻擊會對企業和國家產生嚴重危害。
因此,關鍵智能工業設備操作系統最重要的安全需求應該是對其控制程序的完整性和可信性的驗證。確??刂瓶尚琶畹玫綀绦校瑫r,對于設備的異常行為做到提早發現和快速處理,防止異常程序行為的執行。另外,對關鍵工業設備的外圍接口也要進行安全隔離,防止通過如U盤等外圍設備插入關鍵控制設備傳播惡意代碼。
2.3.4 智能汽車
隨著市場上聯網的智能汽車逐漸增多,現實中對智能汽車的電子攻擊也層出不窮[19]。智能汽車的系統漏洞也逐漸成為不法者盜取汽車的重要手段[20]。另一方面,用戶個人車輛行駛數據具有較大的商業價值,也成為不法者和各大公司竊取的主要目標。
對于智能汽車操作系統,一方面要防止其存儲的車輛行駛隱私數據在用戶不知情的情況下泄露,另一方面要對車輛系統的控制總線CAN-Bus進行特別防護和隔離,防止攻擊者借助安全性較低的系統程序(如車載娛樂系統、導航系統等)對其非法訪問。另外,智能汽車的安全防護措施必須滿足車輛在實際使用時實時性的要求,對關鍵行駛控制設備必須進行實時監控,及時終止異常行為執行。
本文首先廣泛調研了物聯網安全的相關文獻,發現其中涉及物聯網操作系統安全的研究文獻較少且研究技術較為分散。于是進一步調研了移動操作系統安全領域中可用于物聯網環境下的具體安全技術(如可信執行環境隔離、安全啟動等),最終整理出多篇物聯網操作系統安全相關研究文獻,并對其進行了更加深入的分析與研究。
從這些研究文獻中發現,物聯網操作系統安全還處于初級階段,對相關研究的安全技術也沒有恰當的分類體系。所以本文從安全系統構建的過程出發,依據“系統安全構建—系統安全性分析—系統攻擊防御”這一過程對現有物聯網操作系統主流安全技術進行分類,如圖2所示。首先,在操作系統構建之初就應盡可能全面地考慮到其安全問題,分析需求并設計相應方案,這比構建一個脆弱的系統再進行漏洞修補的方案更為高效,能起到事半功倍的效果。然而,由于操作系統的開放性,構建一個永久安全的系統也是無法實現的。所以在系統構建后,及時地對系統進行安全分析發現安全問題也顯得十分重要。同時,由于攻擊者手段和能力不斷提高,原有設計難以應付日新月異的攻擊手段,物聯網操作系統偵測攻擊的能力也需要不斷提升,來抵御各種潛在的系統攻擊。

圖2 物聯網操作系統中的安全研究分類
本文將分別按系統安全構建、系統安全性分析、系統攻擊防御這3個方面對現有物聯網操作系統研究工作進行討論。使相關安全研究人員可以更加直觀地了解物聯網操作系統構建與使用過程中已有的安全問題和技術,便于快速開展進一步的研究。另外,由于現有關于安全接口設計的研究內容很少,所以本文對安全接口相關研究內容沒有展開討論。
實現物聯網操作系統安全的首要步驟是在系統設計之初就盡可能全面地考慮到其安全問題,構建一個相對穩固的、安全的系統。對于實現物聯網操作系統安全構建的研究,本節從系統安全框架構建、安全內核設計和可信隔離執行環境構建這3個方面展開。
3.1.1 安全系統框架
目前,市場上的物聯網產品在設計階段往往忽視安全因素,導致現階段物聯網產品普遍存在大量的安全漏洞。而如果在設計之初就考慮安全因素,采用更為安全的操作系統設計框架,會有效緩解這一問題。因此,學術界很早就開始關注操作系統安全框架的設計,目前主要提出2個指導性意見,同樣適用于物聯網操作系統。
1) 支持用戶自定義控制系統,在設計時應該讓用戶擁有自主選擇信任范圍的權利,而不能盲目相信設備廠商提供的系統或固件。
2) 對系統提出安全防御措施時要盡可能地減少安全測試復雜度?,F階段一些數據加密、安全啟動等安全措施在抵御攻擊者的同時,也給設備的安全測試和分析增加了難度[21]。
根據上述指導意見,有研究人員提出在物聯網設備中內置安全模塊,為用戶提供動態檢測、診斷、隔離等安全功能,從而使用戶擺脫對廠商的依賴,擁有檢測設備安全和可信的能力[22]。還有研究人員根據現階段物聯網產品存在的安全問題,有針對性地提出了安全產品設計建議[23],值得學習借鑒和參考。
3.1.2 安全內核
內核是操作系統的核心部分,用于完成如進程調度、內存管理等主要功能。對于物聯網設備而言,其操作系統本身就十分簡潔,絕大多數功能均通過內核來實現。因此,設計安全內核對于物聯網操作系統安全構建顯得十分重要。
目前,許多研究致力于輕量級安全內核的研究,其工作主要可分為2個方面。一方面是直接改進原有內核的設計增加安全性。例如,有研究人員設計了安全內核原型系統[24],其可以提供安全認證、訪問控制以及授權管理等多種安全功能并可適用于多種嵌入式操作系統;還有研究人員將原有整體內核進行分區隔離,來有效防止攻擊的傳播和擴散,但安全分區間的通信會額外增加系統負擔[25]。改進內核的設計方法雖然可以直接提高內核的安全性,但這無疑增加了開發人員的負擔,通用內核難以直接應用。
另一方面,研究人員致力于通過增加額外的模塊來對原有內核進行監測和驗證。例如,有研究人員設計了獨立的、輕量級的可信執行環境,用于保護原有內核的關鍵操作[26];還有研究人員增加了額外的驗證模塊用于實時動態地驗證原有內核的安全性,從而保證內核關鍵操作與通信的正確運行[27]。
另外,實時性也是物聯網操作系統必備的特性之一,但其與安全性很難兼備,所以Malenko等[28]提出了適用于物聯網設備的實時操作系統內核設計安全要求,如完整性、機密性、可用性、可靠性、可維護性等,為后續物聯網實時操作系統設計提供了很好的參考。
3.1.3 可信隔離執行環境
隨著物聯網設備在工業與關鍵基礎設施中的應用愈發廣泛,其安全威脅也逐步增加。但如果對系統所有層攻擊都對應采取相應的防御措施會使開銷過大,且防御措施也難以面面俱到。所以在系統構建時,設計可信隔離執行環境用于關鍵程序執行。
可信執行環境的構建主要通過硬件和軟件這2種方式來實現。對于硬件隔離,有研究人員提出利用安全協處理器來確保工作的獨立執行[29]。然而,使用安全協處理器會有額外功耗以及具有較低的計算性能等缺點,因此,Petroni等[30]提出只將協處理器用于偵測和保證中央處理器實際計算的完整性。但由于偵測的工作方式是周期性的,所以其工作間隙的攻擊無法被偵測到;同時輕量級物聯網設備一般并不具備協處理器或額外的硬件配置。如何利用最少的設備和已有的硬件資源實現可信執行環境的構建仍需進一步研究。
對于軟件隔離,研究人員主要通過軟件錯誤隔離(SFI, software fault isolation)和硬件虛擬化來實現。軟件錯誤隔離主要是在原有程序中增加對控制流完整性的檢查,并對使用的內存進行訪問控制[31],從而實現應用之間控制流與數據流的相互隔離。還有研究人員通過增加虛擬化層來實現操作系統與關鍵應用程序之間的相互隔離,關鍵應用程序的內存數據直接由虛擬層進行管理,而操作系統無法對其修改和查看。故即使在虛擬層運行的客戶系統被攻擊者控制,其仍然無法影響系統可信代碼的執行[32,33]。但軟件操作隔離的方法需要增加額外的檢測程序,會降低原有輕量級物聯網操作系統的工作效率;而虛擬化的方法一般需要處理器硬件架構的支持,物聯網設備大多也不具備這樣的配置。所以更加有效的輕量級可信執行環境構建方法還有待更加深入的研究。
一個永久安全的系統是不存在的,尤其對于關鍵工業與基礎設施的物聯網設備需要嚴格保證其數據與操作的可信性,這就需要對物聯網操作系統進行安全性分析,驗證設備安全的同時可以及時發現與修復系統安全問題。關于物聯網操作系統的安全性分析的研究,本節將從平臺組件完整性驗證、系統安全測試與漏洞檢測方法這2個方面來闡述。
3.2.1 平臺組件完整性驗證
由于物聯網設備的多樣性,各種物聯網設備廠商都會對其設備定制平臺組件,導致現階段系統組件碎片化嚴重。如何確保各種平臺組件的安全性成為物聯網操作系統安全性分析的一大難點?,F有研究主要通過平臺組件完整性驗證來及時發現被惡意修改的平臺組件,從而保護系統安全。對于平臺組件完整性的驗證主要可分為安全啟動、運行時驗證和更新驗證3個部分。
安全啟動主要通過驗證各啟動模塊的數字簽名(主要由模塊代碼散列值和設備廠商提供的私鑰組成)并結合可信計算基(TCB, trusted computing base)來保證不可修改的啟動順序。具體驗證過程首先由硬件TCB將系統最先啟動的模塊(如BootLoader)加載到內存進行驗證,驗證通過再加載下一模塊(如內核)對其進行驗證,以此類推,其中任何一個啟動模塊驗證失敗都會導致安全啟動終止,只有所有模塊均按順序通過驗證后才可以完成安全啟動[34]。安全啟動的相關技術現階段越發成熟并已經廣泛應用于大量的移動設備中,例如,ARM公司推出的TrustZone架構就攜帶了安全啟動的功能。
要確保平臺組件的完整性,只通過在啟動階段驗證是遠遠不夠的,攻擊者還可在系統啟動后對平臺組件進行惡意修改,所以需要在系統運行階段對平臺組件完整性進行驗證?,F階段主要是通過一個額外的監測程序不斷地對平臺組件代碼進行驗證[30],并嘗試自動修復被惡意篡改的平臺組件[35]。該監測程序自身完整性可通過設備密鑰對其數字簽名進行驗證,但這無疑會增加系統運行時額外的開銷。對系統資源十分有限的物聯網設備的運行,平臺組件完整性驗證方法還有待改進。
另外,平臺組件由于功能增加或安全漏洞修復會經常需要更新,故需要驗證更新組件的完整性與可信性,從而防止攻擊者通過假冒更新組件安裝惡意程序。Kohn?user等[36]提出利用無線網絡中的其他設備來驗證微型嵌入式系統平臺更新代碼可信性方案,即在網絡中,各設備遠程平臺代碼在更新后,進行互相驗證,從而排除處于不可信狀態的設備,大大提高了攻擊者偽造平臺組件更新的難度。但現階段對單一物聯網設備進行安全平臺組件更新的方法研究較為稀少。
3.2.2 系統安全測試與漏洞檢測方法
目前,安全問題在物聯網設備系統中十分普遍,Costin等[37]在靜態分析了大量物聯網設備系統固件及其更新補丁的源碼后,發現了許多已知和未知的安全漏洞,例如,未保護的后門私鑰泄露問題、存在于通過Wi-Fi連接的Web服務中的XSS漏洞等。因此,對設備本身進行安全測試與漏洞挖掘是十分必要的。
由于物聯網設備的異構性,其安全測試與漏洞挖掘方法很難統一,雖然2016年Sachidananda等[38]第一個提出了可以應用于不同種類物聯網設備的測試框架,但其主要針對已知的設備系統漏洞,并且缺乏對實際產品的大量測試。同年,Mer等[39]提出在智能醫療場景中從設備系統端到云端的完整測試框架,但其主要方法依靠靜態分析缺乏動態測試并且測試方法過于簡單。Tabrizi等[40]創新性地提出基于安全狀態的物聯網設備測試方法,即為物聯網設備建立安全與非安全狀態,然后,根據已知的常見攻擊去測試設備,看設備是否會從安全狀態轉化為非正常狀態從而發現安全問題。但其只將該方法在智能電表上進行了測試,而且該模型的效果過度依賴于已知的攻擊,無法檢測出更深層次的未知漏洞。
概括而言,現階段物聯網操作系統安全測試與漏洞挖掘方法主要存在3個問題亟待解決。
1) 現階段的物聯網系統測試方法適用范圍有限,僅僅適用于單一應用場景或系統。
2) 現有的安全測試與漏洞挖掘方法并不全面,僅僅從設備自身入手沒有考慮到物聯網設備相互之間的影響,缺乏廣泛的實際應用的測試。
3) 目前的安全測試與漏洞挖掘方法過于單一,大多只依靠靜態測試或依賴于已知攻擊或常見漏洞的檢測,缺乏多種測試方法綜合使用以及系統運行時動態測試的方案。
隨著深度學習和大數據時代的到來,攻擊者的能力不斷提高,攻擊手段也更多樣化,物聯網操作系統在未來會面臨更加嚴重的已知和未知的系統攻擊。目前,學術界主要通過在物聯網設備中改進嵌入式系統異常行為檢測、輕量級抵御系統攻擊防御策略、安全隔離存儲與數據加密及遠程可信證明這4種安全機制來應對各種攻擊手段。
3.3.1 系統異常行為檢測
物聯網操作系統首先應該具備異常行為檢測的能力,才可以采取進一步的防御與解決措施。物聯網異常行為檢測與之前異常行為檢測的主要不同在于物聯網程序因設備的不同導致其功能差異更大,很難設計出固定的特征檢測方法。
為應對物聯網這一新特性,研究人員從程序自身入手,通過自動學習正常程序的特征從而檢測異常行為。例如,Khan等[41]提出動態運行時的安全監測方案,可通過檢查程序運行行為和預定義行為模式的一致性來偵測攻擊的發生,該方案避免了傳統異常檢測只能檢測固定屬性閾值的缺點,適用于檢測未知的物聯網系統攻擊行為。Yoon等[42]提出通過系統調用頻率來檢測異常程序行為的方法,其可以自動學習記錄正常應用程序系統調用的頻率分布,從而對比發現程序異常的調用行為。該方法可自動適用于各種不同的應用程序,并且其額外系統開銷較低,在物聯網設備中有很好的應用前景。
3.3.2 輕量級系統防御措施
由于大多數物聯網設備為傳感器等微型嵌入式設備,其軟硬件資源均十分有限,只能執行少量的專用計算任務,沒有足夠的資源用于實現抵御系統攻擊的防御措施。所以現階段研究人員主要從軟件、硬件2個方面輕量化改進原有系統防御技術,使其適用于輕量級物聯網操作系統。例如,針對ROP攻擊,加拿大多倫多大學研究人員結合Intel MPX硬件內存保護擴展設計了輕量級的內存保護系統,防止對關鍵內存區域函數調用堆棧返回地址的修改[43],實現了比控制流完整性驗證(CFI, control flow integrity)更高的安全性,同時大大降低了系統開銷。還有研究人員采用建立內存影子的方法輕量化原有內存檢查點設計方法,可以有效抵御基于輕量級Linux系統的緩沖區溢出等系統攻擊[44]。
但現階段系統針對攻擊的防御技術研究大多忽視了物聯網設備互用性的特點。在物聯網環境下設備間的互用和依賴關系會越來越多,所以僅僅考慮抵御對自身系統的攻擊是遠遠不夠的。例如,市場上有些智能窗戶控制器會根據溫度傳感器收集的室溫自動打開或關閉窗戶。在上述情景下,敵手僅需控制溫度傳感器的溫度值,從而間接實現對智能窗戶的控制。Yu等[45]提出基于設備間依賴關系來建立入侵檢測模型,為解決設備互用問題提供了很好的解決思路,值得國內研究人員學習和參考。
3.3.3 安全隔離存儲與數據加密
目前,隨著物聯網可穿戴設備的發展,其與用戶的聯系更加緊密,物聯網設備存儲與使用的敏感數據逐漸增多,所以不可避免地會帶來用戶的隱私安全問題。為避免隱私數據的泄露,禁止未經授權的運行在不可信執行環境的程序訪問設備的敏感數據,安全隔離存儲與數據對于物聯網設備顯得十分必要。
同樣,由于物聯網設備硬件資源十分有限,通過增加額外的安全芯片進行安全存儲的方法對于物聯網設備而言開銷過大。針對這一問題,一方面研究人員提出了軟件層面的可動態配置的安全存儲策略。即在系統啟動階段,允許用戶自定義地將存儲器劃分為安全存儲和非安全存儲區域,并記錄對應區域的訪問控制條件;然后在程序運行階段,將內存訪問指令與記錄的訪問控制條件進行比對,只允許受保護的安全程序訪問安全存儲,非安全程序不得訪問安全存儲中的數據[46~48]。
另一方面,研究人員從實現和設計這2個角度,輕量化數據加密方案來使其適用于物聯網設備安全存儲[49~52],例如,通過改進S-box的實現方案輕量化現有加密系統[51]以及設計適用于輕量級物聯網設備上的AAβ非對稱加密方案[52]等。
但現階段的大多數輕量化密碼學方案只注重減少對設備計算與存儲資源的使用,缺乏對算法耗電量的評估。而過高的電量消耗會大大降低這些算法的實用價值。所以相關研究人員在設計和實現這些輕量級安全算法時,還需充分考慮對設備電量的消耗。
3.3.4 遠程可信證明
由于越來越多的小型物聯網設備(如嵌入式醫療設備、特殊環境的工業控制系統以及軍用設備等)在實際應用中會面臨長期物理不可接觸的問題,從而導致這些設備被攻擊者惡意控制以后,其管理者并沒有辦法察覺。所以如何遠程驗證這些設備的關鍵操作是否可信成為現階段物聯網系統安全研究的熱點問題。
遠程可信證明是目前解決這一問題最主要也是最有效的方法之一。遠程證明一般是對關鍵安全程序[53~56]進行驗證。主要過程是發送端首先根據需要驗證程序的狀態信息或控制流的關鍵屬性計算出摘要信息。然后再利用TCB存儲的設備私鑰對摘要信息進行加密。接收端也用與發送端同樣的方法計算出原始程序的摘要信息。最后接收端再用發送端的公鑰對加密的摘要信息進行解密從而完成對遠程程序的可信證明。
但現有遠程證明方法在物聯網設備中的應用主要存在2個問題。
1) 驗證過程摘要信息會不可避免地泄露程序的狀態信息。為了解決敏感程序狀態信息泄露的問題,有研究人員提出了基于軟件屬性的可信認證方法,即對軟件原始屬性都建立對應的安全證書,在加載軟件時對每個屬性證書進行驗證[57,58]。然而,如何確定和提取軟件的屬性還是現有研究中的一大難點。
2) 另一個問題是可信證明在實現過程中會占用過多的系統資源,并不適用于輕量級物聯網設備系統。所以研究人員提出只驗證部分的關鍵安全服務程序,然后常規應用程序再利用這些安全服務程序進行可信安全操作[59],從而簡化遠程可信證明過程。同時,最近許多研究人員嘗試結合物聯網設備自身獨特的物理特性(PUF, physical unclonable function)來輔助認證過程[60~62]。即PUF在認證過程中生成動態的“挑戰—響應”對來進行驗證,從而代替存儲固定的設備密鑰,節約用于單獨存儲密碼的硬件資源,同時提高了安全性[62]。然而該方案也存在一定的安全問題,例如,挑戰響應對不能被重復利用,否則,會導致重放攻擊。所以目前更加實用的方案是將認證密鑰存儲在基于PUF的密鑰存儲器中[63,64]。
為了最大限度地保證其安全性,物聯網應用應該具備“系統安全構建—系統安全性分析—系統攻擊防御”這整個周期內的所有安全技術。不過根據2.3節介紹的不同場景的安全需求,不同的應用場景下的操作系統對安全技術要求的側重點有所不同,如表3所示。

表3 不同場景下物聯網操作系統采取的安全技術
在深入調研現階段物聯網操作系統安全問題的基礎上,指出物聯網操作系統安全研究中目前面臨的挑戰。然后,結合研究現狀給出可用于應對這些挑戰的安全技術機遇,其對應關系如表4所示。

表4 物聯網操作系統面臨的挑戰和機遇
目前,物聯網操作系統安全問題產生的根本原因主要是在系統構建時忽略了安全因素。但小型廠商并不具備安全系統構建的專業知識,所以需要安全研究人員設計出實用的且額外成本低的安全系統構建框架[65]供物聯網設備廠商選擇使用。另外,研究人員可設計額外的安全評估模塊在系統設計過程中就預先對其進行安全性分析[66],防患于未然。
由于物聯網設備的計算、存儲資源有限,并對設備的成本和功耗有著較高的要求,所以在保證操作系統安全的同時還要使附加的安全機制的功耗和資源使用降到最低,才能切實提高安全機制的實用價值?,F有輕量加密算法[67]、輕量認證算法[68]以及輕量級系統防御措施[69]的資源消耗和安全性均還無法滿足現階段輕量級物聯網設備的安全需求。
物聯網環境下很多設備都會面臨長期物理不可接觸,如嵌入式醫療設備、特殊環境的工業控制系統和軍用設備等。如何驗證這些設備關鍵操作的可信性以及數據的可靠性逐漸成為現階段物聯網操作系統研究的一大熱點,需要研究人員提出更加輕量化且高效的遠程可信認證方案來解決這一難題[70]。
現階段物聯網應用的操作系統中存在大量安全漏洞,但現有的物聯網安全測試工具與漏洞挖掘方法過于簡單或直接照搬原有Android系統的測試方法,無法挖掘出更加深入的物聯網系統中的安全問題,同時發現的安全問題也不夠全面。根據本文調研結果,目前尚未發現優秀的針對物聯網系統安全測試的公開成果,亟待研究人員提出更加有效的安全分析與測試工具[30,71]。
隨著物聯網設備越發普及,智能家居、智能醫療設備等還會收集用戶大量的隱私信息,如室溫變化、體征變化等,保管傳輸不當會導致嚴重的用戶隱私泄露問題。但這些物聯網設備存儲資源均十分有限,系統防御能力十分薄弱,如何在輕量級物聯網設備系統中利用更少的系統資源構建出可信安全的存儲空間防止隱私數據泄露,需要引起研究人員的重點關注。
目前,物聯網設備之間的無線與有線交互越來越頻繁,僅僅保障設備內部系統安全往往是不夠的。在物聯網系統設計中還需要特別對外圍接口的程序設計以及調用進行仔細的檢查。防止攻擊者利用不安全的外圍設備入侵關鍵設備系統。設計出安全、靈活、廣泛適用的程序接口也是現階段物聯網操作系統安全研究中不可忽視的環節[72]。
隨著物聯網設備在工業等關鍵設施中的廣泛應用,其安全問題也越發嚴重,攻擊者可以通過入侵控制基礎設備的關鍵程序從而造成嚴重的物理破壞。故對于控制重要設備的關鍵程序,一方面需要為其構造可信隔離的安全執行環境,即使在操作系統被攻破的前提下仍然保障關鍵程序不會受到威脅;另一方面需要構建安全內核,增加操作系統抵御攻擊的能力。
由于物聯網系統普遍存在諸多漏洞,并且隨著攻擊者能力不斷提高,物聯網操作系統隨時可能遭受多種類型的系統攻擊。對此,需要從各個方面構建起完整的系統防御機制。首先,要從啟動階段就開始對系統進行防護,為關鍵程序構建可信執行環境進行隔離[44];其次,實時對物聯網操作系統上程序行為進行監控,及時發現和處理異常行為,有效提高設備的安全性[50,51];最后,針對嚴重的特定攻擊手段(如精心設計的ROP攻擊、側信道分析等),設計出對應的高效防御措施[32,73]。
根據第4節介紹的物聯網挑戰與機遇,本文將其中需要進一步發展的研究技術提煉抽象為未來研究的發展方向,8個技術發展機遇關系如圖3所示,并在此之后根據現有系統防御技術的不足,提出了物聯網生存技術這一新的研究方向。

圖3 物聯網操作系統研究方向與現有嵌入式系統安全防御技術關系
現階段許多傳感器和小型物聯網設備軟硬件資源均十分有限,操作系統也十分輕量,并不具備如DEP、ASLR等普通計算機的系統防御措施,甚至硬件架構也不支持MMU等內存管理功能。但如果依靠增加外圍硬件如安全芯片來實現可信計算,開銷過大且不易推廣。為了解決細粒度的系統保護與資源有限的矛盾,需要充分利用現有設備的軟硬件資源例如ARM架構的MPU和TrustZone等,構建適用范圍更廣的輕量級系統防御與可信計算技術。
現階段物聯網設備種類越來越多,并逐步應用于醫療、家居、交通和工業等各種不同的場景,所以設備間軟硬件架構普遍存在異構性。但是,對每種設備都定制化構建安全系統又是不切實際的。如何對這些異構設備設計出廣泛適用的安全系統構建方法、安全內核及外圍接口將成為物聯網系統安全研究的一大難點。
現階段,各種物聯網設備和系統層出不窮,許多未經嚴格安全測試存在大量安全漏洞的物聯網產品已經流入市場。現有的物聯網設備測試方法并不成熟,缺乏大量的產品測試[36],而且測試方法也過于簡單,無法挖掘出深層次的安全漏洞,例如,設備間互用導致的安全問題。如何對各種物聯網產品進行深入全面的系統測試和漏洞檢測逐步成為物聯網操作系統安全研究領域亟待解決的一大問題。
在對物聯網操作系統安全研究現狀進行深入分析時發現,現階段物聯網操作系統還沒有關于系統生存技術的相關研究。而隨著物聯網設備種類與功能的不斷增加,物聯網操作系統也會更加復雜,移除所有存在于物聯網系統中可能被攻擊者利用的漏洞是一件十分困難的事情,因此,本文認為研究生存技術在物聯網操作系統中的應用十分必要。而入侵容忍系統能夠在即使部分組件被妥協的狀況下,保證整個系統仍發揮正常的功能。關于傳統的系統生存技術,目前已有許多研究成果[74~76]。例如,對當前操作系統進行自動評估,并幫助用戶選擇和配置相應的生存與入侵容忍機制[74]以及為入侵行為構建狀態轉換模型用戶自動學習入侵特征等[75]。但這些技術過于復雜還無法直接應用于物聯網系統中,目前尚未發現適用于物聯網系統的生存技術,亟待相關研究人員填補這項空白。
本文首先介紹了物聯網系統架構及其特征并與傳統的嵌入式系統進行了比較,然后在調研了大量相關文獻后,創新性地從“系統安全構建—系統安全性分析—系統攻擊防御”的角度對現有物聯網操作系統相關研究進行分類總結。進一步在此基礎上指出了物聯網操作系統安全面臨的8個挑戰與機遇,最后,對未來物聯網操作系統安全研究方向進行了展望,指出輕量化細粒度系統防御與可信計算技術、廣泛適用的安全系統框架、內核、接口設計方法、高效的物聯網安全測試與漏洞檢測方法、物聯網系統生存技術等這些物聯網操作系統安全的未來熱點研究方向。
物聯網操作系統是物聯網發展的重要基礎,只有保證了物聯網操作系統的安全,才能進一步保證物聯網的安全,促進物聯網產業快速發展與普及,更好地服務于人們的日常生活。
[1] 張玉清, 周威, 彭安妮. 物聯網安全綜述[J]. 計算機研究與發展, 2017, 54(10):2130-2143.
ZHANG Y Q, ZHOU W, PENG A N. Survey of Internet of things security[J]. Journal of Computer Research and Development, 2017, 54(10): 2130-2143.
[2] AMIRI-KORDESTANI M, BOURDOUCEN H. A survey on embedded open source system software for the Internet of things[C]// Free and Open Source Software Conference. 2017.
[3] LANGNER R. Stuxnet: dissecting a cyberwarfare weapon[J]. IEEE Security & Privacy, 2011, 9(3):49-51.
[4] D’EXPLOITATION S. RIOT-the friendly operating system for the Internet of Things-VIDEO[J]. Genomics & Informatics, 2012, 10(4): 249-55.
[5] DUNKELS A, GRNVALL B, VOIGT T. Contiki-a lightweight and flexible operating system for tiny networked sensors[C]// IEEE International Conference on Local Computer Networks. 2004:455-462.
[6] PAVELI? N. Evaluation of Android things platform[D].Sveu?ili?te u Zagrebu: Fakultet Elektrotehnike i Ra?unarstva, 2017.
[7] TOULSON R, WILMSHURST T. Fast and effective embedded systems design: applying the ARM mbed[J]. Newnes, 2016.
[8] SHALAN M, EL-SISSY D. Online power management using DVFS for RTOS[C]//4th International Design and Test Workshop (IDT). 2009: 1-6.
[9] INAM R, M?KI-TURJA J, SJ?DIN M, et al. Hard real-time support for hierarchical scheduling in FreeRTOS[C]//23rd Euromicro Conference on Real-Time Systems. 2011: 51-60.
[10] CAO Q, ABDELZAHER T, STANKOVIC J, et al. The liteos operating system: towards unix-like abstractions for wireless sensor networks[C]//International Conference on Information Processing in Sensor Networks. 2008: 233-244.
[11] GR?S S, LOSE G. Green hills software’s integrity real-time operating system unleashes the power of Intel network processors[J]. International Urogynecology Journal, 2013, 24(10):1771.
[12] POELLABAUER C, SCHWAN K, WEST R, et al. Flexible user/kernel com-munication for real-time applications in elinux[C]//The Workshop on Real Time Operating Systems and Applications and Second Real Time Linux Workshop (in conjunction with RTSS 2000). 2000.
[13] VELEZ G, SENDEROS O, NIETO M, et al. Implementation of a computer vision based advanced driver assistance system in Tizen IVI[C]// ITS World Congress. 2014.
[14] ZHAO K, GE L. A survey on the Internet of things security[C]// Ninth International Conference on Computational Intelligence and Security. 2013:663-667.
[15] ZARAGOZA M G, KIM H K, LEE R Y. Big data and IoT for-healthcare security[M]//Computer and Information Science. Springer International Publishing, 2018:1-11.
[16] HENRY N L, PAUL N R, MCFARLANE N. Using bowel sounds to create a forensically-aware insulin pump system[C]//Usenix Conference on Safety, Security, Privacy and Interoperability of Health Information Technologies. 2013: 8.
[17] LANGNER R. Stuxnet: dissecting a cyberwarfare weapon[J]. IEEE Security & Privacy, 2011, 9(3):49-51.
[18] CLARK S S, RANSFORD B, RAHMATI A, et al. WattsUpDoc: power side channels to nonintrusively discover untargeted malware on embedded medical devices[C]//HealthTech. 2013.
[19] WOO S, JO H J, LEE D H. A practical wireless attack on the connected car and security protocol for in-vehicle CAN[J]. IEEE Transactions on Intelligent Transportation Systems, 2015, 16(2): 993-1006.
[20] HUMAYED A, LUO B. Cyber-physical security for smart cars: taxonomy of vulnerabilities, threats, and attacks[C]//The ACM/IEEE Sixth International Conference on Cyber-Physical Systems. 2015: 252-253.
[21] FRANCILLON A. Analyzing thousands of firmware images and a few physical devices: what’s next?[C]//The 6th International Workshop on Trustworthy Embedded Devices. 2016: 1.
[22] BABAR S, STANGO A, PRASAD N, et al. Proposed embedded security framework for Internet of things (IoT)[C]//2011 2nd International Conference on Wireless Communication, Vehicular Technology, Information Theory and Aerospace & Electronics Systems Technology (Wireless VITAE). 2011: 1-5.
[23] JIN Y. Embedded system security in smart consumer electronics[C]//The 4th International Workshop on Trustworthy Embedded Devices. 2014: 59.
[24] LIU S. Design and development of a security kernel in an embedded system[J]. International Journal of Control & Automation, 2014, 7(11):49-58.
[25] GUANCIALE, ROBERTO, KHAKPOUR, et al. Formal verification of information flow security for a simple arm-based separation kernel[J]. Journal of Molecular Structure Theochem, 2013, 587(s1-3): 49-56.
[26] AZAB A M, SWIDOWSKI K, BHUTKAR R, et al. SKEE: a lightweight secure kernel-level execution environment for ARM[C]//NDSS. 2016.
[27] BATES A, TIAN D, BUTLER K R B, et al. Trustworthy whole-system provenance for the Linux kernel[C]//Usenix Conference on Security Symposium. 2015: 319-334.
[28] MALENKO M, BAUNACH M. Real-time and security requirements for Internet-of-things operating systems[C]//Internet Der Dinge: Echtzeit 2016. 2016: 33-42.
[29] DYER J G, LINDEMANN M, PEREZ R, et al. Building the IBM 4758 secure coprocessor[J]. Computer, 2001, 34(10): 57-66.
[30] PETRONI JR N L, FRASER T, MOLINA J, et al. Copilot-a coprocessor-based kernel runtime integrity monitor[C]//USENIX Security Symposium. 2004: 179-194.
[31] ZHAO L, LI G, SUTTER B D, et al. ARMor: fully verified software fault isolation[C]//The International Conference on Embedded Software. 2011:289-298.
[32] CHEN X, GARFINKEL T, LEWIS E C, et al. Overshadow:a virtualization based approach to retrofitting protection in commodity operating systems[C]//ACM, 2008:2-13.
[33] NORDHOLZ J, VETTER J, PETER M, et al. Xnpro: low-impact hypervisor-based execution prevention on ARM[C]//The 5th International Workshop on Trustworthy Embedded Devices. 2015: 55-64.
[34] PARK D J, HWANG H S, KANG M H, et al. Secure boot method and semiconductor memory system using the method: US20090019275[P]. 2009.
[35] KIRKPATRICK M S, GHINITA G, BERTINO E. Resilient authenticated execution of critical applications in untrusted environments[J]. IEEE Transactions on Dependable & Secure Computing, 2012, 9(4):597-609.
[36] KOHNH?USER F, KATZENBEISSER S. Secure code updates for mesh networked commodity low-end embedded devices[C]//European Symposium on Research in Computer Security. 2016: 320-338.
[37] COSTIN A, ZADDACH J, FRANCILLON A, et al. A large-scale analysis of the security of embedded firmwares[C]//USENIX Security Symposium. 2014: 95-110.
[38] SACHIDANANDA V, TOH J, SIBONI S, et al. POSTER: towards exposing Internet of things: a roadmap[C]//ACM Sigsac Conference on Computer and Communications Security. 2016:1820-1822.
[39] MER M, ASPINALL D, WOLTERS M. POSTER: weighing in eHealth security[C]//ACM Sigsac Conference on Computer and Communications Security. 2016:1832-1834.
[40] TABRIZI F M, PATTABIRAMAN K. Formal security analysis of smart embedded systems[C]//The 32nd Annual Conference on Computer Security Applications. 2016: 1-15.
[41] KHAN M T, SERPANOS D, SHROBE H. A rigorous and efficient run-time security monitor for real-time critical embedded system applications[C]//2016 IEEE 3rd World Forum on Internet of Things (WF-IoT). 2016: 100-105.
[42] YOON M K, MOHAN S, CHOI J, et al. Learning execution contexts from system call distribution for anomaly detection in smart embedded system[C]//2017 IEEE/ACM Second International Conference on Internet-of-Things Design and Implementation (IoTDI). 2017: 191-196.
[43] HUANG W, HUANG Z, MIYANI D, et al. LMP: light-weighted memory protection with hardware assistance[C]//The 32nd Annual Conference on Computer Security Applications. 2016: 460-470.
[44] VOGT D, GIUFFRIDA C, BOS H, et al. Lightweight memory checkpointing[C]//IEEE/IFIP International Conference on Dependable Systems and Networks. 2015:474-484.
[45] YU T, SEKAR V, SESHAN S, et al. Handling a trillion (unfixable) flaws on a billion devices: rethinking network security for the Internet-of-things[C]//ACM Workshop on Hot Topics in Networks. 2015:5.
[46] KOEBERL P, SCHULZ S, SADEGHI A R, et al. TrustLite: a security architecture for tiny embedded devices[C]//European Conference on Computer Systems. 2014:10.
[47] DEFRAWY K E, PERITO D, TSUDIK G. SMART: secure and minimal architecture for (Establishing a Dynamic) root of trust[J]. Isoc, 2017.
[48] STRACKX R, PIESSENS F, PRENEEL B. Efficient isolation of trusted subsystems in embedded systems[C]//International Conference on Security and Privacy in Communication Systems. 2010:344-361.
[49] GUO F, MU Y, SUSILO W, et al. CP-ABE with constant-size keys for lightweight devices[J]. IEEE Transactions on Information Forensics &Security, 2014, 9(5):763-771.
[50] SHI Y, WEI W, HE Z, et al. An ultra-lightweight white-box encryption scheme for securing resource-constrained IoT devices[C]//Conference on Computer Security Applications. 2016:16-29.
[51] BANSOD G, RAVAL N, PISHAROTY N. Implementation of a new lightweight encryption design for embedded security[J].IEEE Transactions on Information Forensics and Security, 2015, 10(1): 142-151.
[52] ADNAN S F S, ISA M A M, HASHIM H. Timing analysis of the lightweight AAβ encryption scheme on embedded Linux for Internet of things[C]//2016 IEEE Symposium on Computer Applications & Industrial Electronics (ISCAIE). 2016: 113-116.
[53] KAUER B. OSLO: improving the security of trusted computing[C]// USENIX Security Symposium. 2007: 229-237.
[54] KüHN U, SELHORST M, STüBLE C. Realizing property-based attestation and sealing with commonly available hard and software[C]//The 2007 ACM workshop on Scalable trusted computing. 2007: 50-57.
[55] KYL?NP?? M, RANTALA A. Remote attestation for embedded systems[C]//Conference on Cybersecurity of Industrial Control Systems. 2015: 79-92.
[56] TSUDIK G. Challenges in remote attestation of low-end embedded devices[C]//The 4th International Workshop on Trustworthy Embedded Devices. 2014: 1.
[57] CHEN L, L?HR H, MANULIS M, et al. Property-based attestation without a trusted third party[J]. Information Security, 2008: 31-46.
[58] SADEGHI A R, STüBLE C. Property-based attestation for computing platforms: caring about properties, not mechanisms[C]//The 2004 workshop on new security paradigms. 2004: 67-77.
[59] MCCUNE J M, LI Y, QU N, et al. TrustVisor: efficient TCB reduction and attestation[C]//2010 IEEE Symposium on Security and Privacy (SP). 2010: 143-158.
[60] SCHULZ S, WACHSMANN C, SADEGHIS A R. Lightweight remote attestation using physical functions, technische universitat darmstadt, darmstadt[R]. Germany, Technical Report, 2011.
[61] SCHULZ S, SADEGHI A R, WACHSMANN C. Short paper: lightweight remote attestation using physical functions[C]//The fourth ACM Conference on Wireless Network Security. 2011: 109-114.
[62] RANASINGHE D, ENGELS D, COLE P. Security and privacy: modest proposals for low-cost RFID systems[C]//Auto-ID Labs Research Workshop, Zurich, Switzerland. 2004.
[63] EICHHORN I, LEEST V V D, LEEST V V D. Logically reconfigurable PUFs: memory-based secure key storage[C]//ACM Workshop on Scalable Trusted Computing. 2011:59-64.
[64] YU M D M, M’RAIHI D, SOWELL R, et al. Lightweight and secure PUF key storage using limits of machine learning[C]//International Work-shop on Cryptographic Hardware and Embedded Systems. 2011: 358-373.
[65] GARITANO I, FAYYAD S, NOLL J. Multi-metrics approach for security, privacy and dependability in embedded systems[J]. Wireless Personal Communications, 2015, 81(4): 1359-1376.
[66] OH D, KIM D, RO W W. A malicious pattern detection engine for embedded security systems in the Internet of things[J]. Sensors, 2014, 14(12): 24188-24211.
[67] BANSOD G, RAVAL N, PISHAROTY N. Implementation of a new lightweight encryption design for embedded security[J]. IEEE Transactions on Information Forensics and Security, 2015, 10(1): 142-151.
[68] ODELU V, DAS A K, GOSWAMI A. A secure biometrics-based multi-server authentication protocol using smart cards[J]. IEEE Transactions on Information Forensics and Security, 2015, 10(9): 1953-1966.
[69] CARABAS M, MOGOSANU L, DEACONESCU R, et al. Lightweight display virtualization for mobile devices[C]//International Workshop on Secure Internet of Things. 2014:18-25.
[70] ABERA T, ASOKAN N, DAVI L, et al. C-FLAT: control-flow attestation for embedded systems software[C]//The 2016 ACM SIGSAC Conference on Computer and Communications Security. 2016: 743-754.
[71] CHALUPAR G, PEHERSTORFER S, POLL E, et al. Automated reverse engineering using Lego[J]. WOOT, 2014, 14: 1-10.
[72] ASOKAN N, EKBERG J E, KOSTIAINEN K, et al. Mobile trusted computing[J]. Proceedings of the IEEE, 2014, 102(8):1189-1206.
[73] HALEVI T, MA D, SAXENA N, et al. Secure proximity detection for NFC devices based on ambient sensor data[C]//European Symposium on Research in Computer Security. 2012: 379-396.
[74] LIN J, JING J, LIU P. Evaluating intrusion-tolerant certification authority systems[J]. Quality & Reliability Engineering International, 2012, 28(8):825-841.
[75] GOSEVAPOPSTOJANOVA K, VAIDYANATHAN K, TRIVEDI K, et al. Characterizing intrusion tolerant systems using a state transition model[C]//DARPA Information Survivability Conference & Exposition II. 2001:211-221.
[76] GUPTA V, LAM V, RAMASAMY H G V, et al. dependability and performance evaluation of intrusion-tolerant server architectures[M]// Dependable Computing. Springer Berlin Heidelberg, 2003: 81-101.
Survey of the Internet of things operating systemsecurity
PENG Anni1, ZHOU Wei1, JIA Yan2, ZHANG Yuqing1,2
1. National Computer Network Intrusion Protection Center, University of Chinese Academy of Sciences, Beijing 101408, China2. School of Cyber Engineering, Xidian University, Xi’an 710071, China
With the rapid popularization and wide application of the Internet of things (IoT), the security problems of IoT operating system, which is the essential part, become more and more urgent. Firstly, the famous IoT operating systems and their different features were introduced, then it was compared with present embedded systems. Secondly, On the basis of the survey of research related to IoT operating system, the research was discussed and analyzed from the view of building a comprehensive security system, then security challenges and opportunities which the IoT system faced were pointed out, and the research status of the security of the IoT operating system was summarized. Finally, the promising future study directions in the IoT operating system security field were discussed based on the drawbacks of the existing researches, particularly, the IoT system survival technology as a new research direction was pointed out.
Internet of things, security, operating system
TP393
A
10.11959/j.issn.1000-436x.2018040
2017-10-12;
2018-03-06
國家重點研發計劃基金資助項目(No. 2016YFB0800703);國家自然科學基金資助項目(No. 61572460, No. 61272481);信息安全國家重點實驗室的開放課題基金資助項目(No.2017-ZD-01);國家發改委信息安全專項基金資助項目(No. (2012)1424);國家“111”計劃基金資助項目(No.B16037)
The National Key Research and Development Program of China (No.2016YFB0800703), The National Natural Science Foundation of China (No.61572460, No.61272481), The Open Project Program of the State Key Laboratory of Information Security(No.2017-ZD-01), The National Information Security Special Projects of National Development and Reform Commission of China (No.(2012)1424), 111 Project Foundation of China (No.B16037)
彭安妮(1995-),女,湖北武漢人,中國科學院大學博士生,主要研究方向為網絡與系統安全。

周威(1993-),男,河北保定人,中國科學院大學博士生,主要研究方向為網絡與系統安全。
賈巖(1992-),男,河北石家莊人,西安電子科技大學博士生,主要研究方向為網絡與系統安全。

張玉清(1966-),男,陜西寶雞人,博士,中國科學院大學教授,主要研究方向為網絡與信息系統安全。