工業(yè)物聯(lián)網(wǎng)蜜罐、蜜網(wǎng):一種重要的IIoT安全手段
?1、工業(yè)物聯(lián)網(wǎng)及相似定義
工業(yè)物聯(lián)網(wǎng)(IIoT, Industrial Internet of Things)的定義是利用工業(yè)通信技術(shù)將物聯(lián)網(wǎng)技術(shù)應(yīng)用到自動化領(lǐng)域[1]。與之相似的有兩個概念:物聯(lián)網(wǎng)和信息物理系統(tǒng)。
1.1 工業(yè)物聯(lián)網(wǎng)與物聯(lián)網(wǎng)
物聯(lián)網(wǎng)(IoT, Internet of Things)是一個由互聯(lián)網(wǎng)連接的設(shè)備組成的網(wǎng)絡(luò),如傳感器、執(zhí)行器和其他能夠收集數(shù)據(jù)和進行通信的嵌入式設(shè)備。
根據(jù)定義,IIoT是IoT利用工業(yè)通信技術(shù)在自動化領(lǐng)域的應(yīng)用,而物聯(lián)網(wǎng)IoT作為工業(yè)物聯(lián)網(wǎng)IIoT的基礎(chǔ),其應(yīng)用深入我們生活的每個角落。傳感器、執(zhí)行器、可穿戴設(shè)備、嵌入式設(shè)備和許多其他IoT設(shè)備隨處可見,建筑、城市、交通、汽車、制造業(yè)、關(guān)鍵(核反應(yīng)堆、發(fā)電廠、煉油廠等)和非關(guān)鍵基礎(chǔ)設(shè)施以及農(nóng)業(yè)等各種環(huán)境中都有IoT的應(yīng)用。
1.2 信息物理系統(tǒng)
信息物理系統(tǒng)(CPS, Cyber-Physical System)是由傳感器、執(zhí)行器、可編程邏輯控制器PLC、遠程終端單元RTU、智能電子設(shè)備IED和其他嵌入式設(shè)備組成的網(wǎng)絡(luò),用于監(jiān)測和控制關(guān)鍵和非關(guān)鍵應(yīng)用領(lǐng)域中的物理過程。
CPS的應(yīng)用場景包括但不限于工業(yè)控制系統(tǒng)ICS、智能電網(wǎng)、其他智能基礎(chǔ)設(shè)施(如水、煤氣、建筑自動化)、醫(yī)療設(shè)備和智能汽車[2], [3]??偟膩碚f,IIoT因其工作環(huán)境的特殊性(封閉系統(tǒng))而與CPS密不可分。
從定義上看,IoT、CPS和IIoT三個概念其實十分相似,并無太大區(qū)別。NIST的一份特別報告中指出,IoT和CPS的不同之處在于,IoT更強調(diào)物理世界中的信息與網(wǎng)絡(luò)相關(guān)技術(shù),而CPS更貼近于一種封閉系統(tǒng)實現(xiàn),更側(cè)重于感知和信息交換控制[4]。在上述基礎(chǔ)上,IIoT因同時具有兩者的特征而進一步連接了IoT和CPS的定義。
2、工業(yè)物聯(lián)網(wǎng)蜜罐、蜜網(wǎng)
2.1 常見的工業(yè)物聯(lián)網(wǎng)安全機制
為了保護IIoT環(huán)境下的工業(yè)設(shè)備,在工業(yè)網(wǎng)絡(luò)中常采用多種網(wǎng)絡(luò)防御手段,如密碼學加密、使用防火墻、搭載入侵檢測系統(tǒng)IDS和入侵防御系統(tǒng)IPS、采用防病毒和反惡意軟件解決方案等。我國現(xiàn)行的工業(yè)無線網(wǎng)絡(luò)規(guī)范國家標準定義的工業(yè)網(wǎng)絡(luò)協(xié)議包含3層:物理層、鏈路層和應(yīng)用層,它在安全管理上也采用了多種安全機制,如CCM*加密模式(廣泛應(yīng)用于IEEE 802.x協(xié)議和BLE協(xié)議),配置基于時間戳和nonce的防重放攻擊手段等安全機制[5]。
2.2 傳統(tǒng)工業(yè)物聯(lián)網(wǎng)安全機制面臨的挑戰(zhàn)
因IIoT環(huán)境的特殊性,對各設(shè)備在資源限制、網(wǎng)絡(luò)壽命和QoS等方面有著獨特要求,這也對IIoT環(huán)境的安全防御能力發(fā)出了巨大的挑戰(zhàn)。IoT是IIoT的基礎(chǔ),IoT設(shè)備通常具有有限的電源、存儲、計算和通信資源,這尤其在IIoT利用工業(yè)通信設(shè)備在自動化領(lǐng)域部署這一工作環(huán)境下,對其能采用的安全機制有著相當?shù)南拗?。而另一方面,IIoT環(huán)境中使用的設(shè)備設(shè)計之初并沒有考慮安全性。舉例來說,在工業(yè)生產(chǎn)中,工業(yè)網(wǎng)絡(luò)通常需要滿足低時延、低功耗、高可靠性和高穩(wěn)定性等要求,在這樣的前提下,IIoT/CPS的應(yīng)用環(huán)境都被認為是默認安全且孤立的。這種模糊的安全假設(shè)在2010年被廣為人知的“震網(wǎng)”病毒打破。這個例子說明傳統(tǒng)靜態(tài)的“隱式信任”模型亟需重構(gòu)革新,“零信任”在網(wǎng)絡(luò)實施中的核心思想——去除隱式信任也同樣是為解決這類問題而生??紤]到零信任相關(guān)技術(shù)、規(guī)范并未發(fā)展成熟,且本文主要對IIoT蜜罐和蜜網(wǎng)進行介紹,這里不對零信任原則過多贅述。隨著越來越多的工業(yè)環(huán)境被連接到互聯(lián)網(wǎng),數(shù)十年不會更換的工業(yè)設(shè)備其安全機制的更新也已成為嚴重問題。
2.3 蜜罐、蜜網(wǎng)及其在工業(yè)物聯(lián)網(wǎng)的應(yīng)用
傳統(tǒng)的IIoT安全機制對安全研究人員發(fā)現(xiàn)并分析攻擊者攻擊方式(以及防御應(yīng)對)并不透明。蜜罐用以吸引攻擊者并欺騙其認為自己已獲得了對真實系統(tǒng)的訪問,是一種以被攻擊和可能被破壞為目的而使用的工具,而在一個系統(tǒng)上實現(xiàn)的兩個或多個蜜罐組成一個蜜網(wǎng)[6], [7]。蜜罐可以與防火墻和IDS集成為IPS,以捕獲攻擊者的有關(guān)信息,研究他們的所有行為,并開發(fā)可以防止未來可能的攻擊的安全方案。
實際使用時,蜜罐和蜜網(wǎng)可以部署在不同的位置,例如云計算環(huán)境、企業(yè)網(wǎng)絡(luò)的隔離區(qū) (DMZ區(qū))、實際應(yīng)用程序/生產(chǎn)環(huán)境(在IoT、IIoT或CPS網(wǎng)絡(luò)中)以及具有公共 IP 地址的私有部署環(huán)境中,其基礎(chǔ)蜜網(wǎng)架構(gòu)如圖1所示[8]。不同環(huán)境的選項有其自身的優(yōu)點和缺點;此外,部署環(huán)境不同,最適合該環(huán)境的蜜罐或蜜網(wǎng)類型也不同。
圖1 基礎(chǔ)蜜網(wǎng)架構(gòu)
IIoT的部署環(huán)境十分廣泛,Javier等的研究將蜜網(wǎng)在IIoT的應(yīng)用環(huán)境分為了6個大部分,分別為工業(yè)控制系統(tǒng)ICS、智能電網(wǎng)、水系統(tǒng)、燃氣線路、樓宇自動化系統(tǒng)和綜合IIoT蜜網(wǎng),并從技術(shù)發(fā)展上對其進行了分類,圖2是適用IIoT的蜜罐、蜜網(wǎng)分類,圖3則描繪了IIoT蜜罐、蜜網(wǎng)的發(fā)展歷史[8]。作為現(xiàn)有蜜罐的主要目標應(yīng)用領(lǐng)域之一,一半以上的IIoT蜜罐都是針對ICS環(huán)境而設(shè)計。雖然針對特定IIoT應(yīng)用的餌較少(大多數(shù)研究是針對ICS的),但類似的工業(yè)設(shè)備(如PLC)仍被ICS和智能基礎(chǔ)設(shè)施(如電網(wǎng)、水、天然氣)所使用。
圖2 適用IIoT的蜜罐、蜜網(wǎng)分類
圖3 IIoT蜜罐、蜜網(wǎng)的發(fā)展
IIoT蜜網(wǎng)始于2004年思科的SCADA HoneyNet項目。SCADA HoneyNet是基于Honeyd的開源蜜罐框架,是一個低交互蜜網(wǎng),支持模擬在PLC上運行的Modbus/TCP、FTP、Telnet和HTTP服務(wù)。Berman在美國空軍技術(shù)研究所發(fā)布的2012年的論文是在文獻中針對IIoT蜜罐、蜜網(wǎng)進行的第一個研究,次年第二篇該領(lǐng)域論文同樣是在美國空軍技術(shù)研究所發(fā)布,而這兩篇論文的發(fā)布時間正好對應(yīng)于震網(wǎng)病毒的時代。2013年,史上最受歡迎的ICS蜜罐Conpot開源項目完成,Trend Micro Research的Wilhoit發(fā)布了他們的低交互ICS蜜罐白皮書,這也為后來大量的IIoT/CPS方向的蜜罐、蜜網(wǎng)研究實踐注入了新的動力。
IIoT低交互蜜罐可以提供掃描、目標協(xié)議、攻擊源和暴力嘗試有關(guān)的有價值信息。另一方面,只有通過中/高交互蜜罐,才有可能發(fā)現(xiàn)并分析其他更高級的攻擊、對具體工業(yè)協(xié)議及流程的攻擊。IIoT高交互蜜罐允許攻擊者對系統(tǒng)進行破壞,或利用蜜罐進行一些其他攻擊行為,所以部署高交互蜜罐是一個很危險的行為,尤其是在IIoT這種具有特殊要求的環(huán)境,更不用說工業(yè)設(shè)備的高成本是IIoT蜜罐使用虛擬資源而非物理設(shè)備的最大驅(qū)動因素之一。
IIoT環(huán)境因其獨特的要求和功能,使得包括蜜罐在內(nèi)的安全工具,即使有著很先進前沿的研究,卻始終難以在這些領(lǐng)域積極部署應(yīng)用。就蜜罐的用途而言,大多數(shù)蜜罐和蜜網(wǎng)都只有著研究目的而沒有生產(chǎn)目的。SCADA設(shè)備需要連續(xù)工作,能夠中斷和停機的情況少之又少。除此之外,工業(yè)設(shè)備一般有高度的時效限制,需要嚴格保證響應(yīng)時間。因此,在未部署蜜罐的ICS生產(chǎn)環(huán)境中插入蜜罐,或?qū)σ驯惶蕴虬姹韭浜蟮拿酃捱M行更新是非常困難的,這些行為極大可能影響ICS通信,并對系統(tǒng)有破壞風險(高交互蜜罐)。
最常被用于在IIoT蜜罐、蜜網(wǎng)中檢測/測試的攻擊是掃描(scanning)攻擊。大多數(shù)研究都對掃描攻擊進行了不同時間周期的測試,這些蜜罐能統(tǒng)計掃描次數(shù)、進行流量分析、借助現(xiàn)有庫判斷掃描源合法性等。除了DoS和DDoS,SSH、暴力嘗試和中間人攻擊也是特定的蜜罐和蜜網(wǎng)環(huán)境中的重點檢測對象。一些雖然沒有上述攻擊那么常見的,像勒索軟件、挖礦后臺等惡意軟件和一些針對ICS的特定攻擊,例如HAVEX RAT、PLC Blaster和tank overflow攻擊也是防護重點。
Linux是蜜罐和蜜網(wǎng)主流的操作系統(tǒng)環(huán)境,除此之外還有FreeBSD。編程語言上,Python最為流行,C/C++和Java也有使用。這應(yīng)該與這些語言有支持工業(yè)協(xié)議的庫有關(guān),例如Python有Modbustk、pymodbus和cpppo EtherNet/IP庫;C/C++有l(wèi)ibiec61850和OpenDNP3庫;Java有JAMOD Modbus庫[8]。Conpot蜜罐作為最流行的IIoT/CPS開源蜜罐,也是用Python編寫的。
2.4 總結(jié)與啟發(fā)
IIoT環(huán)境十分特殊,任何蜜罐/蜜網(wǎng)在開發(fā)之初,應(yīng)考慮其目標應(yīng)用領(lǐng)域、目的、成本、部署環(huán)境、所提供/模擬的服務(wù)、與攻擊者預(yù)期交互程度、所消耗資源、所需工具、指紋識別性以及可能出現(xiàn)的實際責任問題等。此外,IIoT的蜜罐/蜜網(wǎng)從應(yīng)用到部署,也需要事先進行多方面考量:例如對哪些具體應(yīng)用、具體工業(yè)協(xié)議、部署在網(wǎng)絡(luò)的位置、資源分配(如何保證工業(yè)生產(chǎn)通信、控制資源)等。
IIoT蜜罐/蜜網(wǎng)是一種重要的安全手段,該領(lǐng)域一直以來也是非?;钴S的研究領(lǐng)域,如何將現(xiàn)有的前沿研究實際應(yīng)用至生產(chǎn)環(huán)境,與其他安全手段配合,起到更好保護IIoT環(huán)境的作用,則是我們未來更需關(guān)注的部分。