王雅哲, 張城毅, 霍冬冬, 李佳琳1中國(guó)科學(xué)院信息工程研究所 信息安全國(guó)家重點(diǎn)實(shí)驗(yàn)室, 北京 中國(guó) 10009 互聯(lián)網(wǎng)智能設(shè)備信息安全北京市工程實(shí)驗(yàn)室, 北京 中國(guó) 10009 中國(guó)科學(xué)院大學(xué) 網(wǎng)絡(luò)空間安全學(xué)院, 北京 中國(guó) 100049
萬(wàn)物互聯(lián)(Internet of Things, IoT)是繼計(jì)算機(jī)、互聯(lián)網(wǎng)與移動(dòng)通信網(wǎng)之后的又一次信息產(chǎn)業(yè)浪潮, 其目標(biāo)是通過(guò)各種信息傳感設(shè)備與智能通訊系統(tǒng)把全球范圍內(nèi)的物理實(shí)體、信息系統(tǒng)和人有機(jī)連接起來(lái),提供更透徹的感知、更全面的互聯(lián)互通和更深入的智能化服務(wù)。近些年來(lái), 伴隨著物聯(lián)網(wǎng)的產(chǎn)生和發(fā)展,IoT智能設(shè)備越來(lái)越多地出現(xiàn)在市場(chǎng)上, 作為信息空間和物理空間深度融合的代表產(chǎn)物, 已經(jīng)從面向個(gè)人消費(fèi)的先鋒產(chǎn)品快速拓展到經(jīng)濟(jì)社會(huì)各個(gè)領(lǐng)域,賦予教育、醫(yī)療、零售、能源、建筑、汽車等諸多行業(yè)新的服務(wù)手段, 支撐政府辦公、公共安全、交通物流等城市基本職能的提升[1]。預(yù)計(jì)至2018年我國(guó)智能設(shè)備產(chǎn)品和服務(wù)的總體市場(chǎng)規(guī)模約 5000 億元,至 2020 年可達(dá)到萬(wàn)億元水平[2]。
然而智能設(shè)備大規(guī)模普及的同時(shí), 也給用戶個(gè)人資產(chǎn)安全與隱私保護(hù)帶來(lái)了極大地沖擊和挑戰(zhàn)?,F(xiàn)有IoT智能設(shè)備側(cè)重于功能實(shí)現(xiàn), 而傳統(tǒng)設(shè)備廠商安全能力不足, 或者考慮時(shí)間和成本等因素, 在系統(tǒng)設(shè)計(jì)上普遍忽略安全問(wèn)題。黑客可以輕易利用設(shè)備安全漏洞, 使其成為傳統(tǒng)網(wǎng)絡(luò)攻擊的新工具, 如利用 Aidra[3]、Darlloz[4]、Gafgyt[5]、Mirai[6]、Pnscan[7]等惡意代碼感染智能設(shè)備并發(fā)動(dòng)分布式拒絕服務(wù)攻擊(Distributed Denial of Service, DDoS)造成網(wǎng)絡(luò)癱瘓、設(shè)備拒絕服務(wù)和相關(guān)服務(wù)下線等嚴(yán)重后果。另外, 智能設(shè)備產(chǎn)生、處理以及傳遞海量來(lái)自物理空間和信息空間的安全敏感控制數(shù)據(jù)和隱私數(shù)據(jù), 也極易成為黑客們的攻擊對(duì)象。目前已經(jīng)暴露如智能電表遠(yuǎn)程關(guān)閉[8]、智能門(mén)鎖非法遠(yuǎn)程開(kāi)啟[9]、智能汽車未授權(quán)遠(yuǎn)程操作[10]等多項(xiàng)安全事件。更有不少黑客在近些年的黑客大會(huì)上演示他們攻破家電類智能設(shè)備的過(guò)程[11], 這些對(duì)智能設(shè)備的攻擊除影響個(gè)人隱私安全、財(cái)產(chǎn)安全外, 已經(jīng)證實(shí)針對(duì)智能設(shè)備的非授權(quán)指令攻擊甚至可以危及用戶的人身安全。目前, IoT智能設(shè)備終端與云端深度融合是目前系統(tǒng)部署的主要模式, 在提高其智能化水平與控制便捷度的同時(shí),也帶來(lái)了新的攻擊面: 黑客可以利用云服務(wù)穿透連接物理世界的信息化訪問(wèn)接口, 導(dǎo)致設(shè)備惡意控制、大規(guī)模數(shù)據(jù)泄露、設(shè)備群體性異常等后果。因此, 如何保障智能設(shè)備安全成為當(dāng)前信息安全領(lǐng)域亟待解決的重要問(wèn)題之一。
具體來(lái)說(shuō), IoT智能設(shè)備生態(tài)總體分為智能設(shè)備終端、云服務(wù)端和用戶控制終端。本文對(duì)目前智能設(shè)備面臨的安全威脅和已有的防護(hù)技術(shù)進(jìn)行了系統(tǒng)地梳理, 發(fā)現(xiàn)在智能設(shè)備終端, 安全威脅主要來(lái)自IoT嵌入式操作系統(tǒng)惡意代碼攻擊、設(shè)備敏感數(shù)據(jù)泄露、設(shè)備服務(wù)權(quán)限驗(yàn)證漏洞攻擊和設(shè)備接入網(wǎng)絡(luò)協(xié)議安全等方面, 相應(yīng)的防護(hù)技術(shù)研究主要關(guān)注硬件系統(tǒng)可信執(zhí)行環(huán)境[12]、安全隔離方案[13]、硬件安全認(rèn)證[14]、硬件完整性認(rèn)證[15]和硬件端信息流異常檢測(cè)技術(shù); 在用戶控制終端, 安全威脅和防護(hù)技術(shù)研究主要包括 APP代碼保護(hù)、終端對(duì)設(shè)備操作安全威脅和終端權(quán)限管理等方面; 而在云服務(wù)端, 一方面有來(lái)自傳統(tǒng)網(wǎng)絡(luò)層的安全威脅, 另一方面則有更多來(lái)自業(yè)務(wù)層的安全威脅, 包括業(yè)務(wù)層接入?yún)f(xié)議安全漏洞, 業(yè)務(wù)層設(shè)備權(quán)限管理漏洞和業(yè)務(wù)層設(shè)備批量攻擊威脅。目前云端防護(hù)技術(shù)主要是信息流的異常檢測(cè)。然而現(xiàn)有智能設(shè)備安全防護(hù)技術(shù)大多集中于安全事件處理的某個(gè)階段或僅針對(duì)具體問(wèn)題, 缺乏涵蓋智能設(shè)備安全事件全過(guò)程的安全防護(hù)體系。
需要指出的是, 目前針對(duì)智能設(shè)備安全威脅及防護(hù)技術(shù), 尚未有系統(tǒng)詳細(xì)的綜述研究。本文在前期工作的基礎(chǔ)上, 結(jié)合自身的認(rèn)識(shí)和理解, 旨在此領(lǐng)域進(jìn)行整體論述和分析, 為學(xué)術(shù)界和相關(guān)從業(yè)者提供一定的參考。
本文主要有如下兩部分的工作和貢獻(xiàn):
(1) 圍繞智能設(shè)備終端、云服務(wù)端和用戶控制終端三端架構(gòu), 綜述目前智能設(shè)備安全威脅的主要來(lái)源和技術(shù)攻擊手段, 并針對(duì)性地梳理已有防護(hù)技術(shù)和安全研究現(xiàn)狀。
(2) 針對(duì)現(xiàn)有IoT智能設(shè)備安全防護(hù)體系缺失和安全設(shè)計(jì)不足的問(wèn)題, 本文對(duì)IoT智能設(shè)備系統(tǒng)在安全防護(hù)全生命周期下的能力需求進(jìn)行了討論, 提出了系統(tǒng)防護(hù)模型設(shè)計(jì)思路。
本文的組織結(jié)構(gòu)如下: 第 2節(jié)描述智能設(shè)備相關(guān)背景; 第 3節(jié)詳細(xì)綜述智能設(shè)備安全威脅以及目前相應(yīng)的安全防護(hù)研究; 第 4節(jié)思考和討論全生命周期的IoT智能設(shè)備系統(tǒng)防護(hù)模型設(shè)計(jì)思路; 第5節(jié)總結(jié)全文。
IoT智能設(shè)備是在萬(wàn)物互聯(lián)時(shí)代產(chǎn)生的一類智能化硬件設(shè)備。大多通過(guò)軟硬件結(jié)合, 對(duì)傳統(tǒng)硬件設(shè)備進(jìn)行改造, 并加入聯(lián)網(wǎng)模組, 使得設(shè)備擁有聯(lián)網(wǎng)和交互的“智能化”功能。目前智能設(shè)備產(chǎn)品從應(yīng)用場(chǎng)景上劃分主要包括智能家居、智能交通、智能醫(yī)療類、智能網(wǎng)絡(luò)設(shè)備等。從使用方式上劃分還包括可穿戴設(shè)備和無(wú)人機(jī)設(shè)備等。在市場(chǎng)和產(chǎn)品最為活躍的智能家居領(lǐng)域, 傳統(tǒng)家居產(chǎn)品主要通過(guò)增強(qiáng)感知交互、控制和互聯(lián)網(wǎng)功能實(shí)現(xiàn)智能化, 在單品智能基礎(chǔ)上, 互聯(lián)網(wǎng)企業(yè)、家電企業(yè)通過(guò)智能家居平臺(tái)整合統(tǒng)一的接口、標(biāo)準(zhǔn)和協(xié)議, 實(shí)現(xiàn)智能家居產(chǎn)品的互聯(lián)互通。隨著連接的產(chǎn)品數(shù)量逐漸增多, 開(kāi)始出現(xiàn)專門(mén)用于智能控制的中樞產(chǎn)品, 如智能家居控制中心 SmartThings Hub[17]和 Google Home[18]能夠連接其他家居設(shè)備, 通過(guò)語(yǔ)音識(shí)別用戶指令, 實(shí)現(xiàn)對(duì)其他設(shè)備的控制。根據(jù)研究機(jī)構(gòu)Research and Markets發(fā)布的最新報(bào)告[19]預(yù)計(jì), 未來(lái)五年全球智能家居設(shè)備和服務(wù)市場(chǎng)將以每年 8%-10%的速度增長(zhǎng), 到2018年市場(chǎng)規(guī)模將達(dá)到680億美元。而在發(fā)展迅速的可穿戴設(shè)備領(lǐng)域, 根據(jù) IDC公布的預(yù)測(cè)數(shù)據(jù)[16],2015-2020年可穿戴設(shè)備出貨量在每一年中都實(shí)現(xiàn)兩位數(shù)增長(zhǎng), 到2020年出貨量將達(dá)2.371億。
通過(guò)對(duì)國(guó)內(nèi)外智能設(shè)備云平臺(tái), 如 Samsung SmartThings[20]、Apple HomeKit[21]、Google Weave/Brillo[22]、阿里智能[23]、騰訊物聯(lián)[24]平臺(tái)以及消費(fèi)類智能設(shè)備廠商云平臺(tái)的研究分析, 目前大部分智能設(shè)備采用了“智能設(shè)備終端”<—>“云服務(wù)端”<—>“用戶控制終端”的系統(tǒng)架構(gòu), 如下圖1所示。智能設(shè)備通過(guò)移動(dòng)蜂窩網(wǎng)絡(luò)、Wi-Fi、藍(lán)牙等方式直接或者間接地接入云服務(wù)端, 上傳數(shù)據(jù)以及執(zhí)行云服務(wù)端下發(fā)的指令。云服務(wù)端分為廠商私有云、PaaS(Platform as a Service, 平臺(tái)即服務(wù))云和公有云,適用于不同的業(yè)務(wù)場(chǎng)景和設(shè)備廠商需求。用戶控制終端(如手機(jī)、平板上的APP)通過(guò)云服務(wù)端對(duì)設(shè)備進(jìn)行激活綁定和遠(yuǎn)程控制。在這種架構(gòu)中, 用戶控制終端與智能設(shè)備之間通過(guò)云服務(wù)建立控制連接, 云服務(wù)端還提供用戶管理、智能設(shè)備生命周期管理, 數(shù)據(jù)統(tǒng)計(jì)等功能。
圖1 智能設(shè)備系統(tǒng)架構(gòu)Figure 1 Intelligent device system architecture
智能設(shè)備在大規(guī)模普及的同時(shí), 也給用戶資產(chǎn)與隱私保護(hù)帶來(lái)了極大沖擊。本章將著眼于IoT智能設(shè)備安全研究領(lǐng)域, 從智能設(shè)備終端、用戶控制終端和云服務(wù)端, 分別總結(jié)安全威脅的主要來(lái)源和技術(shù)攻擊手段, 以及相關(guān)防護(hù)技術(shù)研究現(xiàn)狀。此外, 本章還對(duì)國(guó)內(nèi)主流互聯(lián)網(wǎng)廠商和智能家電廠商提供云服務(wù)平臺(tái)進(jìn)行了詳細(xì)的調(diào)研, 出于安全和隱私的考慮,用字母表示廠商標(biāo)識(shí)。本節(jié)部分內(nèi)容基于四個(gè)有代表性的廠商平臺(tái)(分別標(biāo)記為廠商 A、廠商B、廠商C和廠商D)給出我們的安全分析。
本小節(jié)將針對(duì)智能設(shè)備終端, 歸納總結(jié)安全威脅的主要來(lái)源, 包括IoT嵌入式操作系統(tǒng)惡意代碼攻擊威脅、敏感數(shù)據(jù)泄露安全威脅、服務(wù)權(quán)限驗(yàn)證安全威脅和設(shè)備接入網(wǎng)絡(luò)協(xié)議安全威脅, 然后總結(jié)主要的防護(hù)技術(shù)研究, 包括終端系統(tǒng)加固防護(hù)技術(shù)、硬件脆弱性防護(hù)技術(shù)、硬件容錯(cuò)恢復(fù)技術(shù)和硬件端信息流異常檢測(cè)技術(shù)。
3.1.1 智能設(shè)備終端安全威脅
(1) IoT嵌入式操作系統(tǒng)惡意代碼攻擊威脅
在當(dāng)前 IoT智能設(shè)備終端操作系統(tǒng)中, 嵌入式Linux系統(tǒng)被廣泛使用。常見(jiàn)的智能設(shè)備如家電智能設(shè)備、網(wǎng)絡(luò)攝像頭、網(wǎng)絡(luò)路由器等都使用嵌入式Linux系統(tǒng)。這些系統(tǒng)具有安全防護(hù)措施少、裝載設(shè)備數(shù)量多、具有真實(shí) IP、24小時(shí)在線等特點(diǎn), 所以近些年來(lái)攻擊者常常把此類 IoT智能設(shè)備作為首選攻擊目標(biāo)。以嵌入式Linux系統(tǒng)為攻擊目標(biāo)的惡性代碼在 2008年第一次被報(bào)道[7], 早期的嵌入式 Linux惡性代碼使用MIPS對(duì)網(wǎng)絡(luò)路由器進(jìn)行感染攻擊。2012年發(fā)現(xiàn)的 Aidra蠕蟲(chóng)病毒[3]可以對(duì)除了使用MIPS的網(wǎng)絡(luò)路由器以外的其他機(jī)頂盒等多種嵌入式Linux系統(tǒng)環(huán)境進(jìn)行感染[7]。2016年10月發(fā)生了一起利用IoT智能設(shè)備發(fā)起的DDoS攻擊, 攻擊對(duì)象是為美國(guó)眾多公司提供域名解析服務(wù)的 Dyn公司, 攻擊導(dǎo)致大半個(gè)美國(guó)互聯(lián)網(wǎng)癱瘓[25]。受影響的站點(diǎn)包括 Twitter、Github、Spotify、Paypal、BBC、華爾街日?qǐng)?bào)、紐約日?qǐng)?bào)等大批知名網(wǎng)站[26]。根據(jù)安全人員的事后分析, 此次 DDoS攻擊事件來(lái)源于名為“Mirai”的惡意代碼, 攻擊目標(biāo)大部分為網(wǎng)絡(luò)路由器,智能相機(jī)等IoT智能設(shè)備, 攻擊涉及的IP數(shù)量達(dá)到千萬(wàn)量級(jí)[6]。整體來(lái)說(shuō), 自2008年發(fā)現(xiàn)IoT惡意代碼以來(lái), 對(duì)特定物聯(lián)網(wǎng)智能設(shè)備進(jìn)行感染的惡性代碼不斷進(jìn)行變種升級(jí), 主要嵌入式Linux惡意代碼時(shí)間軸[7]如下圖2所示。下文對(duì)其中五種代表性惡性代碼Aidra[3]、Darlloz[4]、Gafgyt[5]、Mirai[6]和 Pnscan[7]進(jìn)行介紹。
圖2 主要嵌入式Linux惡性代碼時(shí)間軸Figure 2 Time axis of main embedded Linux code
n Aidra 惡意代碼
早在 2013年, 互聯(lián)網(wǎng)人口普查項(xiàng)目結(jié)束后, 研究人員發(fā)現(xiàn)了至少40萬(wàn)種嵌入式設(shè)備由于廠商提供的默認(rèn)憑證而被利用, 匿名發(fā)布的報(bào)告中提到了一種針對(duì)IoT設(shè)備的惡意代碼Aidra[27]。不久, Aidra的僵尸網(wǎng)絡(luò)被重新規(guī)劃和設(shè)計(jì), 這些惡意代碼還借用了Torlus/Gayfgt的telnet掃描工具, 并整合60余個(gè)憑證, 當(dāng)時(shí)在5天之內(nèi)就感染了超過(guò)三千臺(tái)設(shè)備。這類惡性代碼不僅在 MIPS程序中傳播, 也在MIPSEL、PowerPC、SuperH等多種程序中傳播[28]。
n Darlloz惡意代碼
Darlloz惡性代碼在2013年10月被發(fā)現(xiàn), 其主要通過(guò)物聯(lián)網(wǎng)病毒蠕蟲(chóng)感染攻擊英特爾x86、MIPS、Arm、PowerPC等系統(tǒng)。不同于其他惡性代碼一般以DDoS的形式進(jìn)行攻擊, 此惡性代碼主要以挖掘類似比特幣等虛擬貨幣為主要攻擊目標(biāo)[7]。
n Gafgyt惡意代碼
Gafgyt于 2014年 8月第一次被發(fā)現(xiàn), 特別是2014年末在Lizard Squard(Xbox Live)與PlayStation Network的 DDoS攻擊發(fā)生后變得更加有名。2015年1月Gafgyt的源代碼被公開(kāi)[7], 目前Gafgyt也是存在最多變型的惡性代碼。2015年 3月, 國(guó)家計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)急技術(shù)處理協(xié)調(diào)中心對(duì) Gafgyt惡意代碼在我國(guó)境內(nèi)的感染情況進(jìn)行了監(jiān)測(cè)和分析。經(jīng)分析, 我國(guó)境內(nèi)互聯(lián)網(wǎng)上感染該惡意代碼的活躍被控IP地址中部分可確認(rèn)為視頻監(jiān)控類智能設(shè)備的聯(lián)網(wǎng) IP, 涉及包括??低曉趦?nèi)的至少 5家國(guó)內(nèi)知名視頻監(jiān)控類設(shè)備生產(chǎn)企業(yè)[29]。
n Mirai惡意代碼
Mirai于 2016年5月第一次被發(fā)現(xiàn), 在2016年10月初公開(kāi)了其源代碼以后, 使用此惡性代碼的變型越來(lái)越多。2016年9月黑客對(duì)某安全博客實(shí)施了大規(guī)模DDoS攻擊, 2016年10月對(duì)美國(guó)域名提供商Dyn進(jìn)行了DDoS攻擊, 隨后Mirai變得更加有名。Mirai惡性代碼具有 UDP Flood, Syn Flood, ACK Flood, GRE IP Flood等多種DDoS攻擊功能[30]。
Mirai主要的感染對(duì)象是物聯(lián)網(wǎng)設(shè)備, 包括網(wǎng)絡(luò)路由器、網(wǎng)絡(luò)攝像頭、數(shù)字視頻錄像設(shè)備。這些設(shè)備主要是 MIPS、ARM 等架構(gòu), 具有大規(guī)模批量生產(chǎn)、批量部署的特點(diǎn)。在很多應(yīng)用場(chǎng)景中, 由于集成商、運(yùn)維人員能力不足, 設(shè)備存在默認(rèn)密碼、弱密碼、嚴(yán)重漏洞未及時(shí)修復(fù)等不安全因素, 導(dǎo)致被攻擊者植入木馬。Mirai主要攻擊過(guò)程如下圖3所示, 針對(duì)物聯(lián)網(wǎng)設(shè)備DDoS入侵主要通過(guò)Telnet端口進(jìn)行密碼暴力破解, 或默認(rèn)密碼登錄, 如果登錄成功, 通過(guò)Telnet遠(yuǎn)程登錄成功后就嘗試?yán)胋usybox等嵌入式必備的工具進(jìn)行wget下載DDoS功能的bot, 修改可執(zhí)行屬性, 運(yùn)行控制物聯(lián)網(wǎng)設(shè)備。由于CPU指令架構(gòu)的不同, 在判斷了系統(tǒng)架構(gòu)后僵尸網(wǎng)絡(luò)可以選擇MIPS、ARM, x86等架構(gòu)的樣本進(jìn)行下載, 運(yùn)行后接收相關(guān)攻擊指令進(jìn)行攻擊[6]。
n Pnscan惡意代碼
Pnscan惡性代碼于2015年8月被俄羅斯安全公司Dr. Web發(fā)現(xiàn)。此惡性代碼如果將ARM、MIPS、PowerPC系統(tǒng)感染的話就會(huì)對(duì)CVE-2013-2678的漏洞進(jìn)行攻擊[31]。當(dāng)這些惡意程序滲透進(jìn)了被入侵的路由器之后, 它們會(huì)將自己添加進(jìn)設(shè)備的自動(dòng)運(yùn)行列表并在注冊(cè)表中進(jìn)行注冊(cè)。完成之后, 它們就可以通過(guò)IRC來(lái)控制列表中的服務(wù)器地址并與服務(wù)器建立連接。這些后門(mén)程序的功能非常的多, 它們可以發(fā)動(dòng)各種 DDoS攻擊, 還可以執(zhí)行入侵者所發(fā)送的相關(guān)命令。根據(jù) Dr.Web公司發(fā)現(xiàn)時(shí)的數(shù)據(jù), 已經(jīng)有1439種設(shè)備感染了上述惡意程序, 從受感染設(shè)備的地理位置分布情況看, 絕大多數(shù)的設(shè)備感染發(fā)生在日本, 還有大量的攻擊發(fā)生在德國(guó), 美國(guó)以及中國(guó)臺(tái)灣等地區(qū)[32]。
(2) 智能設(shè)備敏感數(shù)據(jù)泄露安全威脅
信息安全中有一項(xiàng)原則叫“代碼數(shù)據(jù)分離原則”,即為了數(shù)據(jù)安全, 要將系統(tǒng)運(yùn)行代碼和系統(tǒng)中敏感數(shù)據(jù)的存儲(chǔ)位置隔離。一些缺乏安全意識(shí)的智能設(shè)備廠商把很多敏感數(shù)據(jù)(如用戶密碼, 加密 key)固化在系統(tǒng)程序所在固件中, 一旦固件被逆向分析, 敏感數(shù)據(jù)將全部被暴力竊取, 造成數(shù)據(jù)泄露和加密方式泄露[33]。2011年的CVE-2011-4859披露了施耐德公司 PLC 以太網(wǎng)模塊固件后門(mén), 漏洞顯示該設(shè)備遠(yuǎn)程ftp登錄的用戶名和密碼竟然直接固化在設(shè)備軟件代碼中, 攻擊者可以無(wú)任何混淆地進(jìn)行讀取并對(duì)設(shè)備進(jìn)行控制[34]。
此外, 在固件內(nèi)存溢出和命令執(zhí)行方面, 由于flash的大小限制或是固件代碼多樣性, 開(kāi)發(fā)者對(duì)安全的忽視特別明顯, 如 D-LinkDSP-W215的溢出漏洞[35], 沒(méi)有檢測(cè)輸入字符長(zhǎng)度過(guò)長(zhǎng)從而造成溢出,以至攻擊者利用溢出攻擊獲取設(shè)備端敏感數(shù)據(jù), 甚至獲取設(shè)備控制權(quán), 造成更大的危害。
(3) 智能設(shè)備服務(wù)權(quán)限驗(yàn)證安全威脅
在智能設(shè)備服務(wù)權(quán)限驗(yàn)證方面, 存在的問(wèn)題主要有三個(gè)方面, 一是嵌入式系統(tǒng)開(kāi)放調(diào)試接口的安全隱患, 二是設(shè)備固件升級(jí)的安全威脅, 三是控制指令重放攻擊對(duì)設(shè)備造成的危害。三者均是由設(shè)備未對(duì)被控制的服務(wù)權(quán)限進(jìn)行驗(yàn)證導(dǎo)致。
圖3 Mirai攻擊過(guò)程示意圖Figure 3 Schematic diagram of the Mirai attack process
很多嵌入式系統(tǒng)開(kāi)放調(diào)試接口, 在開(kāi)發(fā)者移植現(xiàn)有物聯(lián)網(wǎng)系統(tǒng)并進(jìn)行二次開(kāi)發(fā)時(shí), 由于對(duì)物聯(lián)網(wǎng)系統(tǒng)的不了解, 未關(guān)閉物聯(lián)網(wǎng)系統(tǒng)很多自帶的默認(rèn)功能從而導(dǎo)致安全隱患。如ftp、telnet等服務(wù)弱身份驗(yàn)證, 開(kāi)啟telnet、tftp等服務(wù)默認(rèn)口令等。
此外, 在固件升級(jí)方面, 很多固件升級(jí)沒(méi)有驗(yàn)證環(huán)節(jié), 若黑客刷入惡意固件修改設(shè)備軟件代碼,就可以控制設(shè)備并對(duì)設(shè)備進(jìn)行非法操作。早在 2013年, 國(guó)外安全公司 IOActive就曾對(duì)某款驗(yàn)鈔機(jī)進(jìn)行研究, 發(fā)現(xiàn)其在固件更新時(shí)未作簽名校驗(yàn), 導(dǎo)致可刷入被惡意篡改的固件, 研究人員通過(guò)刷入經(jīng)篡改的固件, 使得一張手寫(xiě)假鈔被驗(yàn)鈔機(jī)識(shí)別為真鈔[36]。
在控制指令重放攻擊方面, 由于智能設(shè)備對(duì)服務(wù)端的驗(yàn)證普遍較弱, 多數(shù)情況下無(wú)條件地執(zhí)行服務(wù)端下發(fā)的指令。如果黑客竊取控制指令進(jìn)行重放,就會(huì)造成設(shè)備不正常工作, 嚴(yán)重情況下影響用戶財(cái)產(chǎn)和生命安全, 如一些涉及人體健康的生物醫(yī)學(xué)智能設(shè)備, 特別是心臟起搏器、胰島素泵等醫(yī)療設(shè)備,倘若出現(xiàn)安全漏洞, 可能就是直接危害生命的問(wèn)題。
(4) 智能設(shè)備接入網(wǎng)絡(luò)協(xié)議安全威脅
智能設(shè)備通過(guò)接入?yún)f(xié)議接入到互聯(lián)網(wǎng)中從而連接到云服務(wù)端。目前主要采用的接入?yún)f(xié)議有Wi-Fi、藍(lán)牙和 ZigBee等, 接入?yún)f(xié)議層面的設(shè)計(jì)缺陷和安全漏洞也是智能設(shè)備安全威脅重要來(lái)源。
Wi-Fi接入傳輸?shù)男畔⒋蠖酁槊魑臄?shù)據(jù)包, 如配網(wǎng)信息、智能設(shè)備和用戶控制終端內(nèi)網(wǎng)交互數(shù)據(jù)包以及智能設(shè)備與服務(wù)器直接交互TCP包。以配網(wǎng)信息為例, 如 Easylink[37]協(xié)議采用組播的方式傳播路由器配網(wǎng)信息, 包括 SSID和配網(wǎng)密碼, 容易被竊聽(tīng)攻擊, 使得攻擊者連入局域網(wǎng)甚至進(jìn)入家庭內(nèi)部網(wǎng)絡(luò), 并以此作為攻擊跳板, 攻擊家庭局域網(wǎng)內(nèi)其他設(shè)備。我們分析廠商A空氣質(zhì)量監(jiān)測(cè)設(shè)備, 發(fā)現(xiàn)在其設(shè)備配網(wǎng)環(huán)節(jié), 使用 EasyLink協(xié)議組播存在熱點(diǎn)信息泄露的安全威脅, 具體如下圖4所示, 攻擊者可以獲取到當(dāng)前局域網(wǎng)路由器的SSID和接入密碼。
圖4 Wi-Fi局域網(wǎng)Easylink熱點(diǎn)信息泄露Figure 4 Wi-Fi LAN Easylink hotspot information leak
藍(lán)牙這類接入?yún)f(xié)議, 主要應(yīng)用于可穿戴設(shè)備,車聯(lián)網(wǎng)等近用戶距離設(shè)備, 與用戶隱私關(guān)系很密切,安全問(wèn)題的出現(xiàn)也會(huì)造成比較嚴(yán)重的后果。2014年,有安全研究團(tuán)隊(duì)就發(fā)現(xiàn)某款車聯(lián)網(wǎng)產(chǎn)品存在漏洞(如圖 5所示), 攻擊者可以遠(yuǎn)程破解藍(lán)牙密碼, 并實(shí)時(shí)獲取汽車數(shù)據(jù)[36], 比如車速、溫度等等, 如果設(shè)備硬件進(jìn)一步支持寫(xiě) OBD接口(車載診斷系統(tǒng)接口), 攻擊者還可能遠(yuǎn)程控制汽車。
圖5 某安全團(tuán)隊(duì)遠(yuǎn)程破解車聯(lián)網(wǎng)設(shè)備Figure 5 Remotely cracking car networking equipment
ZigBee是一種短距離、低功耗的無(wú)線通信技術(shù),最大傳輸速率為250 Kbps, 普遍傳輸范圍在10~100米[38]。目前已有一些智能家居系統(tǒng)使用到ZigBee協(xié)議, 被應(yīng)用于門(mén)窗、家電、安防等用途。2015年初, 小米發(fā)布基于 ZigBee協(xié)議的智能家庭套裝, 使得基于ZigBee協(xié)議通訊的智能家居產(chǎn)品又映入人們的眼簾。某安全研究團(tuán)隊(duì)對(duì)ZigBee協(xié)議安全性進(jìn)行研究[36], 發(fā)現(xiàn)其主要風(fēng)險(xiǎn)主要在密鑰的保密性上, 比如明文傳輸密鑰, 或者將密鑰明文寫(xiě)在固件中, 這些都可能直接導(dǎo)致傳輸?shù)拿舾行畔⒈桓`取, 甚至偽造設(shè)備去控制智能家居產(chǎn)品。
3.1.2 智能設(shè)備終端安全防護(hù)技術(shù)
(1) 智能設(shè)備終端系統(tǒng)加固防護(hù)技術(shù)
目前智能硬件防護(hù)模型的構(gòu)建方案靈感來(lái)源于TrustZone[12]的技術(shù)思想, 通過(guò)對(duì)智能硬件內(nèi)部電路進(jìn)行修改, 建立可信執(zhí)行環(huán)境(Trusted Execution Environment, TEE)實(shí)現(xiàn)一種對(duì)敏感數(shù)據(jù)以及方法進(jìn)行單點(diǎn)隔離的系統(tǒng)結(jié)構(gòu)。如Job Noorman等人[39]基于對(duì)MCU硬件以及編譯器進(jìn)行的修改提出Sancus方案, 使系統(tǒng)支持為每一個(gè)軟件劃分安全隔離區(qū)域,僅隔離區(qū)域內(nèi)的數(shù)據(jù)可以互相訪問(wèn)。方案如圖 6左側(cè)所示, 內(nèi)存中受到保護(hù)的模塊包含代碼常量以及保護(hù)數(shù)據(jù)兩部分, 這兩部分的起始以及終止地址將存儲(chǔ)于受保護(hù)存儲(chǔ)區(qū)中。MCU通過(guò)檢查程序計(jì)數(shù)器PC和模塊的地址確認(rèn)訪問(wèn)保護(hù)數(shù)據(jù)的請(qǐng)求是否來(lái)自于本模塊的代碼, 若確定為本模塊代碼則可以正常訪問(wèn), 否則將拋出異常。在這一工作的基礎(chǔ)上, 文獻(xiàn)[40]利用 Sancus提供的硬件能力, 把可信認(rèn)證模塊(Trust Assessment Module, TAM)安全植入Contiki操作系統(tǒng)中, 檢測(cè)系統(tǒng)軟件棧其他模塊的完整性。同時(shí),根據(jù)設(shè)施提供者以及軟件提供者信息設(shè)計(jì)部署協(xié)議建立會(huì)話密鑰KN,SP,SM, 與軟件提供者進(jìn)行可信通信,如圖6右側(cè)所示, 部署協(xié)議分為以下幾個(gè)步驟: 1)設(shè)施提供者與設(shè)備共享密鑰KN; 2)設(shè)施提供者根據(jù)軟件提供者代號(hào)生成KN,SP并與軟件提供者共享; 3)軟件提供者向設(shè)備部署TAM模塊; 4)設(shè)備內(nèi)部利用KN與TAM中SP信息生成KN,SP; 5)根據(jù)TAM在系統(tǒng)內(nèi)部的布局信息, 計(jì)算SM并生成KN,SP,SM; 6)設(shè)備把TAM在系統(tǒng)內(nèi)部的布局信息發(fā)送給軟件提供者并使其生成KN,SP,SM; 7)此時(shí), TAM可以與軟件提供者進(jìn)行可信會(huì)話, 獲取設(shè)備內(nèi)部軟件棧完整性報(bào)告。
圖6 Sancus以及其衍生方案Figure 6 Sancus and its derivatives
Patrick Koeberl[13]等人針對(duì)MPU僅支持為代碼劃定特權(quán)級(jí)進(jìn)行安全防護(hù)的局限, 對(duì)其硬件電路進(jìn)行了改造, 使MPU支持CPU輸入指令地址和數(shù)據(jù)地址, 通過(guò)程序寄存器PC建立起兩者的關(guān)系, 使MPU擁有細(xì)粒度的代碼執(zhí)行可認(rèn)知(Execution-aware, EA)能力, 形成基于EA-MPU的TrustLite方案。方案將判斷當(dāng)前代碼的地址(Curr_IP, 主體)是否擁有訪問(wèn)待訪問(wèn)數(shù)據(jù)(Data, 客體)所在地址的權(quán)限(讀/寫(xiě)/執(zhí)行), 進(jìn)而決定是否可以訪問(wèn)數(shù)據(jù)映射的計(jì)算資源。這種方式為系統(tǒng)中預(yù)設(shè)的所有軟件模塊提供了安全的隔離環(huán)境, 使每一個(gè)軟件模塊處于受保護(hù)的狀態(tài),保護(hù)內(nèi)存以及外設(shè)資源不受到非法訪問(wèn), 若為非法訪問(wèn), 則系統(tǒng)拋出內(nèi)存錯(cuò)誤異常, 如圖7左側(cè)所示。而文獻(xiàn)[14]基于 TrustLite技術(shù)提出了一種針對(duì) IoT設(shè)備的安全架構(gòu)TyTAN, 為遠(yuǎn)程認(rèn)證、安全存儲(chǔ)、進(jìn)程通信代理模塊、完整性檢測(cè)模塊等提供了隔離環(huán)境, 為系統(tǒng)建立信任根, 并與處于特權(quán)級(jí)的實(shí)時(shí)操作系統(tǒng)相分離, 操作系統(tǒng)在無(wú)授權(quán)情況下也無(wú)法對(duì)信任根進(jìn)行訪問(wèn), 如圖7右側(cè)所示。與此同時(shí), 該架構(gòu)彌補(bǔ)了TrustLite方案需要預(yù)先為模塊配置安全屬性的不足, 基于 FreeRTOS環(huán)境實(shí)現(xiàn)了安全任務(wù)的動(dòng)態(tài)加載, 可以根據(jù)需要隨時(shí)建立安全任務(wù)。方案對(duì) FreeRTOS系統(tǒng)的安全能力進(jìn)行了擴(kuò)展并為系統(tǒng)內(nèi)運(yùn)行的重要任務(wù)提供強(qiáng)隔離環(huán)境以及實(shí)時(shí)安全防護(hù)。
圖7 TrustLite以及TyTAN方案Figure 7 TrustLite and TyTAN scheme
除此之外, Karim ElDefrawy[15]等人通過(guò)改進(jìn)MCU, 在Flash和SRAM空間插入只讀的安全代碼SMART, 外部程序無(wú)法對(duì)其進(jìn)行修改。在該方案中系統(tǒng)可以利用遠(yuǎn)程認(rèn)證的方式觸發(fā) SMART驗(yàn)證系統(tǒng)內(nèi)任務(wù)完整性, 建立動(dòng)態(tài)信任根。不僅在學(xué)術(shù)界,產(chǎn)業(yè)界也積極推進(jìn)弱計(jì)算能力設(shè)備的安全方案, 如日前ARM公司推出了一種專門(mén)針對(duì)IoT智能硬件設(shè)計(jì)的可信環(huán)境擴(kuò)展方案 TrustZone-M[41], 該方案在保證軟硬件低消耗的同時(shí)還可以提供較好的安全性,利用安全屬性單元(Secure Attribute Unit, SAU)在不額外增加特權(quán)級(jí)的情況下劃分安全域與非安全域,為敏感任務(wù)提供安全的執(zhí)行環(huán)境。產(chǎn)業(yè)界和學(xué)術(shù)界都在積極推動(dòng)基于硬件的弱設(shè)備安全隔離環(huán)境的發(fā)展, 可見(jiàn)該技術(shù)模式將是未來(lái)的發(fā)展趨勢(shì)。
(2) 智能設(shè)備硬件脆弱性防護(hù)技術(shù)
隨著PC和智能手機(jī)時(shí)代安全技術(shù)的發(fā)展, 遠(yuǎn)程完整性認(rèn)證技術(shù)已成為脆弱性防護(hù)的主流方案。該技術(shù)通過(guò)設(shè)備搜集軟件完整性報(bào)告, 利用認(rèn)證協(xié)議發(fā)送給可信驗(yàn)證方, 證明設(shè)備處于可信狀態(tài), 保證智能硬件的正確運(yùn)行。遠(yuǎn)程完整性認(rèn)證技術(shù)主要包含認(rèn)證協(xié)議和完整性報(bào)告搜集兩部分。在認(rèn)證協(xié)議研究方面, 文獻(xiàn)[42-44]提出挑戰(zhàn)響應(yīng)式的認(rèn)證協(xié)議,通過(guò)設(shè)備與驗(yàn)證者多次數(shù)據(jù)交互完成密鑰的協(xié)商與完整性報(bào)告的上傳, 實(shí)現(xiàn)對(duì)設(shè)備的校驗(yàn)。然而目前智能設(shè)備逐漸向規(guī)?;厔?shì)發(fā)展, 現(xiàn)有集中式認(rèn)證協(xié)議一對(duì)一的認(rèn)證模式難以同時(shí)支撐大規(guī)模設(shè)備。學(xué)術(shù)界已有利用分布式思想設(shè)計(jì)群體認(rèn)證協(xié)議的研究,如 H.Park 等[43]利用多個(gè)設(shè)備報(bào)告相互比較的方式,確定異常設(shè)備; N.Asokan等[40]為設(shè)備群體設(shè)計(jì)逐跳(hop by hop)方式的驗(yàn)證方案, 傳遞驗(yàn)證信息到匯聚節(jié)點(diǎn)進(jìn)行整體驗(yàn)證, 但是該方案僅可以驗(yàn)證整個(gè)設(shè)備群體完整性, 不能準(zhǔn)確定位異常設(shè)備。從理論研究階段來(lái)看, 針對(duì)智能設(shè)備認(rèn)證協(xié)議研究工作剛剛起步,亟待豐富完善。在完整性報(bào)告搜集方面, 文獻(xiàn)[45-47]提出基于可信軟件棧實(shí)現(xiàn)報(bào)告搜集的方案, 這些方案需要較強(qiáng)安全假設(shè), 要求在執(zhí)行過(guò)程中攻擊者不能對(duì)設(shè)備發(fā)起攻擊[44], 限制較大。文獻(xiàn)[48-50]基于安全硬件模塊, 提出安全性更高的方案。但這些方案較為復(fù)雜, 成本較高, 無(wú)法直接在IoT智能硬件平臺(tái)部署。因此, 設(shè)計(jì)基于低成本安全硬件模塊的完整性報(bào)告采集方案, 將是今后智能硬件認(rèn)證技術(shù)發(fā)展的重要趨勢(shì)。
軟件同構(gòu)化海量部署是 IoT智能硬件面臨的另一個(gè)重要脆弱性威脅。同類型智能硬件部署的系統(tǒng)往往擁有相同的內(nèi)存布局, 同構(gòu)化嚴(yán)重, 攻擊者可以利用這一特點(diǎn), 將單個(gè)硬件的攻擊方案復(fù)制到全部同構(gòu)化硬件, 在短時(shí)間內(nèi)造成大范圍安全事件?,F(xiàn)有終端計(jì)算平臺(tái)解決軟件同構(gòu)化問(wèn)題的主要思路是通過(guò)對(duì)物理內(nèi)存與虛擬內(nèi)存的多樣化映射, 減小大批量同質(zhì)化設(shè)備同時(shí)遭到破壞的威脅。如S.Forrest[51]于1994年首次提出建立多樣化計(jì)算機(jī)運(yùn)行環(huán)境的理念, 其通過(guò)修改Gcc編譯器, 為局部變量分配了隨機(jī)大小的冗余空間, 從而對(duì)棧空間進(jìn)行了一定程度的隨機(jī)化。Elena Gabriela[52]提出了指令隨機(jī)化概念模型 RISE, 即程序被映射到虛擬地址空間, 對(duì)其二進(jìn)制指令代碼進(jìn)行加密存儲(chǔ), 在執(zhí)行時(shí)動(dòng)態(tài)解密調(diào)用。Monica 等[53]針對(duì)惡意攻擊中往往需要調(diào)用exec等系統(tǒng)調(diào)用來(lái)完成的特點(diǎn), 對(duì)系統(tǒng)調(diào)用地址進(jìn)行隨機(jī)化處理, 阻止攻擊者通過(guò)硬編碼方式定位到相關(guān)的系統(tǒng)調(diào)用。除上述研究外, 科研界和產(chǎn)業(yè)界的研究重點(diǎn)主要集中在內(nèi)存地址隨機(jī)化技術(shù)(ASLR)[54-57], 該技術(shù)通過(guò)對(duì)庫(kù)函數(shù)入口、棧、堆的位置進(jìn)行隨機(jī)化使得攻擊者難以定位這些資源, 造成攻擊失敗。然而上述隨機(jī)化技術(shù)對(duì)數(shù)據(jù)的多樣化操作均需要借助于虛擬內(nèi)存技術(shù), IoT智能硬件的硬件能力受限, 缺乏硬件輔助如內(nèi)存管理單元MMU的支持, 無(wú)法進(jìn)行內(nèi)存的虛擬化, 而軟件系統(tǒng)架構(gòu)的多樣性使得這些針對(duì)操作系統(tǒng)架構(gòu)特性進(jìn)行數(shù)據(jù)隨機(jī)化的方案缺乏移植性, 現(xiàn)有隨機(jī)化方案很難在智能硬件上直接使用。
(3) 智能設(shè)備硬件容錯(cuò)恢復(fù)技術(shù)
目前在PC機(jī)和智能手機(jī)上進(jìn)行系統(tǒng)容錯(cuò)恢復(fù)的主要實(shí)現(xiàn)方案是通過(guò)對(duì)受損模塊進(jìn)行還原操作, 如Trivedi[58]等利用重啟的方法解決了軟件系統(tǒng)中很多已知或未知的異常, UCBerkeley和Stanford大學(xué)合作的面向恢復(fù)計(jì)算[59]以及遞歸重啟技術(shù)[60], 其他的相關(guān)技術(shù)還有N版編程(N-Version Programming)[61]、恢復(fù)塊(Recovery Block)[62]、檢查點(diǎn)與還原技術(shù)(Check pointing and Recovery Technology)[63]、復(fù)制(Replication)[64]技術(shù)等。針對(duì)IoT智能硬件系統(tǒng)恢復(fù)技術(shù)的研究才剛剛展開(kāi), 如文獻(xiàn)[65-67]利用空中下載 OTA技術(shù), 為智能硬件重寫(xiě)固件, 可間接起到系統(tǒng)的功能修復(fù)作用。但這些工作不考慮OTA過(guò)程安全性, 不能根據(jù)硬件受損情況靈活配置策略。
強(qiáng)計(jì)算能力平臺(tái)通常將可靠性和完整性放在首位, 設(shè)備可以利用更多的計(jì)算資源和安全元素對(duì)受損模塊進(jìn)行監(jiān)控和對(duì)應(yīng)處理, 如 N-版編程需要在系統(tǒng)中留有軟件模塊的多個(gè)拷貝, 在執(zhí)行某一個(gè)指令時(shí)所有的拷貝任務(wù)都要執(zhí)行, 不斷比較結(jié)果, 對(duì)得出不同結(jié)果的模塊拷貝進(jìn)行覆寫(xiě)或重啟, 此方式將嚴(yán)重消耗設(shè)備的軟硬件資源。而IoT智能硬件把系統(tǒng)的可用性放在首位[68], 當(dāng)系統(tǒng)出現(xiàn)安全威脅時(shí), 首先應(yīng)保證硬件的運(yùn)行, 其次才會(huì)投入有限的計(jì)算資源對(duì)受損模塊進(jìn)行處置。IoT智能硬件計(jì)算環(huán)境無(wú)法適配強(qiáng)計(jì)算能力平臺(tái)下的恢復(fù)技術(shù), 需要以可用性保障為目標(biāo)設(shè)計(jì)相應(yīng)的智能硬件受損恢復(fù)方案。
(4) 智能設(shè)備硬件端信息流異常檢測(cè)技術(shù)
信息流在硬件端表征為數(shù)據(jù)流和控制流。遠(yuǎn)程控制指令以數(shù)據(jù)流的形式進(jìn)入智能硬件, 被系統(tǒng)解析后, 將指導(dǎo)程序選擇不同的分支進(jìn)行執(zhí)行, 進(jìn)而形成控制流。針對(duì)系統(tǒng)態(tài)信息流的惡意攻擊將導(dǎo)致指令越界, 敏感數(shù)據(jù)泄露, 緩沖區(qū)溢出等危害。
在針對(duì)系統(tǒng)態(tài)數(shù)據(jù)流的安全監(jiān)測(cè)中, 國(guó)內(nèi)外的研究主要通過(guò)對(duì)系統(tǒng)數(shù)據(jù)處理架構(gòu)進(jìn)行修改的方式進(jìn)行數(shù)據(jù)追蹤, 如 William Enck[69]提出了一種利用安卓架構(gòu)實(shí)現(xiàn)對(duì)重要數(shù)據(jù)進(jìn)行實(shí)時(shí)追蹤的架構(gòu)TaintDroid, 而文獻(xiàn)[70-72]將程序輸入標(biāo)記為污點(diǎn)源,通過(guò)監(jiān)控程序動(dòng)態(tài)執(zhí)行過(guò)程, 在污點(diǎn)數(shù)據(jù)被異常使用時(shí)產(chǎn)生警告。然而, 這些方案僅適用于強(qiáng)計(jì)算能力嵌入式系統(tǒng)(如安卓, Linux), IoT智能設(shè)備的軟硬件環(huán)境無(wú)法支撐其復(fù)雜實(shí)現(xiàn)邏輯, 且僅針對(duì)數(shù)據(jù)流進(jìn)行監(jiān)控的方案, 無(wú)法掌握系統(tǒng)內(nèi)程序的運(yùn)行狀態(tài),無(wú)法檢測(cè)對(duì)控制流的攻擊。
在針對(duì)系統(tǒng)態(tài)控制流的安全監(jiān)測(cè)中, 學(xué)術(shù)界也已經(jīng)進(jìn)行了一些工作, 如文獻(xiàn)[73]介紹了一種針對(duì)IoT智能設(shè)備控制流進(jìn)行完整性檢驗(yàn)的方案C-FLAT。如圖8所示, 驗(yàn)證者首先對(duì)模塊A中控制流路徑進(jìn)行靜態(tài)分析, 獲取所有執(zhí)行路徑的度量值,之后向設(shè)備發(fā)送挑戰(zhàn)值, 測(cè)試設(shè)備在執(zhí)行相同控制流路徑所得出的度量值是否相同。設(shè)備端在收到驗(yàn)證指令后, 經(jīng)利用收集代理動(dòng)態(tài)收集控制流信息,在安全域度量引擎內(nèi)部形成控制流報(bào)告, 通過(guò)遠(yuǎn)程驗(yàn)證控制流報(bào)告正確性以保證系統(tǒng)按照約定的方式執(zhí)行。Abadi等[74]在CFG中構(gòu)造控制流轉(zhuǎn)移的合法目標(biāo)地址集合, 在實(shí)際運(yùn)行時(shí)校驗(yàn)轉(zhuǎn)移目標(biāo)是否越界, 實(shí)現(xiàn)對(duì)控制流完整性的監(jiān)控。
然而, 上述工作僅針對(duì)于控制流的完整性, 無(wú)法對(duì)數(shù)據(jù)攻擊進(jìn)行防御, 有研究者通過(guò)構(gòu)造特異代碼片段, 將輸出函數(shù)(如:send方法)的參數(shù)指向敏感數(shù)據(jù)(如: 存儲(chǔ)密鑰的結(jié)構(gòu)體), 造成數(shù)據(jù)泄露[75]。目前的研究方案仍從數(shù)據(jù)流或控制流單一角度對(duì)遠(yuǎn)程控制指令進(jìn)行追蹤分析, 無(wú)法同時(shí)對(duì)數(shù)據(jù)流與控制流的變化進(jìn)行綜合分析, 當(dāng)數(shù)據(jù)流和控制流同時(shí)受到攻擊時(shí), 系統(tǒng)安全將無(wú)法得到保證。
圖8 C-flat方案Figure 8 C-flat scheme
本節(jié)從用戶控制終端出發(fā), 將從終端代碼安全、終端對(duì)設(shè)備操作安全威脅和終端權(quán)限管理三個(gè)方面論述安全威脅和保護(hù)。此外, 本小節(jié)在全面調(diào)研和梳理的基礎(chǔ)上, 對(duì)四個(gè)主流智能設(shè)備平臺(tái)廠商系統(tǒng)進(jìn)行分析, 其結(jié)果如右表1所示。
3.2.1 用戶控制終端代碼安全威脅和保護(hù)
目前, 智能設(shè)備用戶控制終端以 APP為主, 通過(guò) APP完成用戶登錄, 設(shè)備控制等操作。由于用戶控制終端涉及設(shè)備控制和云端接入, 其代碼安全性需要得到特別的保護(hù)。隨著智能移動(dòng)終端設(shè)備的快速普及, 移動(dòng)互聯(lián)網(wǎng)應(yīng)用呈井噴式爆發(fā), 每日新開(kāi)發(fā)的各類互聯(lián)網(wǎng)應(yīng)用, 都在以幾何級(jí)數(shù)量遞增。在開(kāi)發(fā)者辛辛苦苦開(kāi)發(fā)時(shí), 一些不勞而獲者瞄準(zhǔn)這個(gè)潛力巨大的市場(chǎng), 各類非法利益團(tuán)體對(duì)APP進(jìn)行破解、篡改、二次打包, 嚴(yán)重?fù)p害了開(kāi)發(fā)者和設(shè)備廠商的利益, 給設(shè)備用戶帶來(lái)巨大安全風(fēng)險(xiǎn)。
通過(guò)我們研究發(fā)現(xiàn), 目前市面上相當(dāng)一部分智能設(shè)備廠商, 其用戶控制終端APP的安全隱患嚴(yán)重,流行的反編譯工具, 如 apktool[76]、dex2jar[77]等, 都能反編譯得到用戶控制終端APP大部分源代碼。更有甚者, 攻擊者通過(guò)破解代碼分析, 二次打包將 APP調(diào)試接口打開(kāi), 能獲取幾乎智能設(shè)備所有控制邏輯和數(shù)據(jù)信息。上述代碼保護(hù)的缺乏將造成業(yè)務(wù)協(xié)議泄露、數(shù)據(jù)傳輸加密算法破解、數(shù)據(jù)重放、身份偽造等危害。在我們對(duì)智能設(shè)備廠商用戶控制終端APP調(diào)研情況來(lái)看, 如表1所示, 廠商A和B存在此類安全威脅且問(wèn)題較大, 廠商 C也存在此類威脅但是有一定的安全手段對(duì)抗反編譯。與此同時(shí), 廠商D代碼保護(hù)措施相對(duì)較好, 其關(guān)鍵代碼寫(xiě)在了SO庫(kù)中, 并給代碼復(fù)雜的混淆保護(hù), 給逆向破解者提高了破解難度, 使得攻擊者利用普通的反編譯技術(shù)無(wú)法得到大部分核心代碼。
表1 四個(gè)代表性廠商平臺(tái)安全分析Table 1 Security analysis of four representative vendors
3.2.2 用戶控制終端對(duì)設(shè)備操作安全威脅和防護(hù)
用戶控制終端在使用過(guò)程中, 會(huì)對(duì)設(shè)備發(fā)起一系列的操作, 主要包含綁定、控制和授權(quán)等。這些環(huán)節(jié)的權(quán)限管理至關(guān)重要, 沒(méi)有或缺乏相應(yīng)的安全機(jī)制將使得設(shè)備被惡意控制, 從而造成極大的安全威脅。下面基于本文分析的四個(gè)代表性廠商產(chǎn)品, 論述用戶控制終端對(duì)設(shè)備操作的安全威脅和防護(hù)。
(1) 設(shè)備綁定操作權(quán)限管理安全威脅和防護(hù)
正常情況下, 用戶在綁定的過(guò)程中, 用戶控制終端(如APP)與設(shè)備要處于同一個(gè)局域網(wǎng)下, 用戶控制終端與服務(wù)器、用戶控制終端與智能設(shè)備、智能設(shè)備與服務(wù)器都會(huì)分別進(jìn)行通信。但是通過(guò)對(duì)用戶控制終端綁定智能設(shè)備這一環(huán)節(jié)的實(shí)驗(yàn)發(fā)現(xiàn), 用戶控制終端與智能設(shè)備的通信僅僅起到寫(xiě)入或獲取設(shè)備唯一性標(biāo)識(shí)的作用, 智能設(shè)備與云服務(wù)端通信是為了建立長(zhǎng)連接, 真正起作用只有用戶控制終端與云服務(wù)端的通信, 綁定過(guò)程即使沒(méi)有智能設(shè)備參與也可以完成。換言之, 如果攻擊者想要進(jìn)行惡意綁定,只要構(gòu)造了正確的請(qǐng)求數(shù)據(jù)包, 偽造用戶控制終端與云服務(wù)端通信的綁定請(qǐng)求過(guò)程, 即使智能設(shè)備并不在身邊也可以實(shí)現(xiàn)綁定。如表1所示, 目前分析的四個(gè)智能設(shè)備平臺(tái)在這方面都沒(méi)有做處理。即使如廠商C和廠商D做了授權(quán)管理控制, 能夠防止攻擊者把已經(jīng)綁定的設(shè)備“搶”過(guò)來(lái), 但并不能防止攻擊者綁定未被綁定過(guò)的設(shè)備。大部分設(shè)備的唯一性標(biāo)識(shí)可遍歷得到, 就可以實(shí)現(xiàn)批量綁定。這樣當(dāng)用戶買(mǎi)來(lái)一臺(tái)新設(shè)備, 也許會(huì)發(fā)現(xiàn)自己的設(shè)備已經(jīng)被綁定,然而自己并沒(méi)有權(quán)限綁定和控制它。如下圖 9所示是我們對(duì)廠商 B某款智能設(shè)備進(jìn)行的攻擊測(cè)試, 攻擊者可以順利的強(qiáng)綁定多個(gè)未經(jīng)授權(quán)的設(shè)備(圖右側(cè)為搶綁定成功后的列表)。
(2) 設(shè)備控制操作權(quán)限管理威脅和防護(hù)
權(quán)限管理屬于安全性保證中最基本的一部分。但是通過(guò)分析發(fā)現(xiàn)某家電廠商A在權(quán)限管理上沒(méi)有做任何處理, 即只要在設(shè)備唯一性標(biāo)識(shí)處填寫(xiě)設(shè)備的MAC地址, 構(gòu)造正確的請(qǐng)求數(shù)據(jù)包, 任何人都可以控制此MAC地址對(duì)應(yīng)的設(shè)備。相較之下, 其他廠商在權(quán)限管理上就做了一定處理。即只有綁定了此設(shè)備的用戶才有資格對(duì)此設(shè)備進(jìn)行控制操作。此外,我們還發(fā)現(xiàn)廠商 A在云端存在開(kāi)放接口, 可通過(guò)此接口查看其他用戶的設(shè)備信息, 甚至掃描附近設(shè)備信息, 這就給攻擊者留下了很大的想象空間。
圖9 某廠商智能設(shè)備搶綁定攻擊測(cè)試Figure 9 Intelligent equipment robbing test
(3) 設(shè)備授權(quán)操作權(quán)限管理安全威脅和防護(hù)
在分析廠商云平臺(tái)時(shí), 我們發(fā)現(xiàn)廠商 A和廠商B由于在授權(quán)管理方面存在很大的漏洞, 所以導(dǎo)致惡意綁定較容易實(shí)現(xiàn)。攻擊者通過(guò)構(gòu)造正確的綁定請(qǐng)求數(shù)據(jù)包到服務(wù)器, 服務(wù)器就會(huì)將設(shè)備原有的綁定關(guān)系解除, 重新建立攻擊者與設(shè)備的綁定關(guān)系。設(shè)備原綁定者可能會(huì)在不知情的情況下被“搶走”設(shè)備。而廠商C與D則在授權(quán)方面做了驗(yàn)證保護(hù)。即新綁定者必須得到原綁定者的授權(quán), 或原綁定者先主動(dòng)解除綁定關(guān)系, 或通過(guò)對(duì)設(shè)備進(jìn)行重置操作甚至致電客服核對(duì)信息才能實(shí)現(xiàn)二次綁定。
3.2.3 用戶控制終端內(nèi)權(quán)限管理問(wèn)題和防護(hù)技術(shù)
用戶控制終端內(nèi)權(quán)限控制不當(dāng), 一方面可能造成用戶控制終端 APP自身敏感數(shù)據(jù)泄露, 另一方面用戶控制終端權(quán)限的濫用造成對(duì)用戶隱私數(shù)據(jù)的竊取和設(shè)備的越權(quán)訪問(wèn)。嚴(yán)重情況下可能會(huì)影響到用戶生命財(cái)產(chǎn)安全。
通過(guò)對(duì)相關(guān)智能家居設(shè)備用戶控制終端APP的研究發(fā)現(xiàn), 用戶的登錄信息、密鑰信息、業(yè)務(wù)協(xié)議數(shù)據(jù)或多或少存放在本地文件夾中, 極容易在用戶控制終端被惡意程序入侵時(shí)造成密鑰信息和用戶賬戶信息的泄露。比較安全的做法是將APP敏感業(yè)務(wù)數(shù)據(jù)存儲(chǔ)在云端, 必須存儲(chǔ)本地的數(shù)據(jù)需要加密。
此外, 2016年以來(lái), 美國(guó)密西根大學(xué) Atul Prakash團(tuán)隊(duì)在信息安全頂級(jí)會(huì)議 S&P, USENIX,NDSS上發(fā)表多篇研究成果[9,78,79]指出, 針對(duì)三星IoT智能設(shè)備平臺(tái)SmartThings, 在用戶控制終端APP上存在業(yè)務(wù)過(guò)度授權(quán), 敏感數(shù)據(jù)缺乏保護(hù)等漏洞, 在云服務(wù)端則存在 API訪問(wèn)控制不安全等缺陷。作為三星公司智能家居平臺(tái)的中樞, SmartThings是一個(gè)可擴(kuò)展的物聯(lián)網(wǎng)平臺(tái), 允許用戶購(gòu)買(mǎi)和添加更多家庭智能設(shè)備, 然后通過(guò)配套的 SmartThings應(yīng)用SmartApps或制造商提供的單獨(dú)APP來(lái)控制連接的設(shè)備。研究人員對(duì)該智能設(shè)備平臺(tái)用戶控制終端499款SmartApps和132款設(shè)備進(jìn)行了一系列靜態(tài)代碼分析, 發(fā)現(xiàn)盡管 SmartThings部署特權(quán)分離模型, 但還是存在提權(quán)漏洞, 也就是 SmartApps能夠?qū)υO(shè)備執(zhí)行比其原定功能還要多的操作。這些漏洞將允許惡意應(yīng)用解鎖門(mén)禁, 遠(yuǎn)程修改智能門(mén)禁密碼, 錯(cuò)誤觸發(fā)煙霧警報(bào)器以及使智能設(shè)備進(jìn)入假日模式。
針對(duì)這些問(wèn)題, Atul Prakash團(tuán)隊(duì)研究人員首先提出了FlowFence[78]數(shù)據(jù)流保護(hù)方案, 監(jiān)測(cè)智能設(shè)備用戶控制終端APP對(duì)用戶隱私數(shù)據(jù)使用情況。傳統(tǒng)關(guān)于隱私數(shù)據(jù)保護(hù)的安全方案只支持基于權(quán)限的訪問(wèn)控制, APP獲得權(quán)限之后如何使用并無(wú)有效方案。FlowFence架構(gòu)如圖 10所示, 方案通過(guò)沙盒隔離模塊(Quarantined Modules, QM)和污點(diǎn)追蹤處理模塊(opaque handles), 在可信服務(wù)內(nèi)通過(guò)TrustAPI等方法, 基于用戶預(yù)定義規(guī)則(Flow Policy)來(lái)阻止惡意業(yè)務(wù)層數(shù)據(jù)流。只有符合預(yù)定義規(guī)則的數(shù)據(jù)流才被允許, 從而保證APP對(duì)隱私數(shù)據(jù)合理使用。
此外, 他們提出了一套基于上下文語(yǔ)義的用戶控制終端授權(quán)系統(tǒng) ContextIoT[79], 此方案在運(yùn)行時(shí)給用戶提供細(xì)粒度的上下文信息提示, 以幫助用戶施行有效的訪問(wèn)控制。ContextIoT將“上下文”定義為程序間控制流和數(shù)據(jù)流的執(zhí)行路徑。為了幫助用戶做出更明智的決策, 此方案還使用污染分析來(lái)標(biāo)記運(yùn)行時(shí)數(shù)據(jù)的數(shù)據(jù)源。為了提供向后兼容性,ContextIoT提供了一個(gè)應(yīng)用程序修補(bǔ)機(jī)制, 可將現(xiàn)有的IoT應(yīng)用程序轉(zhuǎn)換為ContextIoT兼容的應(yīng)用程序。
圖10 FlowFence數(shù)據(jù)流保護(hù)方案Figure 10 FlowFence data stream protection scheme
ContextIoT具體案例如下圖11所示, 每次APP嘗試針對(duì)敏感數(shù)據(jù)進(jìn)行操作(如開(kāi)窗), 請(qǐng)求許可(Requesting Permission)會(huì)發(fā)送到后臺(tái), 基于云端的后臺(tái)授權(quán)系統(tǒng)將檢查這個(gè)上下文操作是否之前被允許或者拒絕過(guò)。如果是新的上下文, 系統(tǒng)將把這個(gè)請(qǐng)求許可和上下文推送給用戶, 由用戶進(jìn)行決策, 之后新決策作為新安全策略添加到后臺(tái)授權(quán)系統(tǒng)。
通過(guò)上述分析可以看出, 針對(duì)業(yè)務(wù)層數(shù)據(jù)流的安全分析已經(jīng)開(kāi)始受到關(guān)注, 但僅針對(duì)隱私泄露和權(quán)限控制在用戶控制終端內(nèi)進(jìn)行檢測(cè)。IoT智能設(shè)備業(yè)務(wù)部署和數(shù)據(jù)通路除了涉及用戶控制終端, 還包括硬件端和云服務(wù)端, 它們?yōu)楣粽咴跇I(yè)務(wù)層數(shù)據(jù)上提供更大范圍攻擊面和漏洞入口, 目前缺乏在全局視圖上針對(duì)業(yè)務(wù)層數(shù)據(jù)攻擊的安全研究和分析。
在智能設(shè)備業(yè)務(wù)生態(tài)三端系統(tǒng)架構(gòu)中, 除了針對(duì)智能設(shè)備終端和用戶控制終端的安全威脅, 在云服務(wù)端也存在安全威脅。黑客利用業(yè)務(wù)層的漏洞, 單點(diǎn)攻破設(shè)備, 批量控制廠商設(shè)備等攻擊行為正愈演愈烈, 并逐步成為針對(duì)智能設(shè)備安全威脅的主要來(lái)源。調(diào)查發(fā)現(xiàn) 90%的家電廠商的智能設(shè)備與自建的私有云之間沒(méi)有任何身份認(rèn)證以及加密協(xié)議[80]。賽門(mén)鐵克公司2015年3月發(fā)布的一項(xiàng)報(bào)告顯示, 在隨機(jī)抽樣的50種智能家居產(chǎn)品中, 大部分存在著類似的基本安全問(wèn)題[81], 包括脆弱的身份認(rèn)證和網(wǎng)絡(luò)攻擊控制, 其中的設(shè)備包括智能鎖, 智能電燈, 智能煙霧警報(bào)器, 智能家庭影院等。因此各個(gè)智能設(shè)備廠商云服務(wù)端的安全性問(wèn)題也日益凸顯出來(lái)。本章將從傳統(tǒng)網(wǎng)絡(luò)層安全威脅、業(yè)務(wù)層接入?yún)f(xié)議安全漏洞、業(yè)務(wù)層設(shè)備權(quán)限管理安全威脅和業(yè)務(wù)層設(shè)備批量攻擊威脅四個(gè)方面總結(jié)云服務(wù)端面臨的安全問(wèn)題, 之后從安全監(jiān)測(cè)角度綜述目前已有安全研究。
圖11 ContexIoT實(shí)施基于上下文訪問(wèn)控制案例Figure 11 ContexIoT implementation of a context based access control case
3.3.1 云服務(wù)端安全威脅
(1) 云平臺(tái)傳統(tǒng)網(wǎng)絡(luò)層安全威脅
智能設(shè)備云服務(wù)端接入到互聯(lián)網(wǎng)之中, 由于物聯(lián)網(wǎng)對(duì)于互聯(lián)網(wǎng)的天然繼承性, 針對(duì)互聯(lián)網(wǎng)的傳統(tǒng)網(wǎng)絡(luò)層安全攻擊也自然地蔓延到了物聯(lián)網(wǎng)之中, 因此云服務(wù)端首先面臨的就是傳統(tǒng)網(wǎng)絡(luò)層安全威脅。雖然業(yè)界和學(xué)術(shù)界在網(wǎng)絡(luò)層安全研究深耕多年, 但是攻防相長(zhǎng)的態(tài)勢(shì)沒(méi)有變化, 依然需要引起智能設(shè)備廠商以及智能設(shè)備安全研究者的關(guān)注。
網(wǎng)絡(luò)層面臨的威脅主要包括物理威脅、病毒、非授權(quán)訪問(wèn)、蠕蟲(chóng)、系統(tǒng)漏洞、暴力破解、后門(mén)(木馬程序)、網(wǎng)絡(luò)嗅探、拒絕服務(wù)攻擊、內(nèi)部人員誤操作等[82]。常見(jiàn)攻擊手段包括惡意程序(如病毒、蠕蟲(chóng)和木馬程序)、DDoS、欺騙(如IP欺騙[83]、ARP欺騙[84])、郵件炸彈[85]、口令破解、社會(huì)工程[86]等。
根據(jù)全球開(kāi)源安全組織OWASP在2014年發(fā)布的物聯(lián)網(wǎng)十大安全威脅研究報(bào)告[87], 排名第一的物聯(lián)網(wǎng)安全威脅就是不安全的網(wǎng)絡(luò)層 Web接口, 主要包括賬戶枚舉、脆弱的默認(rèn)密碼、暴露在網(wǎng)絡(luò)流量中的憑據(jù)、跨站腳本攻擊(XSS)、SQL注入和長(zhǎng)連接Session管理等問(wèn)題。此外, 其他網(wǎng)絡(luò)層威脅還包括不安全的網(wǎng)絡(luò)服務(wù)(如緩沖區(qū)溢出、開(kāi)放端口和拒絕服務(wù)攻擊等)、缺乏安全配置能力(如細(xì)粒度權(quán)限模型的缺乏、缺乏安全監(jiān)控和缺乏安全日志等)。
(2) 云服務(wù)端業(yè)務(wù)層接入?yún)f(xié)議安全威脅
目前在 IoT智能設(shè)備云服務(wù)端業(yè)務(wù)層接入?yún)f(xié)議多種多樣, 各大廠商根據(jù)自身業(yè)務(wù)需求直接沿用或簡(jiǎn)單修改現(xiàn)有互聯(lián)網(wǎng)通信協(xié)議。由于協(xié)議開(kāi)發(fā)初期對(duì)安全的忽視或是對(duì)協(xié)議生硬的移植, 使得業(yè)務(wù)層通信安全變得非常脆弱。常見(jiàn)主流的業(yè)務(wù)層接入?yún)f(xié)議有 HTTP/REST[88]、MQTT[89]、XMPP[90]、CoAP[91]等, 這些協(xié)議身份認(rèn)證機(jī)制對(duì)比如下表2所示。下文先分別總結(jié)這些協(xié)議和安全威脅, 最后歸納業(yè)務(wù)層接入?yún)f(xié)議整體的安全威脅。
表2 四種主流業(yè)務(wù)層接入?yún)f(xié)議身份認(rèn)證機(jī)制對(duì)比Table 2 Comparison of four mainstream business layer access protocol identity authentication mechanisms
在HTTP/REST協(xié)議方面, 目前很多廠商云端建設(shè)僅僅使用簡(jiǎn)單的WEB程序接口的形式使設(shè)備聯(lián)網(wǎng),但設(shè)備又必須主動(dòng)向服務(wù)器發(fā)送數(shù)據(jù), 難以主動(dòng)向設(shè)備推送數(shù)據(jù), 因此加入Websocket來(lái)解決這一問(wèn)題,這樣云服務(wù)端的安全將變的非常脆弱。原始 HTTP請(qǐng)求報(bào)文是明文的, 為了安全一般需要加入傳輸層安全協(xié)議[92](Transport Layer Security, TLS)來(lái)保證通信雙方的身份認(rèn)證和信道保密性。通過(guò)研究, 我們發(fā)現(xiàn)廠商A和廠商B均直接采用了普通HTTP協(xié)議, 沒(méi)有利用 SSL/TLS加密, 這就導(dǎo)致敏感通信數(shù)據(jù)極易被攔截、獲取和篡改。在數(shù)據(jù)內(nèi)容保密性方面, 廠商A的 APP與服務(wù)端傳輸?shù)乃袛?shù)據(jù)內(nèi)容都是明文,沒(méi)有任何加密手段。而廠商 B設(shè)備與云端的通信數(shù)據(jù)雖然采用了AES對(duì)稱加密使得安全性得到了一定的提高, 但是對(duì)用戶控制終端 APP進(jìn)行反編譯就可以輕而易舉地從代碼中獲得 AES對(duì)稱密鑰, 從而可以對(duì)通信數(shù)據(jù)內(nèi)容進(jìn)行破解。另外兩家廠商C和D安全性則相對(duì)較好, 采用了 SSL/TLS協(xié)議對(duì) HTTP協(xié)議進(jìn)行加密保護(hù), 但在 SSL認(rèn)證處理上皆采用了單向認(rèn)證, 即客戶端驗(yàn)證服務(wù)器身份, 服務(wù)器不驗(yàn)證客戶端身份的方式, 使得它們?nèi)匀徊荒芊乐怪虚g人攻擊。
MQTT[89]是 IBM 開(kāi)發(fā)的即時(shí)通訊協(xié)議, 相較于重量級(jí)的 HTTP協(xié)議它可以通過(guò)很少的代碼和帶寬遠(yuǎn)程連接設(shè)備, 適合于CPU和內(nèi)存資源受限的嵌入式設(shè)備。MQTT是一種基于代理的發(fā)布/訂閱的消息協(xié)議, 提供一對(duì)多的消息分發(fā), 一個(gè)發(fā)布者可以對(duì)應(yīng)多個(gè)訂閱者, 當(dāng)發(fā)布者發(fā)生變化的時(shí)候, 他可以將消息一一通知給所有的訂閱者, 這種模式提供了更大的網(wǎng)絡(luò)擴(kuò)展性和更動(dòng)態(tài)的網(wǎng)絡(luò)拓?fù)鋄93]。MQTT基于 TCP協(xié)議, 默認(rèn)情況通訊并不加密, 出于成本的考慮有些使用了該協(xié)議的智能設(shè)備產(chǎn)品沒(méi)有添加額外的安全措施, 這就使得一切信息暴露無(wú)遺, 造成極大的安全威脅。因此出于安全的考慮使用 TSL幾乎是必須的選擇。
XMPP作為一種即時(shí)聊天協(xié)議, 和現(xiàn)有物聯(lián)網(wǎng)設(shè)備通信的模式非常相似。XMPP包含了針對(duì)服務(wù)器端的軟件協(xié)議, 使之能與另一個(gè)進(jìn)行通話, 這使得開(kāi)發(fā)者更容易建立客戶應(yīng)用程序或給一個(gè)已經(jīng)配置好XMPP協(xié)議的系統(tǒng)添加功能[94]。XMPP的開(kāi)放性和易用性, 使開(kāi)發(fā)者能夠很快的應(yīng)用與現(xiàn)有物聯(lián)網(wǎng)環(huán)境, 具有成本低和開(kāi)放快的特點(diǎn)。但是由于開(kāi)發(fā)者的水平參差不齊, XMPP協(xié)議在傳輸數(shù)據(jù)加密處理、云服務(wù)端用戶鑒權(quán)隔離和用戶認(rèn)證信息存儲(chǔ)等諸多方面容易造成安全隱患。在2015年Hackpwn大會(huì)上安全人員就展示了對(duì)TCL洗衣機(jī)(使用了XMPP協(xié)議)的破解過(guò)程[95]。TCL智能洗衣機(jī)通過(guò)配置直接接入互聯(lián)網(wǎng)中, 它使用的是“京東微聯(lián)”平臺(tái), 京東微聯(lián)是京東旗下針對(duì)智能設(shè)備的公有云平臺(tái)。通過(guò)安全人員的分析, 在京東微聯(lián)和用戶控制終端之間都具備高強(qiáng)度的加密傳輸協(xié)議和身份認(rèn)證方案, 但是洗衣機(jī)和京東微聯(lián)之間使用的是未加密的XMPP協(xié)議來(lái)實(shí)現(xiàn)會(huì)話控制和設(shè)備長(zhǎng)連接, 可以被嗅探者清晰地看到控制指令格式和內(nèi)容。
CoAP[91](Constrained Application Protocol)的設(shè)計(jì)目的在于允許資源相對(duì)有限的設(shè)備利用UDP而非TCP通過(guò)互聯(lián)網(wǎng)實(shí)現(xiàn)通信, 開(kāi)發(fā)人員可以和任意支持 CoAP的設(shè)備進(jìn)行交互, 具體方式與采用傳統(tǒng)REST API的設(shè)備完全一致[96]。CoAP的主要適用場(chǎng)景包括低功耗傳感器以及需要通過(guò)互聯(lián)網(wǎng)加以控制的設(shè)備。所有CoAP消息皆可被標(biāo)記為“確認(rèn)”或者“未確認(rèn)”, 并作為應(yīng)用層級(jí)的QoS機(jī)制。SSL/TLS加密無(wú)法在UDP之上實(shí)現(xiàn), 因此CoAP需要使用數(shù)據(jù)傳輸層安全作為替代[94]。
通過(guò)對(duì)主流業(yè)務(wù)層接入?yún)f(xié)議的總結(jié)和安全威脅闡述, 結(jié)合本研究工作前期對(duì)智能設(shè)備產(chǎn)品業(yè)務(wù)層接入?yún)f(xié)議相關(guān)調(diào)研, 我們歸納得出業(yè)務(wù)層接入?yún)f(xié)議整體面臨的安全威脅有如下四個(gè)部分, 包括竊聽(tīng)攻擊、篡改攻擊、偽造攻擊和重放攻擊:
1) 竊聽(tīng)攻擊: 攻擊者通過(guò)竊聽(tīng)網(wǎng)絡(luò)通信鏈路上的數(shù)據(jù), 獲取智能設(shè)備終端的隱私數(shù)據(jù)和敏感數(shù)據(jù)。例如, 通過(guò)被動(dòng)竊聽(tīng)網(wǎng)絡(luò)可以獲取健康醫(yī)療類智能硬件設(shè)備的數(shù)據(jù), 從而獲得用戶的隱私數(shù)據(jù)。
2) 篡改攻擊: 攻擊者通過(guò)主動(dòng)插入到通信鏈路上, 對(duì)數(shù)據(jù)的完整性進(jìn)行攻擊, 即篡改數(shù)據(jù)報(bào)文的內(nèi)容, 例如, 攻擊者可以篡改智能設(shè)備向業(yè)務(wù)云提交的業(yè)務(wù)數(shù)據(jù), 向業(yè)務(wù)云提供錯(cuò)誤的數(shù)據(jù)信息。
3) 偽造攻擊: 即一種針對(duì)真實(shí)性的攻擊, 攻擊者偽造一些看似來(lái)自合法來(lái)源的數(shù)據(jù)報(bào)文, 以此誘騙通信的另一方。尤其是在智能設(shè)備的控制指令傳輸過(guò)程中, 攻擊者可以偽造一些攜帶控制指令的報(bào)文發(fā)給智能設(shè)備, 從而達(dá)到未授權(quán)操作的效果。
4) 重放攻擊: 從目前的分析來(lái)看, 重放攻擊主要分為兩個(gè)方面, 一個(gè)是針對(duì)未加密的通信協(xié)議重放控制指令攻擊設(shè)備, 另一個(gè)是對(duì)會(huì)話令牌的重復(fù)使用而發(fā)起的攻擊行為。
通過(guò)研究, 我們發(fā)現(xiàn)廠商A沒(méi)有時(shí)間戳機(jī)制, 任何信息都可以重放; 廠商B和C雖然有時(shí)間戳, 但服務(wù)端并沒(méi)有對(duì)時(shí)間戳進(jìn)行檢驗(yàn), 過(guò)時(shí)很久的信息依舊可以重放; 廠商 D在這個(gè)問(wèn)題上做得相對(duì)較好,服務(wù)端會(huì)對(duì)客戶端提交上來(lái)的時(shí)間戳與自己的時(shí)間進(jìn)行對(duì)比, 只有波動(dòng)在很小范圍內(nèi)的時(shí)間戳所標(biāo)識(shí)的請(qǐng)求才會(huì)被響應(yīng)。但依然不是嚴(yán)格的抗重放機(jī)制,短時(shí)間內(nèi)的請(qǐng)求仍舊可以實(shí)現(xiàn)重放; 而在云服務(wù)端常用會(huì)話令牌設(shè)計(jì)中, 當(dāng)客戶端用戶登錄成功以后,服務(wù)端會(huì)返回給客戶端一個(gè)會(huì)話令牌, 標(biāo)識(shí)了此次會(huì)話用戶的身份及權(quán)限, 正常情況下會(huì)話令牌應(yīng)及時(shí)更新。我們研究發(fā)現(xiàn)廠商 B的處理方法是每次登錄就會(huì)產(chǎn)生一個(gè)新的會(huì)話令牌, 廠商A、廠商D也對(duì)會(huì)話令牌進(jìn)行了控制, 有一定的生存時(shí)間, 超過(guò)這個(gè)時(shí)間, 就要申請(qǐng)一個(gè)新的令牌進(jìn)行通信, 同時(shí)舊的令牌就會(huì)失效; 而廠商C雖然也會(huì)更新會(huì)話令牌,但舊的令牌不會(huì)失效, 即只要存在過(guò)的會(huì)話令牌永久有效。在這種情況下, 只要攻擊者拿到用戶任何一個(gè)使用過(guò)的會(huì)話令牌, 都可以冒充用戶身份對(duì)設(shè)備進(jìn)行操作。
(3) 云服務(wù)端業(yè)務(wù)層內(nèi)容安全威脅
在智能設(shè)備云服務(wù)端, 除了接入?yún)f(xié)議的安全威脅, 在業(yè)務(wù)層內(nèi)容安全上也存在著隱患, 而且近些年業(yè)務(wù)層安全漏洞正越來(lái)越多的吸引黑客注意, 引發(fā)了很多業(yè)務(wù)層內(nèi)容相關(guān)的異常行為, 而以往相關(guān)安全研究工作較少。本文擬先建立業(yè)務(wù)層異常行為分類模型, 對(duì)業(yè)務(wù)層內(nèi)容安全威脅進(jìn)行系統(tǒng)梳理。
圖12 智能設(shè)備業(yè)務(wù)云數(shù)據(jù)內(nèi)容分類Figure 12 Intelligent device service cloud data content classification
首先, 業(yè)務(wù)層內(nèi)容按照數(shù)據(jù)類別劃分, 可分為用戶控制終端數(shù)據(jù)和智能設(shè)備終端數(shù)據(jù), 如下圖 12所示。其中, 用戶控制終端數(shù)據(jù)包括用戶賬號(hào)生命周期數(shù)據(jù), 如用戶注冊(cè)、用戶登錄和用戶登出; 管理設(shè)備生命周期數(shù)據(jù), 如設(shè)備激活、設(shè)備綁定和設(shè)備刪除;獲取設(shè)備狀態(tài)和改變?cè)O(shè)備狀態(tài)。智能設(shè)備終端數(shù)據(jù)包括設(shè)備上傳激活和綁定操作的數(shù)據(jù), 以及設(shè)備定時(shí)上傳狀態(tài)數(shù)據(jù)。
圖13 智能設(shè)備業(yè)務(wù)云數(shù)據(jù)內(nèi)容異常行為分類域Figure 13 Intelligent device business cloud data content exception behavior classification domain
然后, 按照異常行為涉及的數(shù)據(jù)類型是否相同,我們將業(yè)務(wù)層內(nèi)容安全異常行為分為如下圖13所示的兩個(gè)類別, 對(duì)應(yīng)同類數(shù)據(jù)異常域和不同類數(shù)據(jù)異常域, 分別如表3和表4所示。
表3 同類數(shù)據(jù)異常行為域Table 3 Similar data anomaly domain
云服務(wù)端業(yè)務(wù)層出現(xiàn)漏洞之后, 由于智能設(shè)備數(shù)量大、影響面廣, 極易引起黑客的注意而發(fā)起批量攻擊。根據(jù)《Verizon 2016數(shù)據(jù)泄露報(bào)告》中的數(shù)據(jù)統(tǒng)計(jì)[97], 有超過(guò)一半的企業(yè)網(wǎng)絡(luò)安全事故和身份認(rèn)證憑據(jù)盜用有關(guān)。授權(quán)和身份認(rèn)證大部分是由云服務(wù)端進(jìn)行控制的, 云服務(wù)端會(huì)存在用戶安全校驗(yàn)簡(jiǎn)單、設(shè)備識(shí)別碼規(guī)律可循、設(shè)備間授權(quán)不嚴(yán)等安全問(wèn)題。目前可以在分析出設(shè)備身份認(rèn)證標(biāo)識(shí)規(guī)律的情況下, 如MAC 地址、SN 號(hào)等都可以通過(guò)猜測(cè)、枚舉的方式得到, 從而批量控制大量設(shè)備。這個(gè)漏洞根本上是設(shè)備唯一標(biāo)識(shí)命名規(guī)則可猜測(cè), 此危害在智能設(shè)備系統(tǒng)里是最大的, 因?yàn)樗軌蛴绊懙饺康闹悄苡布?60安全研究人員在《黑客告訴你, 315晚會(huì)上的智能產(chǎn)品是怎樣被黑的》[98]一文中就提到,在發(fā)現(xiàn)能夠控制到智能硬件自身之后, 黑客就會(huì)想辦法看看能不能橫向影響到其他設(shè)備。橫向的控制就是去看設(shè)備的身份認(rèn)證標(biāo)識(shí)是怎么設(shè)計(jì)的。很多智能硬件廠商是拿 MAC地址作為身份認(rèn)證的唯一標(biāo)識(shí), 然而MAC地址的規(guī)律是可循的, 所以可以通過(guò)遍歷MAC地址控制這個(gè)廠家的所有設(shè)備。本文針對(duì)廠商A和廠商B的研究分析也驗(yàn)證發(fā)現(xiàn)了同樣的問(wèn)題, 設(shè)備標(biāo)識(shí)命名規(guī)則可猜測(cè)從而造成大批量的攻擊行為。
表4 不同類數(shù)據(jù)異常行為域Table 4 Dissimilar data anomaly domain
3.3.2 云服務(wù)端信息流異常檢測(cè)技術(shù)
云服務(wù)端信息流則包含傳輸過(guò)程中網(wǎng)絡(luò)協(xié)議數(shù)據(jù)組成的網(wǎng)絡(luò)層數(shù)據(jù)流, 以及硬件端上傳到云服務(wù)端的狀態(tài)數(shù)據(jù)和用戶控制指令數(shù)據(jù)組成的業(yè)務(wù)層數(shù)據(jù)流, 它們都表現(xiàn)為傳輸態(tài)。傳輸態(tài)信息流的攻擊行為將導(dǎo)致隱私信息泄露、硬件非法控制、硬件惡意批量攻擊等危害。目前研究主要關(guān)注傳統(tǒng)網(wǎng)絡(luò)層數(shù)據(jù)流攻擊防御和檢測(cè), 如入侵檢測(cè)、抗DDoS攻擊等技術(shù)。文獻(xiàn)[99]提出了針對(duì)無(wú)線傳感網(wǎng)絡(luò)(Wireless Sensor Networks, WSN)的異常檢測(cè), 通過(guò)采集WSN設(shè)備中日志記錄和活動(dòng)行為, 在云服務(wù)端采用入侵檢測(cè)的方式發(fā)現(xiàn)異常行為。文獻(xiàn)[100]和[101]則針對(duì)IoT特定的網(wǎng)絡(luò)協(xié)議(如RPL, 6LoWPAN和CoAP協(xié)議等), 結(jié)合入侵檢測(cè)技術(shù)對(duì)協(xié)議交互數(shù)據(jù)進(jìn)行異常檢測(cè)。然而, 目前針對(duì)IoT 智能設(shè)備的攻擊越來(lái)越多的來(lái)自業(yè)務(wù)層數(shù)據(jù)流[102], 而針對(duì)業(yè)務(wù)層數(shù)據(jù)流的安全分析才剛剛起步, 且僅針對(duì)隱私泄露問(wèn)題在用戶控制終端內(nèi)進(jìn)行檢測(cè)。IoT 智能設(shè)備業(yè)務(wù)部署和數(shù)據(jù)通路除了涉及用戶控制終端, 還包括硬件端和云服務(wù)端, 它們?yōu)楣粽咴跇I(yè)務(wù)層數(shù)據(jù)上提供更大范圍的攻擊面和漏洞入口, 目前缺乏在全局視圖上針對(duì)業(yè)務(wù)層數(shù)據(jù)攻擊的安全研究和分析。
通過(guò)本文對(duì)IOT智能設(shè)備安全威脅的整體梳理,可以發(fā)現(xiàn)智能設(shè)備安全問(wèn)題在智能設(shè)備終端、云服務(wù)端和用戶控制終端均存在。物聯(lián)網(wǎng)和IT技術(shù)的融合使得智能設(shè)備具備了聯(lián)網(wǎng)和交互的能力, 和傳統(tǒng)PC主機(jī)相比, 智能設(shè)備具有數(shù)量多、計(jì)算資源少、防護(hù)能力低等特點(diǎn)。從信息流角度分析, 用戶控制終端下達(dá)到智能設(shè)備終端的控制指令經(jīng)歷了從信息空間到物理系統(tǒng)操作空間的跨界轉(zhuǎn)換, 這是智能設(shè)備安全問(wèn)題的本質(zhì), 它導(dǎo)致了訪問(wèn)控制、權(quán)限管理和安全操控等多方面的安全威脅。
在目前已有的安全防護(hù)技術(shù)方面, 基于上述章節(jié)論述可以看出: 現(xiàn)有IoT智能硬件安全防護(hù)技術(shù)大多集中于安全事件處理的某個(gè)階段(例如事前預(yù)防、運(yùn)行時(shí)監(jiān)測(cè)階段), 或僅針對(duì)具體問(wèn)題(例如完整性驗(yàn)證、數(shù)據(jù)流異常檢測(cè)), 沒(méi)有從全局視角對(duì) IoT智能硬件安全防護(hù)體系進(jìn)行建模, 缺乏涵蓋智能硬件安全事件全過(guò)程的安全防護(hù)體系。
本小節(jié)下面的內(nèi)容將從威脅防范和運(yùn)行保障視角, 討論針對(duì)IoT智能設(shè)備信息安全事件全生命周期過(guò)程的防護(hù)體系, 如下圖14所示, 涵蓋設(shè)備于1)“事前預(yù)防”階段抗脆弱性加固的群體完整性認(rèn)證和固件布局多樣性技術(shù); 2) “運(yùn)行監(jiān)測(cè)”階段信息流動(dòng)態(tài)安全監(jiān)測(cè)的控制流數(shù)據(jù)流融合度量以及基于網(wǎng)絡(luò)層業(yè)務(wù)層進(jìn)行異常行為檢測(cè)技術(shù); 3)“事后恢復(fù)”階段受損狀態(tài)下安全保障的應(yīng)急處置和設(shè)備愈合技術(shù),提供相關(guān)技術(shù)的路線與讀者進(jìn)行探討。
(1) 完整性群體快速認(rèn)證技術(shù)
IoT智能硬件由于其部署分散, 網(wǎng)絡(luò)環(huán)境復(fù)雜,驗(yàn)證者通過(guò)網(wǎng)絡(luò)對(duì)批量設(shè)備的軟件完整性進(jìn)行遠(yuǎn)程驗(yàn)證更為適用于這類場(chǎng)景。其中, 設(shè)備規(guī)?;①Y源受限、網(wǎng)絡(luò)結(jié)構(gòu)不明確且動(dòng)態(tài)變化、問(wèn)題設(shè)備定位都是設(shè)計(jì)認(rèn)證方案過(guò)程中需要考慮的問(wèn)題。針對(duì)上述問(wèn)題, 本文將從設(shè)備入網(wǎng)、斷言生成、斷言收集、斷言驗(yàn)證等四個(gè)方面討論實(shí)現(xiàn)支持星型網(wǎng)絡(luò)、樹(shù)型網(wǎng)絡(luò)、P2P網(wǎng)絡(luò)在內(nèi)的異構(gòu)網(wǎng)絡(luò)下智能硬件完整性群體的快速認(rèn)證技術(shù)。
技術(shù)路線如下: 設(shè)備入網(wǎng)基于信任預(yù)置及輕量級(jí)密鑰協(xié)商策略, 實(shí)現(xiàn)新增入網(wǎng)設(shè)備與現(xiàn)有網(wǎng)絡(luò)信任關(guān)系的初始化與建立, 同時(shí)可以構(gòu)建網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)樹(shù), 防止惡意設(shè)備加入對(duì)網(wǎng)絡(luò)或者協(xié)議進(jìn)行攻擊;斷言生成在智能硬件端, 利用校驗(yàn)代碼對(duì)設(shè)備軟件進(jìn)行校驗(yàn)和計(jì)算, 并根據(jù)安全策略生成及發(fā)送校驗(yàn)結(jié)果, 安全策略的實(shí)施可以保證當(dāng)前參與設(shè)備為驗(yàn)證者需要校驗(yàn)的目標(biāo)設(shè)備, 同時(shí)智能硬件可以根據(jù)策略內(nèi)正常狀態(tài)校驗(yàn)值集合判斷自身狀態(tài), 實(shí)現(xiàn)特定群體設(shè)備的完整性感知; 斷言收集利用分布式計(jì)算思路, 設(shè)備能對(duì)其拓?fù)浣Y(jié)構(gòu)樹(shù)上子節(jié)點(diǎn)提交的校驗(yàn)結(jié)果進(jìn)行規(guī)約并提交至上級(jí)節(jié)點(diǎn), 并逐級(jí)規(guī)約形成最終驗(yàn)證結(jié)果, 通過(guò)規(guī)約的方式將校驗(yàn)結(jié)果的計(jì)算分散至各個(gè)節(jié)點(diǎn); 斷言驗(yàn)證則是驗(yàn)證者利用信任體系對(duì)規(guī)約后的驗(yàn)證結(jié)果進(jìn)行處理, 得出當(dāng)前網(wǎng)絡(luò)內(nèi)設(shè)備完整性狀態(tài), 并得出非正常狀態(tài)設(shè)備集合。
(2) 設(shè)備固件多樣性技術(shù)
傳統(tǒng)強(qiáng)計(jì)算能力設(shè)備系統(tǒng)隨機(jī)化方案基于內(nèi)存管理單元(Memory Management Unit, MMU)的支持, 在部署后針對(duì)程序加載以及執(zhí)行過(guò)程進(jìn)行隨機(jī)化。然而智能硬件軟硬件資源有限, 直接使用物理內(nèi)存執(zhí)行代碼, 沒(méi)有MMU的支持也無(wú)法進(jìn)行復(fù)雜計(jì)算, 無(wú)法利用自身計(jì)算資源進(jìn)行隨機(jī)化。本文將討論利用云端高計(jì)算能力, 部署多樣性引擎對(duì)智能硬件固件內(nèi)部數(shù)據(jù)結(jié)構(gòu)和指令進(jìn)行隨機(jī)化的方法。
技術(shù)路線如下: 對(duì)待隨機(jī)化固件鏡像進(jìn)行遞歸和線性逆處理, 分離出鏡像文件內(nèi)所有數(shù)據(jù)結(jié)構(gòu)與指令, 并分別對(duì)數(shù)據(jù)結(jié)構(gòu)和指令進(jìn)行分析以及布局隨機(jī)化, 在數(shù)據(jù)層面獲取數(shù)組、結(jié)構(gòu)體變量等信息, 對(duì)其按照算子指定大小添加冗余, 異構(gòu)化棧內(nèi)數(shù)據(jù)布局。在指令層面根據(jù)隨機(jī)算子獲取上下文無(wú)關(guān)指令, 在不影響程序正常執(zhí)行的情況下進(jìn)行上下文語(yǔ)句的隨機(jī)重排, 異構(gòu)化程序語(yǔ)句布局。最后對(duì)隨機(jī)化后的固件代碼進(jìn)行重打包, 生成擁有標(biāo)記的異構(gòu)化固件并進(jìn)行部署, 達(dá)到固件的隨機(jī)化目的。
圖14 IoT智能硬件安全防護(hù)模型Figure 14 IoT intelligent hardware security protection model
(1) 控制流與數(shù)據(jù)流融合度量
智能硬件運(yùn)行時(shí)系統(tǒng)態(tài)信息流包含控制流和數(shù)據(jù)流, 傳統(tǒng)的檢測(cè)方案只涉及其中之一, 沒(méi)有充分考慮到這兩者關(guān)聯(lián)性以及相互影響。如控制流檢測(cè)方案僅對(duì)控制流完整性進(jìn)行檢測(cè), 忽略數(shù)據(jù)流對(duì)控制流的指引, 在數(shù)據(jù)流被篡改的情況下無(wú)法發(fā)現(xiàn)程序未按預(yù)設(shè)邏輯執(zhí)行。這些無(wú)交集融合技術(shù), 只能檢測(cè)已知的系統(tǒng)態(tài)信息流異常, 無(wú)法發(fā)現(xiàn)上述數(shù)據(jù)流間接攻擊導(dǎo)致的程序運(yùn)行失控。對(duì)系統(tǒng)內(nèi)部數(shù)據(jù)的分析可以同時(shí)從控制流和數(shù)據(jù)流兩方面入手, 對(duì)采集的數(shù)據(jù)利用機(jī)器學(xué)習(xí)分類算法對(duì)智能硬件系統(tǒng)態(tài)的數(shù)據(jù)流和控制流進(jìn)行關(guān)聯(lián)性分析, 建立融合度量模型, 提升追蹤數(shù)據(jù)流間接攻擊的檢測(cè)能力。
融合度量可以分為數(shù)據(jù)采集以及分析檢測(cè)兩個(gè)階段。在信息流采集階段, 需要在程序運(yùn)行時(shí)獲取數(shù)據(jù)流和控制流的標(biāo)記信息, 并把這些信息進(jìn)行持續(xù)的記錄直到待檢測(cè)路徑上所有的信息流標(biāo)記數(shù)據(jù)收集完成, 形成檢測(cè)路徑所對(duì)應(yīng)程序段的數(shù)據(jù)流/控制流完整標(biāo)記信息集, 并分別形成數(shù)據(jù)流和控制流報(bào)告, 用于進(jìn)行融合檢測(cè)。
在系統(tǒng)態(tài)信息流分析檢測(cè)階段, 對(duì)已形成的控制流和數(shù)據(jù)流報(bào)告, 進(jìn)行數(shù)據(jù)匹配融合, 生成針對(duì)整體信息流的數(shù)據(jù)集, 根據(jù)歷史檢測(cè)記錄對(duì)信息流數(shù)據(jù)集進(jìn)行異常與非異常標(biāo)注, 形成信息流標(biāo)注數(shù)據(jù)集并利用機(jī)器學(xué)習(xí)分類算法訓(xùn)練其相應(yīng)的度量模型。最后, 輸出系統(tǒng)數(shù)據(jù)流、控制流融合異常報(bào)告,標(biāo)識(shí)待測(cè)系統(tǒng)路徑的安全狀態(tài)。
(2) 基于網(wǎng)絡(luò)層和業(yè)務(wù)層的異常行為檢測(cè)
智能硬件運(yùn)行時(shí)傳輸態(tài)信息流包含網(wǎng)絡(luò)層數(shù)據(jù)流和業(yè)務(wù)層數(shù)據(jù)流。在網(wǎng)絡(luò)層, 特征屬性來(lái)源包括基于主機(jī)的數(shù)據(jù)(如進(jìn)程標(biāo)識(shí)、系統(tǒng)調(diào)用), 以及基于網(wǎng)絡(luò)協(xié)議的數(shù)據(jù)(如流量、源地址/目的地址IP、端口號(hào)、協(xié)議類型); 在業(yè)務(wù)層, 特征屬性來(lái)源包括硬件端和云服務(wù)端交互的激活綁定數(shù)據(jù)和硬件狀態(tài)數(shù)據(jù), 以及用戶控制端和云服務(wù)端交互的用戶生命周期管理、設(shè)備生命周期管理、設(shè)備操作指令等數(shù)據(jù)?,F(xiàn)有研究大多從網(wǎng)絡(luò)層數(shù)據(jù)流開(kāi)展安全檢測(cè), 在業(yè)務(wù)層僅關(guān)注用戶控制端內(nèi)部隱私數(shù)據(jù)保護(hù), 無(wú)法從業(yè)務(wù)層數(shù)據(jù)流全局視角進(jìn)行檢測(cè)。
針對(duì)上述問(wèn)題, 本文認(rèn)為從網(wǎng)絡(luò)層數(shù)據(jù)流和業(yè)務(wù)層數(shù)據(jù)流兩方面進(jìn)行安全檢測(cè)將是未來(lái)檢測(cè)技術(shù)的發(fā)展趨勢(shì)。通過(guò)對(duì)網(wǎng)絡(luò)層和業(yè)務(wù)層的二維特征矩陣建模, 在網(wǎng)絡(luò)層單維度、業(yè)務(wù)層單維度、以及網(wǎng)絡(luò)層和業(yè)務(wù)層雙維度發(fā)現(xiàn) IoT智能硬件異常行為。在技術(shù)路線上可以基于數(shù)據(jù)采集、批量數(shù)據(jù)預(yù)處理, 利用數(shù)據(jù)挖掘技術(shù)對(duì)異常行為進(jìn)行發(fā)現(xiàn),并結(jié)合模式匹配、分類和聚類的方法, 對(duì)異常行為進(jìn)行檢測(cè)。整個(gè)過(guò)程包含數(shù)據(jù)預(yù)處理、已知異常模式匹配檢測(cè)、已知異常行為分類檢測(cè)和未知異常行為聚類檢測(cè)。
在數(shù)據(jù)預(yù)處理階段, 將對(duì)數(shù)據(jù)進(jìn)行規(guī)范化處理, 并進(jìn)行特征選取, 形成二維特征矩陣; 對(duì)簡(jiǎn)單規(guī)則可定義的已知異常行為, 使用模式匹配方法,在網(wǎng)絡(luò)層向量維度或業(yè)務(wù)層向量維度進(jìn)行快速發(fā)現(xiàn); 針對(duì)復(fù)雜的異常行為, 可以采取分類或者聚類的方法進(jìn)行交叉發(fā)現(xiàn), 分類檢測(cè)能發(fā)現(xiàn)已有訓(xùn)練模型的異常行為, 而對(duì)于規(guī)則未知的異常, 則需要借助聚類方法檢測(cè)。在整個(gè)路線中, 異常挖掘過(guò)程可以采取漸進(jìn)式以減少不同異常發(fā)現(xiàn)方法之間的影響。
(1) 智能硬件受損條件下應(yīng)急處置
當(dāng)設(shè)備計(jì)算資源遭到攻擊時(shí), 對(duì)設(shè)備進(jìn)行應(yīng)急處置, 保證設(shè)備核心功能正常工作是保證設(shè)備可用性的基礎(chǔ)??梢圆捎迷诓僮飨到y(tǒng)任務(wù)調(diào)度器內(nèi)部添加鉤子并指向位于安全域的安全代理的方式, 對(duì)準(zhǔn)備加載的任務(wù)進(jìn)行安全審計(jì), 構(gòu)筑安全隔離抽象層對(duì)資源進(jìn)行隔離審計(jì)。待運(yùn)行任務(wù)在被調(diào)度器拷貝到主系統(tǒng)任務(wù)上下文空間進(jìn)行執(zhí)行前, 需要經(jīng)過(guò)安全代理的審核決定是否加載。
例如, 實(shí)時(shí)操作系統(tǒng)中通常運(yùn)行一個(gè)主系統(tǒng)任務(wù), 可以訪問(wèn)所有的硬件, 其他一些子任務(wù)可以控制不同的硬件資源進(jìn)行工作, 而這些子任務(wù)的執(zhí)行需要主系統(tǒng)任務(wù)使用調(diào)度器把它們加載到其上下文空間才可以實(shí)現(xiàn)。在子任務(wù)執(zhí)行之前, 可以設(shè)置安全代理用來(lái)阻止調(diào)度器拷貝受到攻擊的子任務(wù)到主系統(tǒng)任務(wù)的上下文環(huán)境中, 從而阻止攻擊者獲取響應(yīng)傳感器資源的控制權(quán)限。
(2) 智能硬件受損條件下愈合恢復(fù)
當(dāng)系統(tǒng)關(guān)鍵路徑受到攻擊而失去作用時(shí), 需要系統(tǒng)具備功能性恢復(fù)的能力。本文認(rèn)為一種可行的思路可以基于微重啟技術(shù)和遞歸恢復(fù)思想進(jìn)行恢復(fù)。系統(tǒng)以功能相關(guān)性對(duì)各個(gè)計(jì)算單元進(jìn)行樹(shù)型建模, 樹(shù)中每一個(gè)節(jié)點(diǎn)表示為系統(tǒng)的計(jì)算單元, 以樹(shù)狀層次結(jié)構(gòu)描述資源的邏輯調(diào)用關(guān)系, 形成系統(tǒng)功能資源樹(shù)。系統(tǒng)恢復(fù)將以資源樹(shù)中需要恢復(fù)的模塊為根節(jié)點(diǎn), 遞歸恢復(fù)此子樹(shù)內(nèi)所有的模塊。例如, 可以對(duì)操作系統(tǒng)內(nèi)的計(jì)算資源按照功能邏輯進(jìn)行劃分,即操作系統(tǒng)內(nèi)計(jì)算資源資源池包含RTOS、Socket、WLAN等孩子資源, 為操作系統(tǒng)計(jì)算資源與下設(shè)的幾個(gè)資源建立了功能上的“父子”關(guān)系。當(dāng)判定某個(gè)子任務(wù)的控制流遭到破壞, 則使用安全代理對(duì)該子任務(wù)進(jìn)行“阻斷”, 剝奪其運(yùn)行與訪問(wèn)其他計(jì)算資源的權(quán)限。同時(shí)從云端遠(yuǎn)程更新該子任務(wù)以及其在樹(shù)狀結(jié)構(gòu)上所有孩子節(jié)點(diǎn)的上下文內(nèi)容, 更新重啟后才可繼續(xù)使用。
近些年來(lái), 伴隨著物聯(lián)網(wǎng)的產(chǎn)生和發(fā)展, IoT智能設(shè)備越來(lái)越多地出現(xiàn)在市場(chǎng)上, 深入到人們工作和生活各個(gè)方面, 然而智能設(shè)備大規(guī)模普及的同時(shí),也給用戶個(gè)人資產(chǎn)與隱私保護(hù)帶來(lái)了極大地沖擊和挑戰(zhàn)。本文首先基于智能設(shè)備終端、云服務(wù)端和用戶控制終端系統(tǒng)架構(gòu), 綜述目前智能設(shè)備安全威脅的主要來(lái)源和技術(shù)攻擊手段, 并針對(duì)性地梳理已有安全研究和防護(hù)技術(shù)現(xiàn)狀。針對(duì)現(xiàn)有IoT智能設(shè)備安全防護(hù)體系缺失、安全設(shè)計(jì)不足的問(wèn)題, 本文對(duì)IoT智能設(shè)備在安全防護(hù)全生命周期下的能力需求進(jìn)行了討論, 提出了系統(tǒng)防護(hù)模型設(shè)計(jì)思路。
致謝 衷心感謝各位評(píng)審專家對(duì)本文提出的寶貴意見(jiàn)。向所有對(duì)本文的工作給予建議的老師、參與本文工作的同學(xué)表示感謝。本研究由中國(guó)科學(xué)院青年創(chuàng)新促進(jìn)會(huì)(課題號(hào): 1105CX0105)和信息安全國(guó)家標(biāo)準(zhǔn)項(xiàng)目“信息安全技術(shù)-智能互聯(lián)設(shè)備信息安全技術(shù)要求”提供資助。
[1]中國(guó)信息通信研究院. 移動(dòng)智能終端暨智能硬件白皮書(shū)(2016 年)[EB/OL]. 2017 [2017-3-8]. http://main.catr.cn/kxyj/qwfb/bps/201610/P020161027525277225001.pdf.
[2]中國(guó)通信網(wǎng). 工信部喬躍山: 2020年我國(guó)智能硬件市場(chǎng)規(guī)模將達(dá)到萬(wàn)億元 [EB/OL]. 2017 [2017-3-8].
[3]?eleda P, Krej?í R and Krmí?ek V. “Flow-based security issue detection in building automation and control networks.”Meeting of the European Network of Universities and Companies in Information and Communication Engineering. Springer Berlin Heidelberg, 2012, pp. 64-75.
[4]Dev J A. “On the Imminent Advent of Botnet Powered Cracking.”Collaboration and Internet Computing (CIC), 2016 IEEE 2nd International Conference on. IEEE, 2016, pp. 188-195.
[5]Sochor T, Zuzcak M and Bujok P. “Statistical analysis of attacking autonomous systems.”Cyber Security And Protection Of Digital Services (Cyber Security), 2016 International Conference On.IEEE, 2016, pp. 1-6.
[6]李柏松. 物聯(lián)網(wǎng)僵尸網(wǎng)絡(luò)嚴(yán)重威脅網(wǎng)絡(luò)基礎(chǔ)設(shè)施安全 [J]. 信息安全研究, 2016, 2(11), pp. 1042 –1048.
[7]51CTO. 威脅 IoT 環(huán)境的 Linux 惡性代碼 TOP5[EB/OL].2017 [2017.3]. http://netsecurity.51cto.com/art/201701/529274.htm.
[8]FREEBUF. 西班牙智能電表中驚現(xiàn)漏洞, 可導(dǎo)致大面積停電[EB/OL]. 2017 [2017.3]. http://www.freebuf.com/news/47634. html.
[9]Fernandes E, Jung J and Prakash A. “Security analysis of emerging smart home applications.”Security and Privacy (SP), 2016 IEEE Symposium on. IEEE, 2016, pp. 636-654.
[10]Miller C, Valasek C. Blackhat 2015: Advance Can Injection Techniques for Vehicle Networks [EB/OL]. 2017 [2017.3]. https://www.blackhat.com/us-16/briefings/schedule/#advanced-can-inject ion-techniques-for-vehicle-networks-4149.
[11]360. hackpwn2016 [EB/OL]. 2017 [2017.3]. http://hackpwn.#/2016/index.html.
[12]Alves T and Felton D. “Trustzone: Integrated hardware and software security.”ARM white paper, 2004, 3(4), pp. 18-24.
[13]Koeberl P, Schulz S, Sadeghi A R, et al. “TrustLite: A security architecture for tiny embedded devices.”P(pán)roceedings of the Ninth European Conference on Computer Systems. ACM, 2014, pp. 10.
[14]Brasser F, El Mahjoub B, Sadeghi A R, et al. “TyTAN: tiny trust anchor for tiny devices.”Design Automation Conference (DAC),2015 52nd ACM/EDAC/IEEE. IEEE, 2015, pp. 1 –6.
[15]Eldefrawy K, Tsudik G, Francillon A, et al. “SMART: Secure and Minimal Architecture for (Establishing Dynamic) Root of Trust.”NDSS, 2012, 12, pp. 1-15
[16]IDC. Worldwide Quarterly Wearable Device Tracker[EB/OL].2017 [2017.3]. http://www.idc.com/tracker/showtrackerhome.jsp
[17]SAMSUNG. SmartThingsHub[EB/OL]. 2017 [2017.3]. https://shop.smartthings.com/.
[18]GOOGLE. Goole Home [EB/OL]. 2017 [2017.3]. https://madeby.google.com/home/.
[19]RESEARCH, MARKETS. Forcast[EB/OL]. 2017 [2017.3]. http://www.researchandmarkets.com/.
[20]SAMSUNG, SmartThings [EB/OL]. 2017 [2017.3]. https://www.smartthings.com/.
[21]APPLE, HomeKit [EB/OL]. 2017 [2017.3]. http://www.apple.com/ios/home/.
[22]Google Weave Project. https://developers.google.com/weave/.
[23]ALIBABA, 阿里智能云平臺(tái) [EB/OL]. 2017 [2017.3]. http://open.aliplus.com/.
[24]TENCENT. 騰訊物聯(lián)云平臺(tái) [EB/OL]. 2017 [2017.3]. http://iot.open.qq.com/.
[25]環(huán)球網(wǎng). 史上最大規(guī)模網(wǎng)攻?大半個(gè)美國(guó)網(wǎng)癱美國(guó)土安全部及FBI介入 [EB/OL]. 2017 [2017.3]. http://world.huanqiu.com/exclusive/2016-10/9587047.html.
[26]DYN. Dyn Statement on 10/21/2016 DDoS Attack[EB/OL]. 2017[2017.3]. http://dyn.com/blog/dyn-statement-on-10212016-ddosattack/.
[27]ZELJKA ZORZ H. Researcher ropes poorly protected devices into botnet to map the Internet [EB/OL]. 2017 [2017.3]. https://www.helpnetsecurity.com/2013/03/20/researcher-ropes-poorly-protecteddevices-into-botnet-to-map-the-internet/.
[28]搜狐科技. IoT 僵尸的前世今生 [EB/OL]. 2017 [2017.3].http://mt.sohu.com/20161102/n472136915.shtml.
[29]??低暪俜狡脚_(tái). ??低暰筒糠直O(jiān)控設(shè)備遭網(wǎng)絡(luò)攻擊的后續(xù)說(shuō)明 [EB/OL]. 2017 [2017.3]. http://www.asmag.com.cn/news/201503/78215.html.
[30]綠盟科技. Mirai 代碼及原理分析 [EB/OL]. 2017 [2017.3].http://www.secjia.com/report/Mirai-Code-and-DDoS-analysis.pdf.
[31]VULNERABILITIES C, EXPOSURES. CVE-2013-2678[EB/OL]. 2017 [2017.3].http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-2678.
[32]安全客. 新型木馬: 能夠感染 Linux 路由器 [EB/OL]. 2017[2017.3]. http://bobao.#/news/detail/1882.html.
[33]ANDROID 安全中文站. 小談智能硬件安全 [EB/OL]. 2017[2017.3]. http://www.droidsec.cn/.
[34]VULNERABILITIES C, EXPOSURES. CVE-2011-4859[EB/OL].2017 [2017.3]. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-4859.
[35]DEV/TTYS0. Hacking the D-Link DSP-W215 Smart Plug[EB/OL]. 2017 [2017.3]. http://www.devttys0.com/2014/05/hacking-the-d-link-dsp-w215-smart-plug/.
[36]騰訊安全應(yīng)急響應(yīng)中心. 潛伏在身邊的危機(jī): 智能設(shè)備安全[EB/OL]. 2017 [2017.3]. https://security.tencent.com/index.php/blog/msg/94.
[37]Abdul Afiq Arifin K. “Developing Mesh Network To Extend Wifi Coverage Area.” 2014.
[38]Ahamed S S R. “The role of zigbee technology in future data communication system.”Journal of theoretical and applied information technology, 2009, 5(2), pp. 129.
[39]Noorman J, Agten P, Daniels W, et al. “Sancus: Low-cost Trustworthy Extensible Networked Devices with a Zero-software Trusted Computing Base.”USENIX Security. 2013, pp. 479– 494.
[40]Asokan N, Brasser F, Ibrahim A, et al. “Seda: Scalable embedded device attestation.”P(pán)roceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security. ACM,2015, pp. 964 – 975.
[41]Ngabonziza B, Martin D, Bailey A, et al. “TrustZone Explained:Architectural Features and Use Cases.”Collaboration and Internet Computing (CIC), 2016 IEEE 2nd International Conference on. IEEE, 2016, pp.445 – 451.
[42]Vasudevan A, Mccune J, Newsome J, et al. “CARMA: A hardware tamper-resistant isolated execution environment on commodity x86 platforms.”P(pán)roceedings of the 7th ACM Symposium on Information, Computer and Communications Security. ACM, 2012,pp. 48 – 49.
[43]Sumrall N and Novoa M. “Trusted computing group (TCG) and the TPM 1.2 specification.”Intel Developer Forum. Vol 32, 2003.
[44]Schulz S, Sadeghi A R and Wachsmann C. “Short paper: Lightweight remote attestation using physical functions.”P(pán)roceedings of the fourth ACM conference on Wireless network security. 2011,pp. 109 –114.
[45]LI Y, McCune J M and Perrig A. “VIPER: verifying the integrity of PERipherals’ firmware.”P(pán)roceedings of the 18th ACM conference on Computer and communications security. ACM, 2011, pp.3 –16.
[46]Kennell R and Jamieson L H. “Establishing the Genuinity of Remote Computer Systems.” USENIX security. 2003, pp. 21.
[47]Arbaugh W A, Farber D J and Smith J M. “A secure and reliable bootstrap architecture.”Security and Privacy, 1997. Proceedings.,1997 IEEE Symposium on. IEEE, 1997, pp. 65 –71.
[48]Parno B, McCune J M and Perrig A. “Bootstrapping trust in commodity computers.”Security and privacy (SP), 2010 IEEE symposium on. IEEE, 2010, pp. 414 – 429.
[49]Kong J, Koushanfar F, Pendyala P K, et al. “PUFatt: Embedded platform attestation based on novel processor-based PUFs.”P(pán)roceedings of the 51st Annual Design Automation Conference.ACM, 2014, pp. 1 – 6.
[50]Kovah X, Kallenberg C, Weathers C, et al. “New results for timing-based attestation.”Security and Privacy (SP), 2012 IEEE Symposium on. IEEE, 2012, pp. 239 –253.
[51]Forrest S, Somayaji A and Ackley D H. “Building diverse computer systems.”O(jiān)perating Systems, 1997., The Sixth Workshop on Hot Topics in. IEEE, 1997, pp. 67-72.
[52]Sliesarieva E G B. “Automated Methods for Creating Diversity in Computer Systems.” The University of New Mexico, 2005.
[53]Chew M and Song D. “Mitigating buffer overflows by operating system randomization.”. 2002.
[54]Bhatkar S, DuVarney D C and Sekar R. “Efficient Techniques for Comprehensive Protection from Memory Error Exploits.”Usenix Security. 2005.
[55]Giuffrida C, Kuijsten A and Tanenbaum A S. “Enhanced Operating System Security Through Efficient and Fine-grained Address Space Randomization.”USENIX Security Symposium. 2012, pp.475-490.
[56]Kil C, Jun J, Bookholt C, et al. “Address space layout permutation(ASLP): Towards fine-grained randomization of commodity software.”Computer Security Applications Conference, 2006.ACSAC'06. 22nd Annual. IEEE, 2006, pp. 339-348.
[57]Rodes B. “Stack layout transformation: Towards diversity for securing binary programs.”P(pán)roceedings of the 34th International Conference on Software Engineering. IEEE Press, 2012, pp.1543-1546.
[58]Trivedi K S, Vaidyanathan K and Goseva-Popstojanova K.“Modeling and analysis of software aging and rejuvenation.”Simulation Symposium, 2000.(SS 2000) Proceedings. 33rd Annual.IEEE, 2000, pp. 270-279.
[59]Patterson D, Brown A, Broadwell P, et al. Recovery-oriented computing (ROC): Motivation, definition, techniques, and case studies. Technical Report UCB//CSD-02-1175, UC Berkeley Computer Science, 2002.
[60]Candea G, Cutler J, Fox A, et al. “Reducing recovery time in a small recursively restartable system.”Dependable Systems and Networks, 2002. DSN 2002. Proceedings. International Conference on. IEEE, 2002, pp. 605-614.
[61]Avizienis A and Chen L. “On the implementation of N-version programming for software fault tolerance during execution.”P(pán)roc.IEEE COMPSAC. 1977, 77, pp. 149-155.
[62]Horning J J, Lauer H C, Melliar-Smith P M, et al. “A program structure for error detection and recovery.”O(jiān)perating Systems.1974, pp. 171-187.
[63]Koo R and Toueg S. “Checkpointing and rollback-recovery for distributed systems.”IEEE Transactions on software Engineering,1987 (1), pp. 23-31.
[64]Golding R and Borowsky E. “Fault-tolerant replication management in large-scale distributed storage systems.”Reliable Distributed Systems, 1999. Proceedings of the 18th IEEE Symposium on.IEEE, 1999, pp. 144-155.
[65]Jurkovic G and Sruk V. “Remote firmware update for constrained embedded systems.”Information and Communication Technology,Electronics and Microelectronics (MIPRO), 2014 37th International Convention on.IEEE, 2014, pp. 1019-1023.
[66]Dong W, Liu Y, Chen C, et al. “R2: Incremental reprogramming using relocatable code in networked embedded systems.”IEEE Transactions on Computers, 2013, 62(9), pp. 1837-1849.
[67]Shafi N B, Ali K and Hassanein H S. “No-reboot and zero-flash over-the-air programming for wireless sensor networks.”Sensor,Mesh and Ad Hoc Communications and Networks (SECON), 2012 9th Annual IEEE Communications Society Conference on. IEEE,2012, pp. 371-379.
[68]Cam-Winget N, Sadeghi A R and Jin Y. “Invited: Can IoT be secured: Emerging challenges in connecting the unconnected."Design Automation Conference (DAC), 2016 53nd ACM/EDAC/IEEE. IEEE, 2016, pp. 1-6.
[69]Enck W, Gilbert P, Han S, et al. “TaintDroid: an information-flow tracking system for realtime privacy monitoring on smartphones.”ACM Transactions on Computer Systems (TOCS), 2014, 32(2),pp.5.
[70]Bosman E, Slowinska A and Bos H. “Minemu: The world’s fastest taint tracker.”International Workshop on Recent Advances in Intrusion Detection. Springer Berlin Heidelberg, 2011, pp. 1-20.
[71]Newsome J and Song D. “Dynamic taint analysis for automatic detection, analysis, and signature generation of exploits on commodity software.” 2005.
[72]Schwartz E J, Avgerinos T and Brumley D. “All you ever wanted to know about dynamic taint analysis and forward symbolic execution (but might have been afraid to ask).”Security and privacy(SP), 2010 IEEE symposium on. IEEE, 2010, pp. 317-331.
[73]Abera T, Asokan N, Davi L, et al. “C-FLAT: control-flow attestation for embedded systems software.”P(pán)roceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security. ACM, 2016, pp. 743-754.
[74]Abadi M, Budiu M, Erlingsson U, et al. “Control-flow integrity.”P(pán)roceedings of the 12th ACM conference on Computer and communications security. ACM, 2005, pp. 340-353.
[75]Hu H, Shinde S, Adrian S, et al. “Data-oriented programming: On the expressiveness of non-control data attacks.”Security and Privacy (SP), 2016 IEEE Symposium on. IEEE, 2016, pp. 969-986.
[76]Fora P O. “Beginners guide to reverse engineering android apps.”RSA Conference. 2014, pp. 21 –22.
[77]Khalid H, Nagappan M and Hassan A E. “Examining the Relationship between FindBugs Warnings and App Ratings.”IEEE Software, 2016, 33(4), pp. 34 – 39.
[78]Fernandes E, Paupore J, Rahmati A, et al. “Flowfence: Practical data protection for emerging iot application frameworks.”USENIX Security Symposium. 2016.
[79]Jia Y J, Chen Q A, Wang S, et al. “ContexIoT: Towards Providing Contextual Integrity to Appified IoT Platforms.” 2017.
[80]INC. H. HP Study Reveals 70 Percent of Internet of Things Devices Vulnerable to Attack[EB/OL]. 2017 [2017.3].http://www8.hp.com/us/en/hp-news/press-release.html?id=174467 6#.WMEH1YGGO01.
[81]Mario B and Candid W. “Insecurity in the Internet of Things.”Security Response, 2015.
[82]張耀輝等. 網(wǎng)絡(luò)安全與管理 [EB/OL]. 2017 [2017.3]. http://ptr.chaoxing.com/nodedetailcontroller/visitnodedetail?knowledgeId=3307688.
[83]Duan Z, Yuan X and Chandrashekar J. “Constructing Inter-Domain Packet Filters to Control IP Spoofing Based on BGP Updates.”INFOCOM. 2006.
[84]Abad C L and Bonilla R I. “An analysis on the schemes for detecting and preventing ARP cache poisoning attacks.”Distributed Computing Systems Workshops, 2007. ICDCSW’07. 27th International Conference on. 2007, pp. 60 – 69.
[85]Yamamoto K, Yamaguchi M, Miyamaru F, et al. “Noninvasive inspection of C-4 explosive in mails by terahertz time-domain spectroscopy.”Japanese journal of applied physics, 2004, 43(3B):L414.
[86]Irani D, Balduzzi M, Balzarotti D, et al. “Reverse social engineering attacks in online social networks.”International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment. 2011, pp. 55 –74.
[87]OWASP. Internet of Things Top Ten[EB/OL].2017[2017.4]https://www.owasp.org/images/7/71/Internet_of_Things_Top_Ten_2014-OWASP.pdf
[88]Hamad H, Saad M, and Abed R. “Performance Evaluation of RESTful Web Services for Mobile Devices.”Int. Arab J.e-Technol. 2010, 1(3), pp. 72 – 78.
[89]Hunkeler U, Truong H L and Stanford-Clark A. “MQTT-S—A publish/subscribe protocol for Wireless Sensor Networks.”Communication systems software and middleware and workshops,2008. comsware 2008. 3rd international conference on. IEEE,2008, pp. 791 – 798.
[90]Iivari A, V?is?nen T, Ben Alaya M, et al. “Harnessing XMPP for Machine-to-Machine Communications & Pervasive Applications.”Journal of Communications Software & Systems, 2014,10(3).
[91]Zanella A, Bui N, Castellani A, et al. “Internet of things for smart cities”.IEEE Internet of Things journal, 2014, 1(1), pp. 22 – 32.
[92]Ukil A, Sen J and Koilakonda S. “Embedded security for Internet of Things.”Emerging Trends and Applications in Computer Science (NCETACS), 2011 2nd National Conference on. IEEE, 2011,pp. 1 –6.
[93]ANKER. MQTT 協(xié)議工作筆記 [EB/OL]. 2017 [2017.3]. http://www.cnblogs.com/Anker/p/5353221.html.
[94]跬步者. 四大物聯(lián)網(wǎng)協(xié)議介紹 [EB/OL]. 2017 [2017.3]. http://www.cnblogs.com/jhj117/p/5521083.html.
[95]FREEBUF. HackPwn: TCL智能洗衣機(jī)破解細(xì)節(jié)分析[EB/OL].2017 [2017.3]. http://www.freebuf.com/news/76071.html.
[96]馬萬(wàn)明. IoT MQTT CoAP XMPP[EB/OL]. 2017 [2017.4].http://blog.csdn.net/mawming/article/details/51938890.
[97]深圳歐德蒙科技有限公司. 智能硬件設(shè)備安全問(wèn)題詳解[EB/OL]. 2017 [2017.4].http://www.oudmon.com/article/56.shtml
[98]雷鋒網(wǎng). 黑客告訴你, 315晚會(huì)上的智能產(chǎn)品是怎樣被黑的[EB/OL].2017 [2017.4]. http://www.leiphone.com/news/201603/ZgctCsNzSxMW5G0R.html.
[99]Abduvaliyev A, Pathan A S K, Zhou J, et al. “On the vital areas of intrusion detection systems in wireless sensor networks.”IEEE Communications Surveys & Tutorials, 2013, 15(3), pp. 1223 –1237.
[100]Pongle P and Chavan G. “Real time intrusion and wormhole attack detection in internet of things.”International Journal of Computer Applications. 2015, 121(9).
[101]Wallgren L, Raza S and Voigt T. “Routing Attacks and Countermeasures in the RPL-based Internet of Things.”International Journal of Distributed Sensor Networks, 2013.
[102]Alliance C S. Security Guidance for Early Adopters of the Internet of Things [EB/OL]. 2017 [2017.3]. https://downloads. Cloudsecurityalliance.org/whitepapers/Security_Guidance_for_Early_Adopters_of_t he_Internet_of_Things.pdf.