隨著物聯(lián)網(wǎng)行業(yè)的發(fā)展,物聯(lián)網(wǎng)(IOT)的安全也會越來越重要。一旦出現(xiàn)網(wǎng)絡(luò)攻擊事件,,將有可能造成物聯(lián)網(wǎng)設(shè)備失控,、采集到的信息被篡改,物聯(lián)網(wǎng)平臺中的敏感數(shù)據(jù)泄漏等嚴重后果,。
在探討物聯(lián)網(wǎng)的安全建設(shè)之前,首先科普一下物聯(lián)網(wǎng)的常見架構(gòu)。
1,、物聯(lián)網(wǎng)的網(wǎng)絡(luò)架構(gòu)
有些物聯(lián)網(wǎng)設(shè)備可以直接跟物聯(lián)網(wǎng)應(yīng)用系統(tǒng)通信,整個系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)比較簡單,。
但很多簡單的物聯(lián)網(wǎng)設(shè)備需要網(wǎng)關(guān)作為中轉(zhuǎn),。這些物聯(lián)網(wǎng)設(shè)備通常配置都比較低,帶寬,、電池,、性能都有限,只能采用一些非IP的協(xié)議,,沒法直接在互聯(lián)網(wǎng)中傳輸,。這些設(shè)備可以先連接到區(qū)域內(nèi)的物聯(lián)網(wǎng)網(wǎng)關(guān),網(wǎng)關(guān)進行協(xié)議轉(zhuǎn)換后,,再向上傳輸數(shù)據(jù),。
為了讓應(yīng)用系統(tǒng)更專注于業(yè)務(wù)邏輯的處理,物聯(lián)網(wǎng)系統(tǒng)的設(shè)備管理,、數(shù)據(jù)預(yù)處理等等基礎(chǔ)服務(wù)通常會抽離出來,,單獨形成一個物聯(lián)網(wǎng)平臺。
物聯(lián)網(wǎng)平臺是應(yīng)用系統(tǒng)的基礎(chǔ)平臺,,負責管理物聯(lián)網(wǎng)設(shè)備和連接,,以及對采集的數(shù)據(jù)進行處理,、建模。處理好的數(shù)據(jù)存在平臺中,,隨時被應(yīng)用系統(tǒng)調(diào)用,。
2、物聯(lián)網(wǎng)設(shè)備
物聯(lián)網(wǎng)設(shè)備常常用于采集數(shù)據(jù)和遠程控制,。物聯(lián)網(wǎng)設(shè)備的種類很多,,攝像頭、溫度傳感器,、智能水表等等都是物聯(lián)網(wǎng)設(shè)備,。
物聯(lián)網(wǎng)設(shè)備往往缺少防護能力,容易被攻擊者入侵,,導(dǎo)致整個物聯(lián)網(wǎng)系統(tǒng)都受到威脅,。
(1)性能捉急,,很少升級補漏洞
低功耗設(shè)備充電難,,所以常常為了降低消耗而犧牲安全。為了降低消耗,,IOT設(shè)備會采用簡單的網(wǎng)絡(luò)協(xié)議,、小型的操作系統(tǒng)。
安全功能被認為是最不重要的組件,,通常會被砍掉,。有的設(shè)備會完全不考慮以后要升級、打補丁,、修復(fù)漏洞,。
(2)設(shè)備類型多,,難以統(tǒng)一管控
一個IOT項目如果涉及了多種設(shè)備,、多個供應(yīng)商,那么這個項目會很難進行統(tǒng)一的安全性要求,。
例如,,一個很基本的安全要求--給每個設(shè)備分配一個合法身份標識,防止黑客偽裝成合法設(shè)備接入物聯(lián)網(wǎng)平臺竊取數(shù)據(jù),。
這個要求就很難實現(xiàn),。因為設(shè)備種類很多,沒有一個統(tǒng)一的屬性作為身份ID,。除非系統(tǒng)集成商非常強勢,,否則根本無法要求設(shè)備供應(yīng)商定制設(shè)備硬件,燒錄一個統(tǒng)一的ID進去,。
?。?)現(xiàn)場設(shè)備更易受攻擊
IOT設(shè)備部署在公共場所的話,,很容易受到物理安全風險的影響。黑客可能會嘗試通過設(shè)備接口攻入,。
無線通信的IOT設(shè)備更容易被攻擊,。只要在網(wǎng)絡(luò)傳輸覆蓋范圍內(nèi),理論上任何人都有可能接入網(wǎng)絡(luò)或?qū)W(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)進行竊聽,。
如果IOT設(shè)備與后端業(yè)務(wù)處于直連狀態(tài),,大量無人值守的接入終端會被黑客利用,。攻擊者可利用分散在各處的單個設(shè)備逐步滲透到整個網(wǎng)絡(luò)中,,對核心業(yè)務(wù)系統(tǒng)展開攻擊,甚至竊取保密信息,。
3,、物聯(lián)網(wǎng)網(wǎng)關(guān)
物聯(lián)網(wǎng)網(wǎng)關(guān)最重要的作用就是協(xié)議轉(zhuǎn)換。IOT設(shè)備的通信協(xié)議非常多樣,,碎片化嚴重,。IOT網(wǎng)關(guān)統(tǒng)一對接各種協(xié)議的設(shè)備,把各類協(xié)議(如ZigBee,、Lora,、藍牙)統(tǒng)一轉(zhuǎn)換為標準協(xié)議(如MQTT、HTTP),,與IOT平臺通信的協(xié)議,。網(wǎng)關(guān)相當于IOT設(shè)備和平臺之間的橋梁。
有的IOT網(wǎng)關(guān)也負責邊緣計算和存儲,,這類網(wǎng)關(guān)往往價格更貴,。例如,安全攝像機不需要全部數(shù)據(jù)都上傳,,把異常情況的視頻過濾出來上傳就行,。網(wǎng)關(guān)進行了預(yù)處理,就可以減少傳輸需求,。
IOT網(wǎng)關(guān)是第一道安全防線,。連接到網(wǎng)關(guān)之后,眾多IOT設(shè)備不再暴露在互聯(lián)網(wǎng)上,,只有網(wǎng)關(guān)是暴露的,。這樣,惡意軟件和網(wǎng)絡(luò)攻擊的首要目標就變成了網(wǎng)關(guān),。
4,、物聯(lián)網(wǎng)網(wǎng)絡(luò)協(xié)議
不同的物聯(lián)網(wǎng)設(shè)備會使用不同的網(wǎng)絡(luò)協(xié)議。物理層和鏈路層的協(xié)議五花八門,,有近距離的,、有遠距離的,、有有線的、有無線的,、有需要網(wǎng)關(guān)的,、有不用網(wǎng)關(guān)的,非常多樣,。應(yīng)用層最常用的物聯(lián)網(wǎng)協(xié)議是MQTT協(xié)議,,數(shù)據(jù)以JSON格式傳輸。
MQTT是一種輕量級的,、基于代理的“發(fā)布/訂閱”模式的消息傳輸協(xié)議,。MQTT協(xié)議的特點是簡潔、小巧,、省流量,、省電。
MQTT協(xié)議最初的目的只是傳輸,,在安全方面比較弱,。MQTT協(xié)議中包含客戶端標識以及用戶名和密碼,客戶端標識可以使用芯片的MAC地址或者芯片序列號,,用來驗證IOT設(shè)備的身份,。MQTT協(xié)議基于TCP,以明文傳輸,。如果不用TLS加密,,很容易受到中間人攻擊。但是使用TLS加密就需要耗費更多資源,,設(shè)備的成本會更高,。
5、物聯(lián)網(wǎng)平臺和應(yīng)用
物聯(lián)網(wǎng)平臺是系統(tǒng)安全的中央控制點,。物聯(lián)網(wǎng)設(shè)備和身份的管理一般都在平臺層,。安全性是跨越整個生態(tài)系統(tǒng)的??刂屏诉@層就可以輕松控制整個網(wǎng)絡(luò),,所以這層會吸引越來越多的攻擊者。
設(shè)備管理模塊應(yīng)該對各種設(shè)備的狀態(tài)進行全天候檢測,、預(yù)測和評估,。保證生產(chǎn)線和客戶現(xiàn)場的設(shè)備高質(zhì)量運行。一旦發(fā)生異常,,應(yīng)該及時觸發(fā)報警,。
身份管理模塊對所有設(shè)備進行身份驗證。
策略管理模塊對訪問權(quán)限進行配置,。使平臺有能力及時中斷非法的連接和會話,。
物聯(lián)網(wǎng)平臺和物聯(lián)網(wǎng)應(yīng)用本身所面臨的安全問題與普通應(yīng)用幾乎一樣,,這里不再贅述。
6,、物聯(lián)網(wǎng)行業(yè)現(xiàn)狀
?。?)安全意識薄弱
只有特別重視安全的項目才會考慮安全性。很多傳統(tǒng)行業(yè)缺乏網(wǎng)絡(luò)安全意識和經(jīng)驗,,長期忽視安全,,產(chǎn)生了很多安全問題。知名的Shodan IoT搜索引擎發(fā)現(xiàn),,互聯(lián)網(wǎng)上暴露了將近五萬個MQTT服務(wù)器,。其中,大約有三萬臺沒有密碼保護,。
?。?)法律監(jiān)管正在起步
如果沒有任何法規(guī),,設(shè)備制造商不會在安全性上花錢,。目前,國內(nèi)已經(jīng)出臺了物聯(lián)網(wǎng)的等保要求,。相信未來物聯(lián)網(wǎng)行業(yè)會越來越重視安全,。
7、常見的物聯(lián)網(wǎng)攻擊
近年來,,針對物聯(lián)網(wǎng)的攻擊逐年增多,。例如針對網(wǎng)絡(luò)攝像頭、智能門鎖的攻擊,,造成了大量敏感數(shù)據(jù)泄露,、財產(chǎn)損失。還有著名的物聯(lián)網(wǎng)僵尸病毒Mirai曾導(dǎo)致美國,、德國大面積斷網(wǎng),。
總結(jié)近年來的安全事件,其中常見的物聯(lián)網(wǎng)攻擊類型包括:
?。?)IOT設(shè)備盜用,、物理篡改
(2)針對暴露在互聯(lián)網(wǎng)上的設(shè)備,、網(wǎng)關(guān),、服務(wù)器的DDoS攻擊
(3)物聯(lián)網(wǎng)通信的攔截,、竊密,、重定向
(4)身份欺騙和偽裝,,密碼爆破,,構(gòu)造虛假控制報文注入
?。?)協(xié)議竊聽、惡意基站中間人攻擊
?。?)物聯(lián)網(wǎng)木馬,、惡意軟件
(7)利用漏洞,,利用不安全的OTA更新方法進行軟件和固件攻擊
?。?)利用過度授權(quán),進行橫向攻擊
8,、零信任安全方案
目前市面上專門針對物聯(lián)網(wǎng)的零信任產(chǎn)品寥寥無幾,,不過零信任理念與物聯(lián)網(wǎng)場景是非常契合的。做物聯(lián)網(wǎng)項目時,,可以參考零信任架構(gòu),,完善系統(tǒng)的安全機制。
?。?)身份是零信任的基礎(chǔ)
每個設(shè)備都應(yīng)該具有唯一的身份標識,,以便網(wǎng)關(guān)或平臺驗證設(shè)備的身份,攔截非法設(shè)備,,持續(xù)記錄合法設(shè)備的行為日志,。
(1.1)MAC地址是最簡單的身份標識,,比較容易被仿造,。
(1.2)采集設(shè)備的更多信息如MAC,、IP,、系統(tǒng)等等,組合生成設(shè)備指紋,,比單獨的MAC地址更安全,。
(1.3)還可以由物聯(lián)網(wǎng)平臺為設(shè)備單獨分配一個ID,,燒錄到設(shè)備中去,。
(1.4)很多物聯(lián)網(wǎng)平臺通信時會采用雙向認證,,通過在設(shè)備內(nèi)部預(yù)置證書來識別設(shè)備身份,。
(2)持續(xù)驗證,,動態(tài)授權(quán)
“持續(xù)驗證”是零信任的核心理念,。入侵行為是必然會發(fā)生的,所以對每個設(shè)備都應(yīng)該持續(xù)評估其安全信任等級,一旦發(fā)現(xiàn)異常,,立即進行隔離,,避免出現(xiàn)更大損失。
?。?.1)檢測設(shè)備是否有漏洞,,如果設(shè)備系統(tǒng)版本過低,存在高危漏洞,,則應(yīng)該隔離該設(shè)備,,直到設(shè)備升級之后,才能繼續(xù)接入物聯(lián)網(wǎng),。
?。?.2)對設(shè)備的行為規(guī)律建模,檢測近期是否存在異常行為,,如越權(quán)訪問其他端口,、異常的訪問次數(shù)、異常的流量大小,、異常的訪問時間等等,。因為物聯(lián)網(wǎng)設(shè)備的行為相對固定,所以一旦發(fā)現(xiàn)異常行為,,應(yīng)立即告警,。
?。?)零信任網(wǎng)關(guān)減小攻擊面
零信任架構(gòu)中的核心部分是“安全網(wǎng)關(guān)”,。零信任網(wǎng)關(guān)一般部署在網(wǎng)絡(luò)入口,合法用戶在零信任客戶端登錄之后,,才能通過網(wǎng)關(guān)進入網(wǎng)絡(luò),。
零信任網(wǎng)關(guān)與物聯(lián)網(wǎng)網(wǎng)關(guān)的作用很類似,不過由于很多物聯(lián)網(wǎng)設(shè)備是啞終端,,沒法安裝零信任客戶端,。所以,沒法把兩種網(wǎng)關(guān)結(jié)合在一起,。
一般市面上常見的物聯(lián)網(wǎng)零信任架構(gòu)是:在物聯(lián)網(wǎng)網(wǎng)關(guān)上安裝“零信任客戶端”,,在物聯(lián)網(wǎng)平臺之前部署“零信任網(wǎng)關(guān)”。零信任管控端負責通信過程的策略管控,。
?。?.1)零信任網(wǎng)關(guān)只對合法客戶端開放端口,未知用戶無法探測到零信任網(wǎng)關(guān)和物聯(lián)網(wǎng)平臺的存在,。(具體原理可以看看我的另一篇文章《揭秘零信任里的“隱身”黑科技》)
?。?.2)零信任網(wǎng)關(guān)限制合法客戶端的訪問權(quán)限,未授權(quán)的系統(tǒng)也是無法探測到的。
?。?.3)零信任網(wǎng)關(guān)可以“統(tǒng)一管控”物聯(lián)網(wǎng)和運維人員的接入,,運維人員也需要登錄零信任客戶端才能接入數(shù)據(jù)中心。
?。?.4)零信任網(wǎng)關(guān)的訪問控制功能比簡單的IP白名單更加靈活,,更加安全。如果IOT項目比較復(fù)雜,,那么IP白名單會非常難以維護,。
如果IOT設(shè)備本身比較高端,可以安裝零信任客戶端的話,,那效果會更好,。零信任的保護可以覆蓋整個通信過程。
?。?)零信任保護MQTT服務(wù)器
在一些智能家居的場景中,,MQTT服務(wù)器(MQTT代理)是暴露的,非常容易被黑客利用漏洞攻擊,。
這種場景下,,零信任網(wǎng)關(guān)可以保護MQTT服務(wù)器,只允許安裝了零信任客戶端的用戶設(shè)備訪問,,對其他人都是隱身的,。這樣可以避免被網(wǎng)上爬蟲探測到漏洞,避免黑客入侵控制智能設(shè)備,。(下圖沒畫管控端,,管控端單獨部署即可)
5、總結(jié)
對物聯(lián)網(wǎng)來說,,安全是一件奢侈的事情,。目前,物聯(lián)網(wǎng)處于初級階段,,還在“造橋鋪路”,,顧不上“裝欄桿”。但是對安全非常敏感的物聯(lián)網(wǎng)系統(tǒng)應(yīng)該考慮采用零信任框架,,增強對物聯(lián)網(wǎng)設(shè)備的隔離和訪問控制能力,。