武傳坤, 王九如, 崔沂峰,2
1.臨沂大學(xué)信息科學(xué)與工程學(xué)院, 臨沂276000
2.臨沂大學(xué) 物流學(xué)院, 臨沂 276000
物聯(lián)網(wǎng)安全技術(shù)專欄
物聯(lián)網(wǎng)是信息技術(shù)發(fā)展到一定階段的產(chǎn)物, 是信息技術(shù)發(fā)展的第三次浪潮, 是將傳統(tǒng)網(wǎng)絡(luò)虛擬空間與現(xiàn)實(shí)物理空間相結(jié)合的一種信息處理技術(shù).雖然對(duì)物聯(lián)網(wǎng)沒(méi)有一個(gè)嚴(yán)謹(jǐn)?shù)亩x, 但人們普遍能接受的物聯(lián)網(wǎng), 從其內(nèi)涵上說(shuō)是一個(gè)由感知層、網(wǎng)絡(luò)傳輸層和處理應(yīng)用層組成的應(yīng)用系統(tǒng)[1].近年來(lái), 物聯(lián)網(wǎng)的發(fā)展特別迅速, 據(jù) Gartner 預(yù)測(cè)[2], 到2020 年, 物聯(lián)網(wǎng)設(shè)備數(shù)將超過(guò) 200 億個(gè).
物聯(lián)網(wǎng)感知層的功能主要是獲取環(huán)境感知信息, 這些感知信息經(jīng)由網(wǎng)絡(luò)傳輸層的通信網(wǎng)絡(luò)傳輸?shù)教幚響?yīng)用層的數(shù)據(jù)處理中心, 然后數(shù)據(jù)處理中心對(duì)這些數(shù)據(jù)進(jìn)行統(tǒng)一處理, 用于為行業(yè)提供應(yīng)用服務(wù), 從而完成這些數(shù)據(jù)的生命周期.反過(guò)來(lái), 從處理應(yīng)用層下發(fā)的數(shù)據(jù)一般為指令, 這類數(shù)據(jù)經(jīng)過(guò)網(wǎng)絡(luò)傳輸層發(fā)送到感知層, 然后由感知層的相應(yīng)設(shè)備進(jìn)行處理.
當(dāng)感知層設(shè)備獲取的數(shù)據(jù)向處理層傳輸時(shí), 為了保護(hù)數(shù)據(jù)不受攻擊, 需要對(duì)數(shù)據(jù)進(jìn)行安全保護(hù).這種保護(hù)主要針對(duì)數(shù)據(jù)內(nèi)容不被獲取(機(jī)密性保護(hù))、數(shù)據(jù)被非法修改后能識(shí)別(數(shù)據(jù)完整性保護(hù))、數(shù)據(jù)來(lái)源的真實(shí)性(身份認(rèn)證)[3]等方面.這些都是傳統(tǒng)的信息安全保護(hù)技術(shù).但在物聯(lián)網(wǎng)環(huán)境中, 對(duì)信息安全和隱私保護(hù)的技術(shù)也有特殊的要求[4], 例如在互聯(lián)網(wǎng)環(huán)境中重視程度相對(duì)不高的數(shù)據(jù)時(shí)效性或數(shù)據(jù)新鮮性[5],在物聯(lián)網(wǎng)環(huán)境中特別重要.而且由于許多物聯(lián)網(wǎng)設(shè)備資源受限, 因此所能支撐的安全保護(hù)技術(shù)也需要特別定制, 簡(jiǎn)單地說(shuō)就是需要輕量級(jí)信息安全保護(hù)技術(shù), 特別是輕量級(jí)安全認(rèn)證技術(shù)[6], 因?yàn)榘踩J(rèn)證一般通過(guò)協(xié)議完成, 涉及一輪甚至多輪的通信過(guò)程, 而對(duì)資源受限的物聯(lián)網(wǎng)設(shè)備來(lái)說(shuō), 通信所消耗的功耗遠(yuǎn)大于一般密碼學(xué)算法的計(jì)算過(guò)程所消耗的功耗.
除了像傳統(tǒng)信息系統(tǒng)一樣需要信息安全保護(hù)技術(shù), 物聯(lián)網(wǎng)系統(tǒng)還需要控制安全保護(hù)技術(shù)[7], 準(zhǔn)確地說(shuō)是操作安全技術(shù).這類技術(shù)主要用于對(duì)控制指令的保護(hù).當(dāng)來(lái)自數(shù)據(jù)處理中心的數(shù)據(jù)傳輸?shù)礁兄獙拥脑O(shè)備終端時(shí), 這類數(shù)據(jù)一般為控制指令, 要求接收這類數(shù)據(jù)的設(shè)備上傳數(shù)據(jù)或進(jìn)行一定的物理操作, 如控制開(kāi)關(guān)、啟動(dòng)電機(jī)、光照調(diào)節(jié)等等.對(duì)這類控制指令的安全保護(hù)除了需要傳統(tǒng)的信息技術(shù)外, 還需要操作安全,即OT (operational technology) 安全技術(shù).
信息安全也稱為IT (information technology) 安全.操作安全, 即 OT 安全, 是針對(duì)信息安全 (即 IT安全) 來(lái)說(shuō)的.由于操作安全主要針對(duì)物理設(shè)備的控制, 因此很容易跟控制安全混為一談.控制安全主要指對(duì)物理設(shè)備進(jìn)行控制這一過(guò)程的安全問(wèn)題, 強(qiáng)調(diào)穩(wěn)定性、實(shí)時(shí)性、健壯性、可控性.在工業(yè)控制系統(tǒng)中,控制安全是工業(yè)控制系統(tǒng)的安全重點(diǎn), 因?yàn)楸U舷到y(tǒng)的穩(wěn)定運(yùn)行是工業(yè)控制系統(tǒng)中最重要的因素[8].而操作安全則是在控制安全的基礎(chǔ)上, 增加了針對(duì)非法控制攻擊的防護(hù).
網(wǎng)絡(luò)時(shí)代給控制系統(tǒng)帶來(lái)智能化的同時(shí), 也帶來(lái)網(wǎng)絡(luò)安全隱患.當(dāng)一個(gè)工業(yè)控制主機(jī)被黑客入侵后,系統(tǒng)原有的穩(wěn)定性被惡意破壞, 在這種情況下, 僅僅依賴系統(tǒng)自有的控制技術(shù)是不夠的, 還需 IT 安全和OT 安全保護(hù), 其中IT 安全保護(hù)針對(duì)信息系統(tǒng), 而OT 安全保護(hù)針對(duì)惡意操作.
OT 安全包括如下幾個(gè)方面:
(1) 系統(tǒng)的穩(wěn)定性.當(dāng)控制行為通過(guò)信息傳輸方式進(jìn)行遠(yuǎn)程連接時(shí), 控制指令的傳輸以及控制行為執(zhí)行反饋信息需要通過(guò)網(wǎng)絡(luò)進(jìn)行通信.這種網(wǎng)絡(luò)通信需要滿足如下性質(zhì): (a) 網(wǎng)絡(luò)可靠性, 包括通信線路冗余, 信號(hào)冗余, 信息處理設(shè)備冗余等; (b) 通信實(shí)時(shí)性, 使得通信所造成的時(shí)延在運(yùn)行的范圍之內(nèi); (c) 信息抗干擾性, 不會(huì)因?yàn)榕紶柕母蓴_影響到對(duì)信息的正確傳輸和解讀.
(2) 系統(tǒng)的健壯性.控制指令如果大幅度變化, 控制系統(tǒng)應(yīng)如何執(zhí)行這些控制指令.這要根據(jù)系統(tǒng)的屬性來(lái)確定.如果一個(gè)系統(tǒng)通常運(yùn)行平穩(wěn), 突然需要大的變化, 則可能導(dǎo)致系統(tǒng)穩(wěn)定性受影響; 但如果一個(gè)系統(tǒng)大幅度調(diào)整屬于正常現(xiàn)象, 則在設(shè)備能力所能承受的范圍內(nèi), 盡可能按照指令執(zhí)行.
(3) 系統(tǒng)的可控性.一個(gè)控制系統(tǒng)的用戶對(duì)這個(gè)系統(tǒng)的管控權(quán)限可能很有限, 關(guān)鍵的技術(shù)維護(hù)可能需要設(shè)備的生產(chǎn)廠商或運(yùn)營(yíng)廠商提供.為了減少人員交通成本, 許多系統(tǒng)的運(yùn)維需要通過(guò)網(wǎng)絡(luò)完成, 因此控制系統(tǒng)對(duì)生產(chǎn)廠商是開(kāi)放的, 無(wú)論是否信任設(shè)備維護(hù)人員, 都不得不做這樣的選擇.如果用戶有能力自己對(duì)系統(tǒng)的運(yùn)維負(fù)責(zé), 則無(wú)需給生產(chǎn)廠商提供通信接口和訪問(wèn)許可.這方面的問(wèn)題就是系統(tǒng)可控性問(wèn)題.
(4) 控制指令的合法性和真實(shí)性.控制指令的合法性可以在系統(tǒng)中定義, 例如需要保證控制指令對(duì)受控對(duì)象的影響在安全范圍內(nèi).而控制指令的真實(shí)性看上去很像信息安全的認(rèn)證性, 但在物聯(lián)網(wǎng)環(huán)境中, 對(duì)待控制指令的真實(shí)性問(wèn)題, 與傳統(tǒng)的認(rèn)證技術(shù)不完全一致.
物聯(lián)網(wǎng)的OT 安全是傳統(tǒng)信息系統(tǒng)安全技術(shù)不能覆蓋的安全技術(shù).在工業(yè)互聯(lián)網(wǎng)系統(tǒng)中[9,10], OT 安全顯得尤為重要, 例如國(guó)家電網(wǎng)[11], 這是因?yàn)楣I(yè)互聯(lián)網(wǎng)系統(tǒng)最關(guān)心的不是系統(tǒng)有沒(méi)有遭受入侵, 有時(shí)也不怎么關(guān)注工業(yè)控制系統(tǒng)的數(shù)據(jù)被入侵者獲得, 而是最關(guān)心工業(yè)控制系統(tǒng)是否正常工作.現(xiàn)有的工業(yè)控制系統(tǒng)中, 許多控制主機(jī)都是服役多年、配置老舊、系統(tǒng)沒(méi)有經(jīng)常更新甚至沒(méi)有及時(shí)打補(bǔ)丁的狀態(tài), 使得這些系統(tǒng)很容易遭受入侵, 即使與互聯(lián)網(wǎng)之間有物理隔離, 也存在嚴(yán)重的安全風(fēng)險(xiǎn).實(shí)施上, 一些工業(yè)控制系統(tǒng)的主機(jī)已經(jīng)被病毒感染, 但這類病毒是針對(duì)傳統(tǒng)信息系統(tǒng)的病毒, 主要收集重要信息 (如銀行賬戶、用戶密碼等), 不對(duì)系統(tǒng)造成破壞, 更不會(huì)控制終端設(shè)備, 因此在這種狀態(tài)下, 工業(yè)控制系統(tǒng)仍能“帶病工作”.
在 OT 安全方面最危險(xiǎn)的行為是攻擊者偽造的或非法篡改的控制指令被目標(biāo)設(shè)備執(zhí)行, 而不是攻擊者對(duì)入侵設(shè)備本身的破壞, 例如使被入侵的設(shè)備宕機(jī), 或使其失去正常工作能力.前者的攻擊面可以很大,后者只針對(duì)一臺(tái)設(shè)備.
在分析物聯(lián)網(wǎng) OT 安全技術(shù)之前, 先分析一下攻擊者針對(duì)物聯(lián)網(wǎng)系統(tǒng), 包括針對(duì)特定的物聯(lián)網(wǎng)設(shè)備,如何實(shí)施非法入侵和非法控制.
首先, 攻擊者需要找到攻擊目標(biāo), 這個(gè)步驟稱為發(fā)現(xiàn).除了對(duì)一些大型的工業(yè)設(shè)施, 攻擊者可能通過(guò)社會(huì)工程學(xué)等途徑獲取到攻擊目標(biāo)的一些信息外, 對(duì)一般的物聯(lián)網(wǎng)終端設(shè)備, 攻擊者發(fā)現(xiàn)攻擊目標(biāo)的步驟通常是通過(guò)網(wǎng)絡(luò)搜索.一旦發(fā)現(xiàn)有物聯(lián)網(wǎng)設(shè)備連接到互聯(lián)網(wǎng), 攻擊者進(jìn)一步獲取設(shè)備的相關(guān)信息, 掃描漏洞情況, 然后利用漏洞入侵系統(tǒng).這些步驟也是對(duì)一般信息系統(tǒng)入侵的步驟.
物聯(lián)網(wǎng)安全保護(hù)的第一步是防止被入侵.但無(wú)論如何防護(hù), 都不能保證不被入侵.即使在某一段時(shí)間內(nèi)沒(méi)有被入侵, 也不能保證將來(lái)不被入侵.而且物聯(lián)網(wǎng)設(shè)備由于資源受限, 對(duì)抗入侵的防護(hù)能力也有限[12], 因此通過(guò)防止被入侵來(lái)達(dá)到安全保護(hù)的技術(shù)手段應(yīng)作為輔助措施, 而不是主要技術(shù)手段.對(duì)一些信息價(jià)值不高的物聯(lián)網(wǎng)設(shè)備來(lái)說(shuō), 防止被入侵非常困難, 而且被入侵也不可怕, 只要做好OT 安全防護(hù), 入侵所造成的危害就非常有限.
一旦攻擊者入侵物聯(lián)網(wǎng)設(shè)備, 就開(kāi)始實(shí)施攻擊.需要注意的是, 被攻擊者入侵的物聯(lián)網(wǎng)設(shè)備通常不是物聯(lián)網(wǎng)終端設(shè)備, 物聯(lián)網(wǎng)系統(tǒng)中許多連接到互聯(lián)網(wǎng)的設(shè)備是物聯(lián)網(wǎng)網(wǎng)關(guān)設(shè)備, 而終端物聯(lián)網(wǎng)設(shè)備通過(guò)局域網(wǎng) (常用無(wú)線局域網(wǎng)) 與網(wǎng)關(guān)設(shè)備連接.攻擊者入侵網(wǎng)關(guān)設(shè)備后, 需要進(jìn)一步通過(guò)網(wǎng)關(guān)設(shè)備發(fā)送指令才能控制終端設(shè)備.這種攻擊需要對(duì)被入侵的物聯(lián)網(wǎng)系統(tǒng)架構(gòu)非常了解, 即針對(duì)特定物聯(lián)網(wǎng)系統(tǒng)制定專門的攻擊方案.
如果攻擊者入侵的設(shè)備是物聯(lián)網(wǎng)終端設(shè)備, 也不一定能完全控制該設(shè)備.對(duì)該設(shè)備的控制程度受多種因素影響, 包括以哪種身份入侵(例如登錄到哪個(gè)賬戶, 就會(huì)受該賬戶權(quán)限的影響)、設(shè)備配置參數(shù)的修改權(quán)限(例如通過(guò)特殊物理接口修改的配置, 不能通過(guò)網(wǎng)絡(luò)接口修改)、網(wǎng)絡(luò)控制指令是否有合法性驗(yàn)證(對(duì)身份的鑒別, 或?qū)χ噶詈戏ㄐ缘蔫b別) 等.
如果攻擊者入侵的設(shè)備是物聯(lián)網(wǎng)網(wǎng)關(guān)設(shè)備, 或工業(yè)互聯(lián)網(wǎng)系統(tǒng)的控制主機(jī), 則需要通過(guò)被控制的設(shè)備發(fā)送控制指令才能達(dá)到控制終端設(shè)備的目的.這種攻擊能否成功, 受如下因素的影響: (1) 發(fā)送的指令是否有安全保護(hù) (例如加密, 或完整性保護(hù), 或其他用于合法性驗(yàn)證的輔助信息), 攻擊者能否啟動(dòng)這種安全保護(hù) (如果安全保護(hù)過(guò)程需要外部輔助設(shè)備的支持, 如 U-key, 則攻擊者很難攻擊成功), 攻擊指令是否合法(即使攻擊者有能力通過(guò)身份認(rèn)證等檢驗(yàn)過(guò)程, 攻擊者偽造的指令數(shù)據(jù)也可能因格式不符合規(guī)范或其他原因被識(shí)別為非法指令) 等; (2) 攻擊行為能否在被入侵的設(shè)備中被發(fā)現(xiàn).被入侵的設(shè)備通過(guò)審計(jì)分析有可能發(fā)現(xiàn)攻擊行為異常, 從而能識(shí)別, 并采取相應(yīng)措施; (3) 攻擊行為是否對(duì)系統(tǒng)的正常工作造成影響.攻擊者如果不能成功將偽造的控制指令發(fā)送給受控設(shè)備并被設(shè)備接受執(zhí)行, 則不能造成攻擊效果.
但是, 由于物聯(lián)網(wǎng)設(shè)備的安全防護(hù)能力較弱, 特別是物聯(lián)網(wǎng)設(shè)備的OT 安全防護(hù)技術(shù)目前還沒(méi)有被正確認(rèn)識(shí), 因此當(dāng)物聯(lián)網(wǎng)設(shè)備遭受網(wǎng)絡(luò)入侵后, 所造成的危害可能還很嚴(yán)重[13].集群安全防護(hù)技術(shù)[14]可以在一定程度上阻止入侵行為的蔓延, 但資源受限是低成本物聯(lián)網(wǎng)終端感知節(jié)點(diǎn)在實(shí)現(xiàn)安全保護(hù)時(shí)所面臨的重大挑戰(zhàn).
物聯(lián)網(wǎng)的 IT 技術(shù)與 OT 技術(shù)相互關(guān)聯(lián), IT 技術(shù)所處理的信息可以直接通過(guò) OT 技術(shù)實(shí)施操作, 而OT 技術(shù)的執(zhí)行結(jié)果要通過(guò)IT 技術(shù)進(jìn)行反饋和處理.IT 安全問(wèn)題可以直接影響到OT 安全, 同樣OT 安全問(wèn)題也會(huì)導(dǎo)致IT 系統(tǒng)不能正常工作.本文主要側(cè)重論述OT 安全方面的相關(guān)問(wèn)題和技術(shù), 其中有些安全技術(shù)是與 IT 安全通用的, 但有些安全技術(shù)則是 OT 安全所特有的.對(duì)于那些典型的針對(duì) IT 系統(tǒng)的安全技術(shù), 如數(shù)據(jù)機(jī)密性、完整性和身份認(rèn)證等技術(shù), 本文不作論述, 除非直接關(guān)系到OT 安全.
物聯(lián)網(wǎng)OT 安全的目標(biāo)是保護(hù)控制指令, 因?yàn)榭刂浦噶钆c業(yè)務(wù)數(shù)據(jù)在安全需求上有很多不同.
控制指令數(shù)據(jù)也是一種數(shù)據(jù), 其指令內(nèi)容以預(yù)先規(guī)定的數(shù)據(jù)格式為標(biāo)準(zhǔn), 接收指令的設(shè)備將接收到的控制指令數(shù)據(jù)與預(yù)先設(shè)定的指令內(nèi)容進(jìn)行匹配, 如果匹配成功, 則執(zhí)行該條指令; 如果匹配不成功, 則以非法指令處置.這相當(dāng)于邏輯判斷, 表現(xiàn)在執(zhí)行代碼上則是“if-else” 格式.
控制指令數(shù)據(jù)的安全保護(hù)與傳統(tǒng)的信息安全保護(hù)沒(méi)有本質(zhì)區(qū)別, 但從重要性上來(lái)說(shuō), 數(shù)據(jù)機(jī)密性有時(shí)并不重要, 例如對(duì)開(kāi)關(guān)指令來(lái)說(shuō), 無(wú)論對(duì)數(shù)據(jù)的機(jī)密性如何保護(hù), 觀察者總能猜測(cè)其為 “開(kāi)” 或 “關(guān)”, 雖然這種50% 概率的猜測(cè)沒(méi)有什么信息量, 但如果結(jié)合受控對(duì)象的行為, 則可以使猜測(cè)成功率達(dá)到100%.即使觀察者不能成功猜測(cè)控制指令為 “開(kāi)” 或 “關(guān)”, 保護(hù)這類控制指令數(shù)據(jù)的機(jī)密性, 在許多應(yīng)用場(chǎng)景下都沒(méi)有明顯的實(shí)際價(jià)值.
但是, 保障指令數(shù)據(jù)的真實(shí)性, 保護(hù)指令數(shù)據(jù)不被非法篡改, 保護(hù)指令數(shù)據(jù)的時(shí)效性等, 都是非常重要的.因此控制指令數(shù)據(jù)的安全保護(hù), 應(yīng)該包括數(shù)據(jù)來(lái)源真實(shí)性、數(shù)據(jù)完整性保護(hù)、數(shù)據(jù)新鮮性保護(hù)等.身份認(rèn)證技術(shù)是提供數(shù)據(jù)來(lái)源真實(shí)性的有效手段, 將身份認(rèn)證與密鑰管理相結(jié)合, 將依此管理下的密鑰對(duì)數(shù)據(jù)進(jìn)行完整性保護(hù)和數(shù)據(jù)新鮮性保護(hù), 則可提供指令數(shù)據(jù)所需的信息安全保護(hù).如果指令數(shù)據(jù)需要機(jī)密性保護(hù), 則在身份認(rèn)證與密鑰管理階段, 增加數(shù)據(jù)機(jī)密性保護(hù)所需密鑰的管理, 在數(shù)據(jù)傳輸階段將明文數(shù)據(jù)替換為密文數(shù)據(jù), 就可達(dá)到安全保護(hù)的目的.
需要注意的是, 如果需要對(duì)指令數(shù)據(jù)提供機(jī)密性保護(hù), 應(yīng)該使用概率加密算法, 或者在加密時(shí)引入隨機(jī)數(shù), 使得觀察者根據(jù)密文無(wú)法猜測(cè)指令的明文, 而且不同的密文之間也沒(méi)有關(guān)聯(lián)性, 這與對(duì)業(yè)務(wù)數(shù)據(jù)內(nèi)容保護(hù)的目標(biāo)略有區(qū)別.
根據(jù)物聯(lián)網(wǎng)OT 安全技術(shù)的特點(diǎn), 下面對(duì)物聯(lián)網(wǎng)不同的OT 安全技術(shù)分別進(jìn)行描述.
所謂物聯(lián)網(wǎng)系統(tǒng)的穩(wěn)定性 (stability), 是指物聯(lián)網(wǎng)系統(tǒng)中控制指令的傳輸和執(zhí)行過(guò)程是穩(wěn)定可靠的.強(qiáng)調(diào)物聯(lián)網(wǎng)系統(tǒng)穩(wěn)定性的主要是工業(yè)物聯(lián)網(wǎng)系統(tǒng), 因?yàn)樽鳛楣I(yè)物聯(lián)網(wǎng)系統(tǒng)核心的工業(yè)控制系統(tǒng)需要穩(wěn)定性保障.
系統(tǒng)的穩(wěn)定性主要反映在控制過(guò)程的穩(wěn)定性.在一個(gè)控制系統(tǒng)中, 控制是一個(gè)不斷根據(jù)系統(tǒng)反饋和外在信息進(jìn)行調(diào)整的過(guò)程.控制系統(tǒng)雖然非常復(fù)雜, 但在進(jìn)行理論分析時(shí), 常常采用最簡(jiǎn)單的線性控制系統(tǒng)模型[15]:
其中u(t) 是控制量, 隨時(shí)間參數(shù)t 的變化而變化; a(t) 是所謂的“固有加速度”, 是許多非線性效應(yīng)隨時(shí)間變化的量.通常不把a(bǔ)(t) 寫(xiě)成狀態(tài)變量的非線性函數(shù).有時(shí)為了提高精度, 可能對(duì)a(t) 作一定的估值.
控制系統(tǒng)的穩(wěn)定性與傳統(tǒng)信息安全的概念有一定差距, 但穩(wěn)定性對(duì)信息安全的可用性具有重要支撐作用.控制系統(tǒng)的穩(wěn)定性一般作為工業(yè)控制系統(tǒng)技術(shù)進(jìn)行研究, 相關(guān)的研究成果非常多, 本文不作深入探討.
物聯(lián)網(wǎng)系統(tǒng)的健壯性 (robustness), 是指物聯(lián)網(wǎng)系統(tǒng)對(duì)故障的容忍性.當(dāng)一個(gè)物聯(lián)網(wǎng)系統(tǒng)的部分設(shè)備出現(xiàn)故障, 或部分網(wǎng)絡(luò)出現(xiàn)異常時(shí), 如果系統(tǒng)還能基本正常工作, 則表明是一個(gè)健壯性比較高的物聯(lián)網(wǎng)系統(tǒng).
健壯性高的物聯(lián)網(wǎng)系統(tǒng)不需要可靠性高的硬件設(shè)備, 但需要系統(tǒng)在架構(gòu)上具有容錯(cuò)能力.提高系統(tǒng)健壯性的常用方法是使用冗余技術(shù), 包括設(shè)備冗余、網(wǎng)絡(luò)冗余、計(jì)算能力冗余等.但冗余的代價(jià)是成本提高.一個(gè)需要 n 個(gè)物聯(lián)網(wǎng)設(shè)備的系統(tǒng), 如果給每個(gè)系統(tǒng)提供一個(gè)冗余, 則需要 2n 個(gè)設(shè)備, 僅此一項(xiàng)就提高了一倍成本.因此設(shè)備冗余的配置需要基于整個(gè)系統(tǒng)的健壯性, 而不是個(gè)別設(shè)備.
網(wǎng)絡(luò)冗余方面有大量專門的研究成果.例如通過(guò)平衡各個(gè)節(jié)點(diǎn)的功耗消耗, 可以延長(zhǎng)整個(gè)物聯(lián)網(wǎng)的生命周期[16], 或者在生命周期確定的情況下, 如何降低網(wǎng)絡(luò)建設(shè)成本[17].有時(shí)候?yàn)榱颂岣呦到y(tǒng)的可靠性,確保即使少數(shù)感知節(jié)點(diǎn)數(shù)據(jù)錯(cuò)誤, 也能根據(jù)所有感知數(shù)據(jù)獲得正確結(jié)論[18], 這類問(wèn)題屬于可靠性問(wèn)題.
近年來(lái), 國(guó)家非常重視信息系統(tǒng)和控制系統(tǒng)的安全可控問(wèn)題.這里說(shuō)的可控性不是工業(yè)控制系統(tǒng)中的控制能力, 而是使用者或管理者對(duì)系統(tǒng)安全性的控制主動(dòng)性.
物聯(lián)網(wǎng)系統(tǒng)既包括信息系統(tǒng), 又包括控制系統(tǒng), 因此安全可控問(wèn)題更是物聯(lián)網(wǎng)系統(tǒng)的根本問(wèn)題.但安全和可控是兩個(gè)不同的方面.安全主要包括信息安全(security) 和社會(huì)安全 (safety), 而可控更多地是一種面向管理的技術(shù)和策略.
對(duì)物聯(lián)網(wǎng)設(shè)備和物聯(lián)網(wǎng)系統(tǒng), 可控性包括如下內(nèi)容: (1) 硬件可控性, 即硬件的可靠性工作方式可知、可信、可管控, 確保不存在未知的暗箱操作; (2) 軟件可控性, 即軟件(包括操作系統(tǒng)) 的工作機(jī)制可知、可信、可管控, 確保不存在未知的人為設(shè)置的后門.雖然大型軟件系統(tǒng)難免存在各類漏洞, 但只要不是人為設(shè)置的漏洞或后門, 都不算違背可控性這一屬性; (3) 運(yùn)行可控性, 即系統(tǒng)在運(yùn)行階段不會(huì)出現(xiàn)未授權(quán)的進(jìn)程、數(shù)據(jù)、行為, 確保系統(tǒng)的行為符合邏輯預(yù)期; (4) 應(yīng)用系統(tǒng)可控性, 包括系統(tǒng)建設(shè)、系統(tǒng)運(yùn)維、系統(tǒng)使用等各個(gè)環(huán)節(jié), 都在技術(shù)和管理方面可以管控.
在管理方面, 中央網(wǎng)信辦發(fā)布的《網(wǎng)絡(luò)產(chǎn)品和服務(wù)安全審查辦法(試行)》于2017 年6 月1 日起開(kāi)始實(shí)施.該《辦法》的第四條規(guī)定:
網(wǎng)絡(luò)安全審查重點(diǎn)審查網(wǎng)絡(luò)產(chǎn)品和服務(wù)的安全性、可控性, 主要包括:
(一) 產(chǎn)品和服務(wù)自身的安全風(fēng)險(xiǎn), 以及被非法控制、干擾和中斷運(yùn)行的風(fēng)險(xiǎn);
(二) 產(chǎn)品及關(guān)鍵部件生產(chǎn)、測(cè)試、交付、技術(shù)支持過(guò)程中的供應(yīng)鏈安全風(fēng)險(xiǎn);
(三) 產(chǎn)品和服務(wù)提供者利用提供產(chǎn)品和服務(wù)的便利條件非法收集、存儲(chǔ)、處理、使用用戶相關(guān)信息的風(fēng)險(xiǎn);
(四) 產(chǎn)品和服務(wù)提供者利用用戶對(duì)產(chǎn)品和服務(wù)的依賴, 損害網(wǎng)絡(luò)安全和用戶利益的風(fēng)險(xiǎn);
(五) 其他可能危害國(guó)家安全的風(fēng)險(xiǎn).
這些規(guī)定雖然沒(méi)有明確定義什么是可控性, 但從實(shí)際操作中, 可控性主要是產(chǎn)品、系統(tǒng)和運(yùn)維方面的國(guó)產(chǎn)化.從管理方面理解, 可控性包括如下方面: (1) 盡量降低意外因素導(dǎo)致的系統(tǒng)故障, 如自然因素、誤操作、事故等; (2) 盡量降低人為惡意破壞的機(jī)會(huì), 增大對(duì)這類破壞及時(shí)發(fā)現(xiàn)的能力; (3) 所用技術(shù)不受知識(shí)產(chǎn)權(quán)的約束, 例如具有自主知識(shí)產(chǎn)權(quán), 或有對(duì)有關(guān)知識(shí)產(chǎn)權(quán)使用的權(quán)利; (4) 對(duì)人為破壞, 一旦掌握證據(jù),可以通過(guò)法律法規(guī)予以懲罰.
1997 年我國(guó)出臺(tái)的《商用密碼管理?xiàng)l例》明確規(guī)定: 國(guó)家任何商用密碼的研制、生產(chǎn)和銷售都必須接受??毓芾?任何國(guó)外生產(chǎn)的商用密碼產(chǎn)品未經(jīng)許可都不允許中國(guó)市場(chǎng)上銷售.《商用密碼管理?xiàng)l例》的出臺(tái)也表明信息安全類產(chǎn)品不能依賴別人, 也不可能依賴別人, 必須立足于國(guó)內(nèi)自主開(kāi)發(fā).
在技術(shù)方面, 可控技術(shù)包括硬件、軟件、系統(tǒng)等方面.在硬件方面, 有一種稱為可信計(jì)算的技術(shù)與可控性直接相關(guān).從 1999 年開(kāi)始, 由Intel、IBM、HP、Microsoft 等企業(yè)發(fā)起的TCPA (trusted computing platform alliance) 組織建了一個(gè)可信計(jì)算環(huán)境, 稱為 TPM (trusted platform module).TPM 是一種嵌入在主板上的安全芯片, 通過(guò)和上層軟件中間件TSS (trusted software stack) 共同作用, 使得非法軟件和進(jìn)程不能被安裝和執(zhí)行, 旨在從根本上解決信息設(shè)備遭受攻擊嚴(yán)重的問(wèn)題.2003 年TCPA 重新組成了一個(gè)更加具有商業(yè)性質(zhì)的組織TCG (trusted computing group), 增加了Sony、Sun 等新成員, 擴(kuò)大了商業(yè)推廣力度.
TPM 雖然在名稱上是一種“可信計(jì)算環(huán)境”, 但這種可信是設(shè)備層面的可信, 與系統(tǒng)層面的可控有著本質(zhì)區(qū)別.如果國(guó)內(nèi)的 IT 設(shè)備也使用 TPM 這種 “可信計(jì)算環(huán)境”, 中國(guó)的安全體系就會(huì)控制在別人手上, 計(jì)算機(jī)上產(chǎn)生的所有信息對(duì)外國(guó)人來(lái)說(shuō)將不存在秘密, 不僅沒(méi)有安全, 更沒(méi)有可控, 因?yàn)檫@種 “可信”是由TCPA 組織定義的, 而且從經(jīng)濟(jì)方面還要為相關(guān)專利買單.為了避免這種可信而不可控的矛盾, 國(guó)內(nèi)產(chǎn)業(yè)界和學(xué)術(shù)界意識(shí)到必須要建立獨(dú)立自主的可信計(jì)算技術(shù)體系和標(biāo)準(zhǔn).基于國(guó)內(nèi)的密碼算法標(biāo)準(zhǔn), 參考TPM 嵌入芯片技術(shù), 完全采用我國(guó)自主研發(fā)的密碼算法和引擎, 構(gòu)建一個(gè)新的安全芯片架構(gòu), 稱之為可信密碼模塊(trusted cryptography module, TCM).TCM 安全芯片在系統(tǒng)平臺(tái)中的作用是為系統(tǒng)平臺(tái)和軟件提供基礎(chǔ)的安全服務(wù), 建立更為安全可靠的系統(tǒng)平臺(tái)環(huán)境.
在軟件方面, 可控性體現(xiàn)在訪問(wèn)控制方面.對(duì)系統(tǒng)的訪問(wèn)控制是一種建立在操作系統(tǒng)功能模塊上的安全策略, 是平臺(tái)、技術(shù)和策略的結(jié)合.訪問(wèn)控制可以從賬戶訪問(wèn)方面獲得控制權(quán).其他與之相關(guān)的控制技術(shù)還包括對(duì)賬戶的權(quán)限管理.
物聯(lián)網(wǎng)系統(tǒng)的安全性主要針對(duì)控制指令的傳輸和執(zhí)行.當(dāng)物聯(lián)網(wǎng)設(shè)備接收到一個(gè)控制設(shè)備發(fā)來(lái)的控制指令后, 應(yīng)該立即執(zhí)行.為了避免控制指令的偶然性錯(cuò)誤, 受控設(shè)備需要判斷控制指令是否符合規(guī)則要求.簡(jiǎn)單的規(guī)則要求包括:
(1) 指令格式是否正確;
(2) 指令的某些參數(shù)值是否在允許的范圍內(nèi).
這些判斷可通過(guò)簡(jiǎn)單的字符串比對(duì)來(lái)實(shí)現(xiàn).但也有一些更高級(jí)的合規(guī)性判斷, 例如:
(3) 指令的變化曲線是否正常;
(4) 指令值與其他參數(shù)(包括環(huán)境參數(shù)) 是否匹配等.這類合規(guī)性驗(yàn)證需要一些高級(jí)的信息處理技術(shù).下面作進(jìn)一步描述.
(1) 指令的格式是否正常.控制指令通過(guò)網(wǎng)絡(luò)傳輸協(xié)議傳輸時(shí)應(yīng)具有一定標(biāo)準(zhǔn)格式, 以便受控設(shè)備解讀識(shí)別.這是通信協(xié)議應(yīng)用層的協(xié)議規(guī)范, 在此不贅述.
(2) 指令的某些參數(shù)值是否在允許的范圍內(nèi).一般來(lái)說(shuō), 指令值(或指令中的某些值) 應(yīng)該在一定的預(yù)設(shè)范圍內(nèi), 例如最大值為 M, 最小值為 m, 則當(dāng)滿足 m ? x ? M 時(shí), 數(shù)值 x 都為合法.當(dāng)有 x < m 或x>M 的情況發(fā)生時(shí), 則屬于異常情況, 這種情況一般需要人工干預(yù), 否則指令將不被執(zhí)行.事實(shí)上, 當(dāng)x接近 m 或 M 值時(shí), x 的值已經(jīng)接近正常的邊沿了, 對(duì)有些應(yīng)用場(chǎng)景來(lái)說(shuō), 需要根據(jù)指令取值范圍挑戰(zhàn)響應(yīng)策略, 例如越接近正常值, 響應(yīng)越及時(shí), 越偏離正常值, 盡管仍然在正常范圍內(nèi), 響應(yīng)也越遲緩, 這種策略有助于在盲目操作下保護(hù)機(jī)器設(shè)備, 前提條件是應(yīng)用場(chǎng)景允許這種延緩執(zhí)行.另一種情況是當(dāng)一個(gè)指令要求將某個(gè)參數(shù)值從正常值 (根據(jù)歷史數(shù)據(jù)判斷為正常) 突然變?yōu)楫惓V?也根據(jù)歷史數(shù)據(jù)判斷為異常), 從邏輯上判斷也屬于“異?!?但這種判斷可能是不正確的, 因?yàn)槭芸卦O(shè)備不能理解控制主機(jī)的意圖, 如果簡(jiǎn)單地判斷是否“異常” 并按判斷結(jié)果執(zhí)行, 容易導(dǎo)致錯(cuò)誤執(zhí)行結(jié)果, 使得受控設(shè)備表現(xiàn)為“失控”.
(3) 指令的變化曲線是否正常.如果將歷史指令值 (那些可以量化的值) 記錄下來(lái), 并畫(huà)成一條曲線,則可以看出這條曲線的變化情況.當(dāng)前指令是否沿著這條曲線的變化繼續(xù)發(fā)展, 這種發(fā)展是否符合正常值等, 都是需要驗(yàn)證的.當(dāng)然受控制的設(shè)備不會(huì)從曲線中看出規(guī)律, 但可以使用其他的數(shù)學(xué)量來(lái)刻畫(huà), 如均值、方差等.另外需要定義什么是 “正常值”, 才能讓設(shè)備進(jìn)行判斷.一種方式是根據(jù)業(yè)務(wù)情況, 將 “正常值” 作為一個(gè)不變量寫(xiě)入系統(tǒng), 另外一種方式是使用人工智能計(jì)算, 在執(zhí)行中不斷學(xué)習(xí), 根據(jù)歷史記錄得到一個(gè)均值作為正常值, 而且這個(gè)均值將隨著后期的記錄不斷調(diào)整變化.
(4) 指令值與其他參數(shù)是否匹配.如果一個(gè)溫控設(shè)備在監(jiān)測(cè)到周圍環(huán)境溫度超高, 而控制指令還要求繼續(xù)升溫的話, 這種指令可以初步判斷為“異?!? 又如機(jī)動(dòng)車傳感器探測(cè)前面有障礙物, 而司機(jī)突然緊急加速的話, 也判斷為 “異?!?指令.
既然不能判斷一個(gè)指令是否真正有異常, 為了避免可能的情況, 可以在邏輯判斷為異常指令的情況下,采取延緩措施.例如, 當(dāng)一個(gè)指令讓某個(gè)設(shè)備轉(zhuǎn)速提升5000 轉(zhuǎn)時(shí), 如果全速執(zhí)行指令, 則在1 秒鐘之內(nèi)能提升5000 轉(zhuǎn).但因?yàn)橹噶钤谶壿嬌蠈儆诓徽G闆r, 但又不能不執(zhí)行, 為了提高安全性, 不應(yīng)該全速執(zhí)行指令, 而是在第一秒內(nèi)提升2500 轉(zhuǎn), 然后在下一秒提升1250 轉(zhuǎn), 然后在下一秒再提升1250 轉(zhuǎn).這樣一個(gè)指令在3 秒內(nèi)執(zhí)行完畢.如果在此期間新的指令進(jìn)行了調(diào)整, 則在該指令執(zhí)行完成之前, 直接切換到對(duì)下一個(gè)指令的執(zhí)行, 因?yàn)橐苍S下一個(gè)指令就是要減速.這類高度變化的控制指令在賽車場(chǎng)景中常常發(fā)生, 當(dāng)然賽車場(chǎng)景中對(duì)異常的判斷也將不同.因此, 對(duì)于 “異常” 指令, 應(yīng)該根據(jù)應(yīng)用場(chǎng)景的不同予以處理, 例如設(shè)備可能對(duì)“異?!?指令遲緩執(zhí)行, 或不予執(zhí)行, 或切換為自動(dòng)模式(如智能汽車), 沒(méi)有統(tǒng)一的解決方案.
無(wú)論判斷為正常還是異常, 都要有參考模型.例如某個(gè)參數(shù)的正常值為 d, 正常變化范圍為 ?d, 則d±?d 為正常, 超出該范圍為不正常; 或者分為不同的區(qū)間, 落入某個(gè)區(qū)間的值伴隨著事件發(fā)生的概率.如果一個(gè)事件發(fā)生的概率特別小, 則被認(rèn)為是異常.這里的正常和異常沒(méi)有絕對(duì)界限, 而是通過(guò)不同的概率值來(lái)體現(xiàn).
有些系統(tǒng)的正常與非正常不容易預(yù)設(shè), 甚至是一個(gè)動(dòng)態(tài)變化的狀態(tài), 這種情況下, 人工智能技術(shù)也許能起到積極的作用.通過(guò)人工智能技術(shù), 可以在學(xué)習(xí)階段建立起對(duì)正常和不正常的判斷, 而且在隨后的判斷過(guò)程中, 逐步調(diào)整所參考的正常值的取值范圍.
對(duì)物聯(lián)網(wǎng)設(shè)備的控制指令, 可能是正常用戶發(fā)送的, 也可能是攻擊者偽造的.如果對(duì)控制指令有信息安全保護(hù), 例如對(duì)控制指令來(lái)源的認(rèn)證、格式的完整性保護(hù)等技術(shù), 則成功偽造指令的可能性非常低.
但是, 如果攻擊者成功入侵一個(gè)合法的控制節(jié)點(diǎn), 則可以調(diào)用該節(jié)點(diǎn)使用的任何密碼算法和本地存儲(chǔ)的密鑰.這樣, 偽造的指令無(wú)論從來(lái)源還是數(shù)據(jù)加密、數(shù)據(jù)完整性保護(hù), 在受控設(shè)備看來(lái)都是合法的.在這種情況下, 鑒別控制指令的真實(shí)性非常困難, 因?yàn)楹戏ㄓ脩粼诎l(fā)送控制指令的主機(jī)上的任何操作, 入侵者都可以操作.
在假定攻擊者能入侵控制主機(jī)的條件下, 要想實(shí)現(xiàn)真實(shí)性鑒別, 需要有另外一個(gè)控制主機(jī)本身所不能主動(dòng)獲取的數(shù)據(jù)、或計(jì)算過(guò)程、或通信線路或控制.除此之外, 我們還看不到另外的可能.
4.6.1 機(jī)外數(shù)據(jù)來(lái)源
主機(jī)外的數(shù)據(jù)來(lái)源就是不存在于主機(jī)軟硬件的數(shù)據(jù), 而是一種外部設(shè)備存儲(chǔ)的數(shù)據(jù), 或者由人工輸入的數(shù)據(jù).這種數(shù)據(jù)可以看做一個(gè)密鑰(如口令), 但如果入侵者駐存在入侵設(shè)備的內(nèi)存中, 并監(jiān)視所有外部數(shù)據(jù)的話, 則可以獲得從外部獲得的數(shù)據(jù).如果這種數(shù)據(jù)是靜態(tài)的, 一旦被入侵者獲得, 入侵者便可以完全掌控被入侵的主機(jī), 于是可以成功偽造任何符合指令格式的非法控制指令, 實(shí)現(xiàn)對(duì)物聯(lián)網(wǎng)設(shè)備的非法控制.因此, 使用機(jī)外數(shù)據(jù)提供安全保護(hù)時(shí), 應(yīng)滿足如下條件:
(1) 獨(dú)立性: 機(jī)外數(shù)據(jù)無(wú)法通過(guò)主機(jī)本身產(chǎn)生.如果體現(xiàn)在計(jì)算上, 則應(yīng)該是計(jì)算不可行的;
(2) 新鮮性: 機(jī)外設(shè)備提供的數(shù)據(jù)應(yīng)該具有新鮮性保護(hù), 即一旦機(jī)外數(shù)據(jù)被使用, 則不能再次被使用;
(3) 無(wú)關(guān)性: 不同的機(jī)外數(shù)據(jù)之間沒(méi)有明顯的關(guān)聯(lián), 即給定一些機(jī)外數(shù)據(jù), 不能計(jì)算未使用的合法的機(jī)外數(shù)據(jù).
4.6.2 機(jī)外計(jì)算過(guò)程
主機(jī)之外的計(jì)算是數(shù)據(jù)安全操作常使用的方法.例如移動(dòng)設(shè)備通信所使用的數(shù)據(jù)加密和身份認(rèn)證過(guò)程, 都是通過(guò)插入到移動(dòng)通信設(shè)備內(nèi)的SIM 卡來(lái)完成的.SIM 卡是一個(gè)嵌入式硬件設(shè)備, 具有內(nèi)嵌的密鑰和密碼算法, 移動(dòng)通信設(shè)備只需要合適的通信接口, SIM 卡就可以處理所需要的計(jì)算.例如移動(dòng)通信設(shè)備可以將數(shù)據(jù)傳給SIM 用于加密或解密.在這種情況下, SIM 卡的操作對(duì)移動(dòng)通信設(shè)備來(lái)說(shuō)是一個(gè)機(jī)外計(jì)算過(guò)程, 當(dāng)然SIM 卡的計(jì)算過(guò)程還伴隨著SIM 卡內(nèi)存儲(chǔ)的密鑰信息.
一般地, 機(jī)外計(jì)算過(guò)程是主機(jī)所不能完成的.由于很難對(duì)計(jì)算過(guò)程進(jìn)行保密, 因此機(jī)外計(jì)算過(guò)程通常伴隨著機(jī)外秘密存儲(chǔ)的數(shù)據(jù)(即密鑰).
4.6.3 機(jī)外通信
機(jī)外通信也是一種對(duì)主機(jī)的控制所不能完成的.這種機(jī)外通信需要滿足如下條件:
(1) 必須有來(lái)自主機(jī)自身所不能產(chǎn)生的數(shù)據(jù)作為機(jī)外通信的數(shù)據(jù)來(lái)源;
(2) 主機(jī)之外的數(shù)據(jù)不受主機(jī)的影響;
(3) 通過(guò)主機(jī)系統(tǒng)不能獲得主機(jī)之外的通信數(shù)據(jù).
實(shí)現(xiàn)機(jī)外通信線路的方式有很多.例如如下方式可以實(shí)現(xiàn)機(jī)外通信: (1) 使用獨(dú)立的雙系統(tǒng)或多系統(tǒng),接收端根據(jù)多個(gè)系統(tǒng)的通信數(shù)據(jù)綜合處理后生成要處理要執(zhí)行的指令數(shù)據(jù); (2) 使用機(jī)外人工控制開(kāi)關(guān),包括需要人工確認(rèn)的物理或邏輯按鈕, 只有人工控制開(kāi)關(guān)被啟動(dòng), 來(lái)自主機(jī)的通信數(shù)據(jù)才能被正常接收.
機(jī)外通信線路不一定是一個(gè)獨(dú)立的物理通信線路, 可以是同一通信線路上的一個(gè)獨(dú)立控制過(guò)程, 例如人工開(kāi)關(guān)和人工確認(rèn)就屬于這類情況.從安全方面來(lái)看, 通過(guò)增加人工控制或人工確認(rèn)來(lái)提高主機(jī)遭受入侵控制后的安全性是有風(fēng)險(xiǎn)的, 因?yàn)槿斯た刂坪腿斯ご_認(rèn)往往成為形式過(guò)程, 不對(duì)實(shí)際數(shù)據(jù)進(jìn)行驗(yàn)證, 而且要通過(guò)人工識(shí)別偽造的控制指令也很困難.
OT 安全的重點(diǎn)是控制指令內(nèi)容的合法性和真實(shí)性.對(duì)受控設(shè)備來(lái)說(shuō), 通過(guò)系統(tǒng)配置, 通過(guò)參數(shù)的數(shù)值化比對(duì), 可以判斷控制指令是否合法, 但許多物聯(lián)網(wǎng)設(shè)備沒(méi)有能力判斷控制指令是否真實(shí), 因此OT 安全保護(hù)的重點(diǎn), 是讓物聯(lián)網(wǎng)設(shè)備盡量減少遭受網(wǎng)絡(luò)入侵攻擊的機(jī)會(huì).
如果物聯(lián)網(wǎng)設(shè)備與互聯(lián)網(wǎng)是物理隔離的, 則數(shù)據(jù)媒介 (如 U 盤) 可以間接將其與互聯(lián)網(wǎng)相連接, 這種情況可以理解為間歇性網(wǎng)絡(luò)連接.從這個(gè)意義上說(shuō), 完全與互聯(lián)網(wǎng)隔離的系統(tǒng)幾乎是不存在的.我們假設(shè)物聯(lián)網(wǎng)設(shè)備與互聯(lián)網(wǎng)直接相連, 而且資源可能受限, 因此抵抗網(wǎng)絡(luò)攻擊的傳統(tǒng)技術(shù)手段很難實(shí)施.在此情況下, 針對(duì)IT 安全和OT 安全兩方面的安全風(fēng)險(xiǎn), 我們建議從網(wǎng)絡(luò)暴露、身份認(rèn)證、入侵容忍、系統(tǒng)冗余、設(shè)備替換等方面提出安全保護(hù)措施, 可以看到, 這些安全保護(hù)措施與傳統(tǒng)信息系統(tǒng)的安全保護(hù)措施在很多方面迥然不同.
(1) 降低網(wǎng)絡(luò)暴露.
許多物聯(lián)網(wǎng)系統(tǒng)不需要全時(shí)連接網(wǎng)絡(luò), 例如定時(shí)抄表業(yè)務(wù), 只需要在抄報(bào)數(shù)據(jù)時(shí)連接網(wǎng)絡(luò)即可, 其他時(shí)間可以切斷網(wǎng)絡(luò).為滿足在非抄報(bào)數(shù)據(jù)時(shí)段有來(lái)自管理中心的特殊指令要求(特殊情況下管理中心可以在正常抄報(bào)數(shù)據(jù)之外的時(shí)間段要求數(shù)據(jù)抄報(bào)), 需要間斷性地去偵聽(tīng)網(wǎng)絡(luò).如果有來(lái)自網(wǎng)絡(luò)的特殊指令, 則接收并在驗(yàn)證合法后執(zhí)行; 否則, 繼續(xù)睡眠.例如抄表模塊每 10 分鐘內(nèi)連接網(wǎng)絡(luò)并偵聽(tīng) 10 秒鐘時(shí)間, 其余9 分50 秒時(shí)間內(nèi)都處于斷網(wǎng)狀態(tài).為了能保證這種特殊指令能被接收, 發(fā)送指令的服務(wù)器需要以每5秒鐘發(fā)送一次指令的頻率重復(fù)發(fā)送10 分鐘, 這樣總能等到抄表模塊醒來(lái)的時(shí)間.通過(guò)這種策略, 使得物聯(lián)網(wǎng)設(shè)備暴露在互聯(lián)網(wǎng)上的時(shí)間會(huì)大大減少, 從而可以減少被攻擊者探測(cè)到從而發(fā)起攻擊的機(jī)會(huì).例如上述抄表模塊, 暴露在互聯(lián)網(wǎng)上的時(shí)間占正常時(shí)間的10/600 = 1.7%.如果攻擊者循環(huán)掃描時(shí), 對(duì)每個(gè)可能的互聯(lián)網(wǎng)地址都停留1 秒鐘, 則抄表模塊被攻擊者掃描發(fā)現(xiàn)的機(jī)會(huì)只有1.7%.
除了正常業(yè)務(wù)數(shù)據(jù)的通信端口需要降低暴露程度外, 還存在個(gè)別偶爾需要開(kāi)放的端口, 例如用于調(diào)試和配置的通信端口, 這些通信端口更應(yīng)該在不用時(shí)處于關(guān)閉狀態(tài), 而且即使需要開(kāi)啟, 使用完畢后也要及時(shí)關(guān)閉, 避免不必要的網(wǎng)絡(luò)暴露帶來(lái)的安全風(fēng)險(xiǎn).
網(wǎng)絡(luò)暴露問(wèn)題需要建立合適的模型, 在網(wǎng)絡(luò)暴露和連通性方面進(jìn)行折衷.
(2) 輕量級(jí)安全認(rèn)證技術(shù).
入侵保護(hù)包括兩方面: 入侵前和入侵后.入侵前的保護(hù)屬于網(wǎng)絡(luò)邊界保護(hù), 常用技術(shù)是網(wǎng)絡(luò)防火墻; 入侵后的保護(hù)是入侵檢測(cè)(IDS), 對(duì)信息系統(tǒng)來(lái)說(shuō)是一種成熟的安全保護(hù)技術(shù).但對(duì)資源受限的物聯(lián)網(wǎng)系統(tǒng),入侵檢測(cè)幾乎沒(méi)有能力, 因此主要技術(shù)將在入侵前的安全保護(hù)方面.對(duì)許多物聯(lián)網(wǎng)設(shè)備來(lái)說(shuō), 使用防火墻技術(shù)也是不現(xiàn)實(shí)的, 因此對(duì)邊界防護(hù)的主要技術(shù)手段是身份認(rèn)證.具體地, 輕量級(jí)身份認(rèn)證是提升資源受限物聯(lián)網(wǎng)設(shè)備的關(guān)鍵技術(shù).
需要注意的是, 身份認(rèn)證的目的是建立共享會(huì)話密鑰, 從而進(jìn)行保密通信, 可以有選擇地提供通信數(shù)據(jù)的機(jī)密性和完整性.但物聯(lián)網(wǎng)系統(tǒng)中的許多數(shù)據(jù)都是小數(shù)據(jù), 在這種情況下, 可以將身份認(rèn)證與數(shù)據(jù)保護(hù)融合在一起, 提供可認(rèn)證的數(shù)據(jù)保密輕量級(jí)協(xié)議, 更具體地說(shuō), 應(yīng)該設(shè)計(jì)融身份認(rèn)證、數(shù)據(jù)機(jī)密性、數(shù)據(jù)完整性、數(shù)據(jù)新鮮性等安全保護(hù)于一體的輕量級(jí)數(shù)據(jù)傳輸協(xié)議, 這種技術(shù)才是真正適合資源受限的物聯(lián)網(wǎng)設(shè)備的安全保護(hù)技術(shù).
(3) 建立入侵容忍機(jī)制.
無(wú)論使用怎樣的保護(hù)手段, 應(yīng)該作這樣的假設(shè): 物聯(lián)網(wǎng)設(shè)備遭受入侵攻擊是必然的.在物聯(lián)網(wǎng)設(shè)備遭受入侵者攻擊并完全控制的情況下, 如何保證攻擊所造成的損失最小? 首先, 攻擊者獲取資源受限的物聯(lián)網(wǎng)設(shè)備內(nèi)部數(shù)據(jù)的可能性不大, 而且部分秘密信息(如密鑰) 也不容易獲得.因此, 攻擊者操作入侵設(shè)備才是入侵的真正目的, 這是OT 安全問(wèn)題所特有的特征之一.因此, 建立物聯(lián)網(wǎng)設(shè)備的入侵容忍機(jī)制, 對(duì)物聯(lián)網(wǎng)OT 安全是非常必要的.
關(guān)于入侵容忍技術(shù), 已有大量研究 (如文獻(xiàn) [5,19–23]), 但傳統(tǒng)的入侵容忍技術(shù)主要通過(guò)提升被入侵設(shè)備的系統(tǒng)自身的綜合防護(hù)能力來(lái)得到, 主要包括自我診斷能力、故障隔離能力和還原重構(gòu)能力.但對(duì)許多物聯(lián)網(wǎng)設(shè)備來(lái)說(shuō), 不太可能具有這些能力, 因此不能按照傳統(tǒng)方法提供入侵容忍技術(shù).但針對(duì)OT 安全入侵攻擊的特點(diǎn), 我們可以從系統(tǒng)架構(gòu)上使系統(tǒng)具有入侵容忍能力, 包括資源受限的物聯(lián)網(wǎng)設(shè)備.本文4.6節(jié)給出的幾種技術(shù)方案, 都可用于入侵容忍架構(gòu)方面的技術(shù)方案, 因?yàn)樵谖锫?lián)網(wǎng)系統(tǒng)中, 靠單機(jī)實(shí)現(xiàn)傳統(tǒng)的入侵容忍技術(shù)是不現(xiàn)實(shí)的.物聯(lián)網(wǎng)設(shè)備的入侵容忍技術(shù), 無(wú)論從內(nèi)部機(jī)制方面, 還是從整體架構(gòu)方面, 都是意義重大的課題, 有待進(jìn)一步深入研究.
(4) 設(shè)置適當(dāng)?shù)南到y(tǒng)冗余.
物聯(lián)網(wǎng)系統(tǒng)通常包括大量低成本和資源有限的物聯(lián)網(wǎng)感知終端設(shè)備, 這些設(shè)備采集的環(huán)境信息匯集到數(shù)據(jù)中心統(tǒng)一處理, 用于對(duì)被監(jiān)控系統(tǒng)的監(jiān)控?cái)?shù)據(jù).為了避免部分物聯(lián)網(wǎng)感知終端設(shè)備因故不能正常工作,在部署這些終端設(shè)備時(shí), 一般都多于實(shí)際需求, 即有冗余.如何設(shè)置這種冗余配置, 則是一個(gè)有待進(jìn)一步研究的問(wèn)題.當(dāng)采集的數(shù)據(jù)代表同一數(shù)據(jù)時(shí), 通常使用擇多原理選擇結(jié)果; 但當(dāng)采集的數(shù)據(jù)構(gòu)成一個(gè)二維或三維曲面時(shí), 則沒(méi)有真正的冗余, 而是根據(jù)所采集的離散數(shù)據(jù)所繪制的曲面與實(shí)際情況的誤差問(wèn)題, 理論上終端越多, 所采集的數(shù)據(jù)越能反映實(shí)際情況, 但如果模型合理, 可以通過(guò)少數(shù)幾個(gè)終端數(shù)據(jù), 就能繪制曲面, 使其與真實(shí)曲面的誤差在預(yù)先定義的誤差范圍內(nèi).這種情況下, 如何部署冗余, 是一個(gè)有待解決的研究課題.
(5) 設(shè)備替換有備無(wú)患.
物聯(lián)網(wǎng)系統(tǒng)中某些關(guān)鍵設(shè)備的損壞會(huì)影響到整個(gè)物聯(lián)網(wǎng)系統(tǒng)的正常工作, 例如物聯(lián)網(wǎng)網(wǎng)關(guān)節(jié)點(diǎn).如果物聯(lián)網(wǎng)系統(tǒng)對(duì)網(wǎng)關(guān)節(jié)點(diǎn)也設(shè)置了冗余, 則個(gè)別網(wǎng)關(guān)節(jié)點(diǎn)的故障不影響整個(gè)系統(tǒng)的正常工作, 但也需要盡快替換.
物聯(lián)網(wǎng)設(shè)備的替換是一件很簡(jiǎn)單的事, 只需要將被替換的設(shè)備的關(guān)鍵參數(shù)(如密鑰、計(jì)數(shù)器、身份標(biāo)示、一些臨時(shí)參數(shù)等) 寫(xiě)入替換設(shè)備即可.為此, 需要對(duì)關(guān)鍵設(shè)備的這些參數(shù)進(jìn)行定期備份.由于這些參數(shù)涉及秘密數(shù)據(jù), 因此如何高效、安全地備份這些重要的設(shè)備參數(shù), 以便在設(shè)備發(fā)生故障時(shí)能盡快配置替換設(shè)備, 也是一個(gè)有待深入研究的問(wèn)題.
物聯(lián)網(wǎng)的安全問(wèn)題是關(guān)系到物聯(lián)網(wǎng)產(chǎn)業(yè)健康發(fā)展的關(guān)鍵.雖然物聯(lián)網(wǎng)產(chǎn)業(yè)在近幾年得到突飛猛進(jìn)的發(fā)展, 但隨著產(chǎn)業(yè)規(guī)模的擴(kuò)大和技術(shù)標(biāo)準(zhǔn)化的形成, 安全問(wèn)題則逐步出現(xiàn).當(dāng)前在物聯(lián)網(wǎng)安全方面的保護(hù)技術(shù)還不夠成熟, 事實(shí)上無(wú)論在學(xué)術(shù)界還是產(chǎn)業(yè)領(lǐng)域, 對(duì)物聯(lián)網(wǎng)安全技術(shù)的本質(zhì)還沒(méi)有梳理清楚.物聯(lián)網(wǎng)安全涉及 IT 安全與 OT 安全, 其中 IT 安全技術(shù)與傳統(tǒng)信息系統(tǒng)的安全技術(shù)也有區(qū)別, 結(jié)合物聯(lián)網(wǎng) OT安全性方面的需求, 而且IT 安全與OT 安全相互影響, 這也是物聯(lián)網(wǎng)安全技術(shù)落后于產(chǎn)業(yè)需求的原因.
本文深入分析了物聯(lián)網(wǎng)系統(tǒng)的OT 安全性, 指出了 OT 安全性與IT 安全性的一些區(qū)別, 描述了OT安全性的技術(shù)特點(diǎn), 也給出了一些有待進(jìn)一步研究的技術(shù)問(wèn)題.希望本文的觀點(diǎn)能為完善物聯(lián)網(wǎng)的安全架構(gòu)提供有用的參考.