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