徐志杰,朱凌云,金鑫
(1. Kenexis咨詢公司,天津 300270;2. 北京上德自動(dòng)化系統(tǒng)有限公司,北京 102502;3. 遼寧石油化工大學(xué) 信息與控制工程學(xué)院,遼寧 撫順 113001)
確定性是設(shè)計(jì)并操作工業(yè)控制系統(tǒng)(ICS)的工程師需要考慮的主要內(nèi)容之一。ICS需要在一定的時(shí)間內(nèi)對(duì)網(wǎng)絡(luò)發(fā)送的信息做出響應(yīng),否則系統(tǒng)可能會(huì)處于不穩(wěn)定和/或失效狀態(tài)。能夠影響系統(tǒng)確定性的因素有很多,如單一設(shè)備性能等。雖然在設(shè)計(jì)系統(tǒng)時(shí)可以考慮其間的某些因素,然而系統(tǒng)內(nèi)部和系統(tǒng)間的交互以及安全性設(shè)置等因素有時(shí)難以預(yù)先確定。因此,需要在測(cè)試和操作期間測(cè)量并收集數(shù)據(jù),以評(píng)估系統(tǒng)的確定性。
目前,中國(guó)國(guó)內(nèi)諸多企業(yè)在ICS安全方面仍存在誤區(qū): 他們認(rèn)為ICS只要未與互聯(lián)網(wǎng)連接、黑客便無(wú)法攻擊ICS。事實(shí)上,企業(yè)的諸多工業(yè)控制網(wǎng)絡(luò)均為“開(kāi)放式”,系統(tǒng)與系統(tǒng)之間也未進(jìn)行有效隔離。盡管企業(yè)內(nèi)網(wǎng)安裝了防護(hù)設(shè)施/軟件,并實(shí)施了多種網(wǎng)絡(luò)安全技術(shù),但隨著信息化的推進(jìn)以及工業(yè)化進(jìn)程的加速,工廠信息網(wǎng)絡(luò)、互聯(lián)網(wǎng),以及其他因素導(dǎo)致的信息安全問(wèn)題正逐步向控制系統(tǒng)擴(kuò)散,繼而對(duì)工廠生產(chǎn)控制的安全穩(wěn)定產(chǎn)生了直接威脅。
ICS網(wǎng)絡(luò)協(xié)議[1]是從較為陳舊且基于串行或總線的現(xiàn)場(chǎng)總線網(wǎng)絡(luò)發(fā)展而來(lái)。雖然它們目前可以在以太網(wǎng)和傳輸控制協(xié)議(TCP)/用戶數(shù)據(jù)報(bào)協(xié)議(UDP)/ 互聯(lián)網(wǎng)協(xié)議(IP)的網(wǎng)絡(luò)上運(yùn)行,但設(shè)備在網(wǎng)絡(luò)上交互的大部分方式均基于該類現(xiàn)場(chǎng)總線。當(dāng)現(xiàn)場(chǎng)總線上的設(shè)備需要通過(guò)某種形式的總線連接網(wǎng)絡(luò)時(shí),則必須要限制通信流的數(shù)量、消息的長(zhǎng)度以及周期性。如此一來(lái),便催生了一些限制網(wǎng)絡(luò)外來(lái)流量的不同方法。
一種方法是讓復(fù)雜控制器充當(dāng)網(wǎng)絡(luò)上的主機(jī),而輸入/輸出(I/O)設(shè)備充當(dāng)從機(jī)。主機(jī)可以命令從機(jī)執(zhí)行一些操作,也可以通過(guò)網(wǎng)絡(luò)向從機(jī)請(qǐng)求信息。除非主機(jī)發(fā)出特別請(qǐng)求,否則從機(jī)不會(huì)通信。
另一種方法是“定期報(bào)告”,它允許I/O設(shè)備和控制器以對(duì)等的方式交互??刂破骱虸/O設(shè)備在啟動(dòng)通信流時(shí)會(huì)例行交換信號(hào),該種交換會(huì)為該通信流建立參數(shù),包括通信報(bào)文中包含的信息和預(yù)計(jì)周期。I/O設(shè)備和控制器獨(dú)立工作并監(jiān)視通信流中的錯(cuò)誤。如果通信過(guò)程中出現(xiàn)錯(cuò)誤,大多數(shù)控制器均能借助其內(nèi)部方法重新建立通信流。
第三種方法稱作“異常報(bào)告”,它在某種程度上介于主/從報(bào)告和定期報(bào)告之間。在該方法中,控制器能夠以某種周期性的方式與I/O設(shè)備通信,以確保這2臺(tái)設(shè)備仍然運(yùn)行,稱為“心跳”(heartbeat)。一般來(lái)講,“心跳”通常具有相對(duì)低的周期性。I/O設(shè)備會(huì)在這些“心跳”消息之外基本上保持休眠狀態(tài),以等待某些條件得到滿足。當(dāng)該條件滿足時(shí),例如: 傳感器測(cè)量值超出某個(gè)范圍,I/O設(shè)備將向控制器發(fā)送一條指示異常已經(jīng)發(fā)生的消息。
關(guān)于指標(biāo)報(bào)告,它可以是積極的,也可以是消極的。積極指標(biāo)是指被報(bào)告為能夠表示某個(gè)物理量的特定值(布爾值、整數(shù)、浮點(diǎn)數(shù)等)指標(biāo)。積極指標(biāo)允許數(shù)值被另一臺(tái)設(shè)備和/或系統(tǒng)用作某種流程的輸入(例如: 控制函數(shù))。
對(duì)于過(guò)程控制周期而言,積極指標(biāo)通常是輸入控制回路并作為每個(gè)周期中被使用的過(guò)程變量。在檢查每個(gè)控制周期時(shí),除非滿足某些特定條件,否則不會(huì)主動(dòng)使用消極指標(biāo)。如果出現(xiàn)該類情況,消極指標(biāo)可能會(huì)導(dǎo)致系統(tǒng)進(jìn)入另一種狀態(tài),或者在主控制回路中執(zhí)行不同的子回路。然而,在正常操作期間,控制周期通常不會(huì)主動(dòng)使用這些指標(biāo)。
安全指標(biāo)通常被報(bào)告為消極指標(biāo)。殺毒軟件不斷地在后臺(tái)檢查系統(tǒng),但在錯(cuò)誤發(fā)生之前通常保持“后臺(tái)運(yùn)行”狀態(tài)。如果檢測(cè)到已知的病毒簽名,它就會(huì)提醒用戶出了問(wèn)題。除非用戶特意檢查軟件本身的狀態(tài),否則殺毒軟件將始終保持靜默。為了維持態(tài)勢(shì)感知,無(wú)論錯(cuò)誤或特殊情形是否出現(xiàn),需要了解整個(gè)系統(tǒng)在任意時(shí)刻的執(zhí)行情況。相應(yīng)的趨勢(shì)變化可在達(dá)到報(bào)警觸發(fā)值之前建立。
網(wǎng)絡(luò)安全監(jiān)控(NSM)是“收集、分析、升級(jí)指示和警告,以檢測(cè)入侵并對(duì)其響應(yīng)”。NSM表示“一種可以找到網(wǎng)絡(luò)入侵者并在其破壞企業(yè)之前對(duì)其采取措施的手段”[1]。NSM通常涉及從網(wǎng)絡(luò)中的不同來(lái)源收集所有可用日志和報(bào)警信息,并分析其感染指標(biāo)(IOC),注意: 該類信息有可能成為流向不法分子的網(wǎng)絡(luò)通信流。
NSM對(duì)于檢測(cè)已知和正在出現(xiàn)的威脅非常有效,因?yàn)樗⒎且环N能夠容易被擊敗的單一產(chǎn)品。NSM通常會(huì)從多個(gè)不同的來(lái)源收集信息并整合,從而形成較好的態(tài)勢(shì)感知。由于NSM更多的是一種監(jiān)測(cè)網(wǎng)絡(luò)IOC的方法,因此,其更有可能在攻擊出現(xiàn)時(shí),能夠通過(guò)使用單一類型的產(chǎn)品或技術(shù)捕捉到攻擊。
1.3.1網(wǎng)絡(luò)安全監(jiān)控的優(yōu)點(diǎn)
NSM特別適合大型計(jì)算環(huán)境,在該環(huán)境中,傳感器可以布置在關(guān)鍵點(diǎn)位上檢測(cè)IOC。
ICS網(wǎng)絡(luò)結(jié)構(gòu)的上層結(jié)構(gòu)如圖1所示。商業(yè)系統(tǒng)和服務(wù)器通過(guò)企業(yè)防火墻連接到因特網(wǎng),通過(guò)另一個(gè)防火墻連接到ICS網(wǎng)絡(luò)。隔離區(qū)(DMZ)用于防止ICS網(wǎng)絡(luò)和商業(yè)網(wǎng)絡(luò)之間的直接通信。ICS服務(wù)器與DMZ中的服務(wù)器通信,DMZ中的服務(wù)器與商業(yè)網(wǎng)絡(luò)中的服務(wù)器通信。
圖1 ICS網(wǎng)絡(luò)結(jié)構(gòu)的上層結(jié)構(gòu)示意
上層大多數(shù)網(wǎng)絡(luò)通信流會(huì)跨網(wǎng)絡(luò)邊界,所采用的協(xié)議是較為常見(jiàn)的IT協(xié)議。通常來(lái)講,在上層運(yùn)行的系統(tǒng)是更為常見(jiàn)的硬件和軟件平臺(tái),由于跨區(qū)域邊界的通信流可以被監(jiān)控,因此對(duì)于NSM非常重要。在區(qū)域邊界部署NSM傳感器可以較為便利地監(jiān)控網(wǎng)絡(luò)通信。由于上層的大部分流量均跨越了區(qū)域邊界,因此更容易監(jiān)控和分析任何可疑情況。
NSM傳感器可以更容易地部署在這些常見(jiàn)的硬件和軟件平臺(tái)上。代理軟件可以部署在服務(wù)器上,實(shí)時(shí)監(jiān)控系統(tǒng)參數(shù),而不需要專業(yè)工具或具備ICS經(jīng)驗(yàn)的人員。這就使得NSM傳感器可以通過(guò)網(wǎng)絡(luò)在更多的區(qū)域整合[3],從而能夠更早地發(fā)出IOC警報(bào)。
1.3.2網(wǎng)絡(luò)安全監(jiān)控的缺點(diǎn)
雖然NSM在網(wǎng)絡(luò)結(jié)構(gòu)的上層較為有效,但在下層卻較低。ICS網(wǎng)絡(luò)結(jié)構(gòu)的下層結(jié)構(gòu)如圖2所示。在該示例中,有多個(gè)能夠在基于以太網(wǎng)的工廠控制網(wǎng)絡(luò)和現(xiàn)場(chǎng)總線網(wǎng)絡(luò)之間通信的小型工作單元,這些工作單元表示生產(chǎn)裝置中的機(jī)撲(robotic)工作單元、單一加工區(qū)域中的遠(yuǎn)程控制站。圖2所示的工作單元之一位于一個(gè)能夠通過(guò)無(wú)線電線路與主裝置控制網(wǎng)絡(luò)通信的遠(yuǎn)程站點(diǎn)。工業(yè)控制網(wǎng)絡(luò)還包括操作員人機(jī)界面(HMI)、工程師工作站和專用控制設(shè)備。
圖2 ICS網(wǎng)絡(luò)結(jié)構(gòu)的下層結(jié)構(gòu)示意
下層網(wǎng)絡(luò)中的大多數(shù)網(wǎng)絡(luò)流量會(huì)在每個(gè)工作單元中“停留”,與留在工作單元內(nèi)的通信流相比,只有少量通信流能夠進(jìn)入或離開(kāi)工作單元到達(dá)主裝置控制網(wǎng)絡(luò),如此則導(dǎo)致在應(yīng)用常規(guī)NSM工具和技術(shù)時(shí)出現(xiàn)問(wèn)題。
網(wǎng)絡(luò)通信通常會(huì)在某一區(qū)域內(nèi)“停留”且從不跨區(qū)域邊界,意味著網(wǎng)絡(luò)中部署NSM傳感器的典型方式需要更改。此外,為了獲得網(wǎng)絡(luò)通信流的態(tài)勢(shì)感知,需要在網(wǎng)絡(luò)中部署專用的NSM傳感器,傳感器需要添加到每個(gè)工作單元中,以便在出現(xiàn)問(wèn)題時(shí)進(jìn)行檢測(cè)。
由于該下層網(wǎng)絡(luò)中的硬件和軟件平臺(tái)更加適合于ICS,因此需要在每個(gè)工作單元部署新的系統(tǒng)。在一個(gè)擁有大量工作單元的裝置中部署NSM傳感器的成本可能會(huì)迅速增加,因?yàn)槊總€(gè)傳感器的成本至少為幾萬(wàn)元人民幣。此外,傳感器需要各自通信回主NSM服務(wù)器,該服務(wù)器可以圍繞整個(gè)網(wǎng)絡(luò)收集數(shù)據(jù),這意味著工廠控制網(wǎng)絡(luò)需要添加大量的網(wǎng)絡(luò)通信流,以維持連續(xù)監(jiān)控。NSM傳感器必須是ICS協(xié)議感知,以檢測(cè)任何有價(jià)值的IOC,因此增加了系統(tǒng)的成本和復(fù)雜性,同時(shí)也限制了工具和技術(shù)的可用性。
網(wǎng)絡(luò)可靠性監(jiān)控(NRM)的概念在本質(zhì)上與NSM非常相似。NRM使用多種來(lái)源的數(shù)據(jù)來(lái)分析系統(tǒng)的性能,主要區(qū)別在于NRM使用網(wǎng)絡(luò)性能的主動(dòng)測(cè)量來(lái)建立圖像,并不需要實(shí)時(shí)監(jiān)控。
NSM的一個(gè)問(wèn)題是能否在網(wǎng)絡(luò)通信流中捕獲IOC,如果其中一個(gè)NSM傳感器未報(bào)告任何信息,則無(wú)法提供有關(guān)網(wǎng)絡(luò)的足夠信息,從而無(wú)法確定系統(tǒng)是否運(yùn)行正常。
通過(guò)使用實(shí)際網(wǎng)絡(luò)通信流的積極指標(biāo),NRM可以創(chuàng)建網(wǎng)絡(luò)執(zhí)行方式,它能夠主動(dòng)測(cè)量不同的網(wǎng)絡(luò)性能特征,并用它們來(lái)確定ICS設(shè)備是否按預(yù)期運(yùn)行。
雖然可以實(shí)時(shí)使用NRM,但通常情況下并非如此。ICS通常維持不變,因此測(cè)試是定期進(jìn)行的,或者在重大變更之后進(jìn)行。NRM可以在工廠驗(yàn)收測(cè)試(FAT),現(xiàn)場(chǎng)驗(yàn)收測(cè)試(SAT)和調(diào)試期間使用,以建立系統(tǒng)的基線簽名。然后,額外測(cè)試期間,可以比較新簽名與基線簽名,如果觀察到變化,或數(shù)據(jù)集中出現(xiàn)異常,則需要分析根本原因,以確定發(fā)生變化的原因。
由于NRM無(wú)需通過(guò)實(shí)時(shí)監(jiān)控來(lái)尋找IOC,因此可以減少監(jiān)控大型網(wǎng)絡(luò)所需的傳感器數(shù)量。單一捕獲設(shè)備或少量設(shè)備可以在不同的相對(duì)較短的時(shí)間(分鐘、小時(shí)或天)連接到ICS網(wǎng)絡(luò),這些捕獲設(shè)備并不需要通過(guò)網(wǎng)絡(luò)與服務(wù)器通信,因此工廠控制網(wǎng)絡(luò)將不受到NRM的影響。
NRM既簡(jiǎn)單又復(fù)雜。事實(shí)上,有許多可用于開(kāi)展NRM的工具,Wireshark[4]是一種開(kāi)源數(shù)據(jù)包捕獲、解碼器軟件包,它已經(jīng)成為事實(shí)上的標(biāo)準(zhǔn)。許多ICS協(xié)議均針對(duì)Wireshark開(kāi)發(fā)了數(shù)據(jù)包解碼器,因此并不需要使用專用軟件。Wireshark軟件能夠生成包含不同網(wǎng)絡(luò)數(shù)據(jù)包字段的簡(jiǎn)易電子表格文件。
Wireshark軟件通過(guò)某些參數(shù)過(guò)濾通信流,由于所有的數(shù)據(jù)包都在單一文件中相互交錯(cuò),所以Wireshark軟件具備依據(jù)網(wǎng)絡(luò)數(shù)據(jù)包中的某些參數(shù)過(guò)濾通信流的能力非常重要。所有通信流均應(yīng)進(jìn)行分類(廣播通信流、多播通信流,和單播通信流),以便分析它們的性能和可靠性。雖然生成通信流過(guò)濾器的過(guò)程通常都很冗長(zhǎng),但如果擁有以前沒(méi)有內(nèi)置到Wireshark軟件的常規(guī)數(shù)據(jù)包解碼器中的專有或未知協(xié)議,則該過(guò)程可能會(huì)變得更加復(fù)雜。
由于城鄉(xiāng)規(guī)劃工作的開(kāi)展與政府部門(mén)密切相關(guān),因此,在該學(xué)科走向計(jì)量化過(guò)程中需要考慮政府方面面臨的挑戰(zhàn)。具體表現(xiàn)為:
待過(guò)濾網(wǎng)絡(luò)通信流且生成可用于分析通信流的數(shù)據(jù)文件之后,即可分析通信流。這些通信流的圖形分析能夠讓工程師識(shí)別數(shù)據(jù)中的異常。周期性抖動(dòng)的網(wǎng)絡(luò)通信流分析如圖3所示。圖3右側(cè)所示為測(cè)量數(shù)據(jù)包間隔(MPI)與測(cè)試時(shí)間的對(duì)照散點(diǎn)圖,該圖顯示的是時(shí)間增量與時(shí)間的關(guān)系。MPI表示同一網(wǎng)絡(luò)通信流中后續(xù)數(shù)據(jù)包之間的測(cè)量時(shí)間。由于ICS網(wǎng)絡(luò)和系統(tǒng)嚴(yán)重依賴于設(shè)備之間的確定性通信,因此,網(wǎng)絡(luò)通信流需要盡可能地接近“確定性”頻率。周期性抖動(dòng)表示實(shí)際網(wǎng)絡(luò)通信流數(shù)據(jù)包相對(duì)于所需數(shù)據(jù)包間隔的可變性。在圖3中,期望的數(shù)據(jù)包間隔是10 ms,MPI的平均值為10 ms,最小到最大周期性抖動(dòng)約為500 μs。
圖3 周期性抖動(dòng)的網(wǎng)絡(luò)通信流分析示例1示意
圖3左側(cè)為數(shù)據(jù)頻率計(jì)數(shù)圖,它能夠提供頻率分析的某種測(cè)量,但并不會(huì)像傅里葉分析那樣完整。然而,這足可以幫助工程師理解數(shù)據(jù)中的可見(jiàn)波段。雖然圖3所示的圖形相當(dāng)穩(wěn)定,大多數(shù)數(shù)據(jù)包均出現(xiàn)在中心處,分布較為集中,且無(wú)長(zhǎng)期事件發(fā)生,但并非所有設(shè)備皆如此。圖4所示為單獨(dú)測(cè)試期間另一臺(tái)設(shè)備的網(wǎng)絡(luò)通信流。平均MPI為1 ms,周期性抖動(dòng)約為210 μs,表明該平均值附近的分布較好。設(shè)備分析圖中大約26 s出現(xiàn)一次拍頻圖形。
圖4 周期抖動(dòng)的網(wǎng)絡(luò)通信流分析示例2示意
嘗試?yán)斫庵芷诙秳?dòng)分析圖中觀察到的拍頻圖形或異常的最大難題之一是找到拍頻或異常的根本原因。設(shè)備結(jié)構(gòu)問(wèn)題可能是操作系統(tǒng)垃圾收集、殺毒軟件檢查和更新,以及屏幕操作等問(wèn)題。另外,網(wǎng)絡(luò)基礎(chǔ)設(shè)施也可能存在問(wèn)題,諸如: 電磁干擾(EMI)、信號(hào)劣化或腐蝕。ICS環(huán)境并不一定總是有利于針對(duì)辦公環(huán)境的網(wǎng)絡(luò)基礎(chǔ)設(shè)施接線和設(shè)備[5],有的時(shí)候,大量的機(jī)械、化學(xué)品、顆粒物等因素有可能會(huì)影響網(wǎng)絡(luò)通信性能。另外,也有可能在實(shí)際發(fā)生安全事件的情況下,拍頻圖形或異常情形上會(huì)呈現(xiàn)出IOC。若缺少可以用于比較的基線通信流,則很難對(duì)此加以確定。
尋找網(wǎng)絡(luò)簽名異常時(shí),開(kāi)發(fā)良好的比較基線非常重要。由于條件不斷變化,因此采用IT設(shè)計(jì)良好的基線可能會(huì)很困難。然而,在ICS環(huán)境中卻很容易。系統(tǒng)在開(kāi)始運(yùn)行之前要經(jīng)過(guò)多次測(cè)試,包括: FAT,SAT和調(diào)試,每次測(cè)試期間,均應(yīng)該捕獲基線簽名,這些基線捕獲可用來(lái)與將來(lái)的簽名進(jìn)行比較。
除了系統(tǒng)初始測(cè)試之外,ICS一般不會(huì)定期變更,除非系統(tǒng)中的某些改變表明ICS設(shè)備或程序正在發(fā)生改變,否則系統(tǒng)將會(huì)按照安裝時(shí)的方式運(yùn)行,這有可能是由于工藝變更,設(shè)備更換,程序效率變化,或者其他因素所致,但這些并非正常運(yùn)行條件。事實(shí)上,系統(tǒng)可以在不做任何變化的情況下運(yùn)行數(shù)年,除了靜態(tài)環(huán)境之外, ICS開(kāi)展變更管理時(shí)必須要一致。最終用戶無(wú)法準(zhǔn)確地記錄每一次變更,但對(duì)系統(tǒng)進(jìn)行重大變更時(shí),通常會(huì)形成文件記錄。捕獲設(shè)備簽名應(yīng)作為變更管理過(guò)程的一部分,如此一來(lái),便可依據(jù)新配置的需要更新基線簽名。
ICS設(shè)備在檢驗(yàn)和停機(jī)期間也要定期測(cè)試。測(cè)試頻率有可能是每年一次或者幾年一次,但通常在某個(gè)固定的時(shí)間段進(jìn)行。在此期間,還應(yīng)該為系統(tǒng)收集簽名。
現(xiàn)實(shí)當(dāng)中為了保持態(tài)勢(shì)感知,有可能需要實(shí)時(shí)分析這些簽名。實(shí)時(shí)測(cè)試要求在整個(gè)網(wǎng)絡(luò)中安裝監(jiān)測(cè)傳感器,這些監(jiān)測(cè)傳感器需要有足夠?qū)崟r(shí)捕獲和分析網(wǎng)絡(luò)通信流的能力,然后將其報(bào)告給相應(yīng)的監(jiān)測(cè)系統(tǒng)。為了應(yīng)對(duì)監(jiān)控系統(tǒng)增加的通信流,有時(shí)需要調(diào)整基礎(chǔ)設(shè)施的規(guī)模,操作人員必須負(fù)責(zé)監(jiān)控分析結(jié)果,這是其正常管控職責(zé)的一部分。所有這些因素使得可靠性數(shù)據(jù)的實(shí)時(shí)監(jiān)控對(duì)操作運(yùn)行的影響大幅降低,多數(shù)情況下,通過(guò)應(yīng)用實(shí)時(shí)NRM降低成本不一定合理。
使用NRM的更簡(jiǎn)單、更有效方法是使用少量臨時(shí)部署的NRM傳感器。這些NRM傳感器可以根據(jù)環(huán)境的臨界性,以不同的頻率在整個(gè)系統(tǒng)的選定點(diǎn)收集和分析網(wǎng)絡(luò)通信流[5]。
在某些時(shí)段,通過(guò)使用少量能夠與網(wǎng)絡(luò)連接且性能更為優(yōu)良的傳感器,便可以不必修改網(wǎng)絡(luò)基礎(chǔ)設(shè)施。通信流可在所期望的網(wǎng)絡(luò)基礎(chǔ)設(shè)施上就地捕獲,因此不必穿過(guò)防火墻、隔離區(qū)或其他網(wǎng)絡(luò)設(shè)備來(lái)收集數(shù)據(jù)。另外,還可以在整個(gè)網(wǎng)絡(luò)的不同位置收集數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行后處理。工程師可以在不同的時(shí)間負(fù)責(zé)簽名比較,而不必在捕獲數(shù)據(jù)時(shí)實(shí)時(shí)查看簽名。
盡管可能沒(méi)有必要連續(xù)監(jiān)視NRM系統(tǒng),但最好能夠讓捕獲和分析過(guò)程自動(dòng)化。在正常的ICS環(huán)境中,數(shù)據(jù)的采集量和通信流的數(shù)量會(huì)使得人工分析變得非常困難且極為耗時(shí),對(duì)于以小時(shí)計(jì)的通信流捕獲,可能需要花費(fèi)數(shù)天的時(shí)間來(lái)分析收集所有通信流(主要取決于分析的難易程度)。因此,在選擇使用NRM時(shí),首先需要考慮其流程自動(dòng)化,在查看多個(gè)捕獲文件時(shí),采用圖像形式的Wireshark等工具進(jìn)行通信流分析是不可取的。
大部分通信流分析都可以通過(guò)編寫(xiě)腳本來(lái)實(shí)現(xiàn)。許多電子表格處理程序均有某種形式可以用來(lái)導(dǎo)入的文件并自動(dòng)對(duì)導(dǎo)入文件進(jìn)行一些計(jì)算的腳本語(yǔ)言。工程師仍需要對(duì)該類腳本文件進(jìn)行某種形式的分析,但大部分的分析可以由計(jì)算機(jī)來(lái)完成而無(wú)需人工交互。
在查看圖4所示的圖形時(shí),有必要知曉圖中所給類型的拍頻圖形為正常運(yùn)行模式,還是異常運(yùn)行模式。由于在很短的捕獲時(shí)間內(nèi)通信流捕獲的數(shù)據(jù)集會(huì)非常大,因此有必要將數(shù)據(jù)轉(zhuǎn)換為某種形式的數(shù)理統(tǒng)計(jì)數(shù)據(jù),以便能夠隨時(shí)間的推移對(duì)其監(jiān)控和比較。
查看數(shù)據(jù)最簡(jiǎn)單和最常見(jiàn)的一類方法是平均值、最小值和最大值,該類型的統(tǒng)計(jì)數(shù)據(jù)作為其維護(hù)特征的一部分,很容易從設(shè)備本身獲得。然而,它們并不能說(shuō)明全部情況,為了更好地了解正在發(fā)生的情況,需要應(yīng)用其他統(tǒng)計(jì)和數(shù)學(xué)手段。
另一個(gè)需要計(jì)算的簡(jiǎn)單統(tǒng)計(jì)指標(biāo)是標(biāo)準(zhǔn)差,該指標(biāo)有助于對(duì)通信流的理解。如果通信流正常情況下呈現(xiàn)緊湊分布,但隨著時(shí)間的推移開(kāi)始變寬,表明可能有問(wèn)題出現(xiàn)。問(wèn)題的根本原因有可能很難確定,但是對(duì)根本原因的調(diào)查可能會(huì)給出一些影響性能的新因素。
另外,標(biāo)準(zhǔn)差還可用作IOC。針對(duì)測(cè)試系統(tǒng)進(jìn)行的“中間人”(MITM)攻擊的周期性抖動(dòng)分析如圖5所示[6]。在本例中,MPI的平均值保持不變(約10 ms),但分布有明顯變化,在約8 ms和約12 ms時(shí)出現(xiàn)了旁瓣。該類情況在標(biāo)準(zhǔn)差分析期間很容易被發(fā)現(xiàn)。
圖5 顯示MITM攻擊的周期性抖動(dòng)分析示意
其他類型的分析也可以提供更多的信息,諸如: 快速傅里葉變換、卷積,以及相關(guān)函數(shù)等均可用來(lái)更好地理解通信流。鑒于這些算法能夠在中等硬件條件下快速運(yùn)行,所以應(yīng)予以考慮。它們?cè)谟?jì)算時(shí)的確需要一些時(shí)間,因此可能不太適合首次數(shù)據(jù)分析,然而卻較適合于更為深入的二次或者三次數(shù)據(jù)分析。
作為能夠初步了解一些最基本數(shù)據(jù)集中所包含的各種通信流的均衡且快速的統(tǒng)計(jì)數(shù)據(jù)集[7],可以使用的基本指標(biāo)集包括: 平均值、最小值、最大值、標(biāo)準(zhǔn)差。
對(duì)于一個(gè)正常的ICS網(wǎng)絡(luò)而言,這四種統(tǒng)計(jì)量能夠在極短的時(shí)間內(nèi)(近乎實(shí)時(shí))計(jì)算出來(lái)。通信流捕獲可按一定的頻率收集,通常是30 s或60 s的周期,在獲得下一個(gè)通信流捕獲文件之前,可以計(jì)算出該類通信流的統(tǒng)計(jì)數(shù)據(jù)。如此,基本數(shù)據(jù)分析就可以在近乎實(shí)時(shí)地條件下進(jìn)行,如果需要更為深入的分析,則可以使用上文提及的數(shù)學(xué)和統(tǒng)計(jì)方法重新分析通信流捕獲。
統(tǒng)計(jì)量的計(jì)算除了方便、快速之外,還容易被工程師和操作人員理解。上述指標(biāo)可以在儀表板上顯示變化趨勢(shì),且隨著時(shí)間的推移,很容易比較。如果數(shù)據(jù)明顯超出范圍,則表明已出現(xiàn)問(wèn)題需要調(diào)查。在許多情況下,僅僅知道狀況正在發(fā)生變化就足以提醒操作人員注意ICS環(huán)境中的潛在問(wèn)題。并非所有的指示都會(huì)導(dǎo)致重要的報(bào)警,但它們可能會(huì)表明,應(yīng)該開(kāi)展一些維護(hù)活動(dòng),以便使系統(tǒng)回到其期望狀態(tài)。這些統(tǒng)計(jì)數(shù)據(jù)提供了良好的信息集,可以使工程師理解數(shù)據(jù),而不會(huì)被過(guò)多的數(shù)據(jù)所淹沒(méi)。
NSM對(duì)于許多系統(tǒng)來(lái)說(shuō)都是一個(gè)好辦法,但是它并不是針對(duì)ICS環(huán)境的下層網(wǎng)絡(luò)而設(shè)計(jì)的,許多現(xiàn)有的簡(jiǎn)單工具,均可用于ICS環(huán)境的各層來(lái)開(kāi)展某種形式的NRM。然而,本文中討論的工具和技術(shù)更適合于網(wǎng)絡(luò)結(jié)構(gòu)的下層,在ICS環(huán)境中,不需要連續(xù)監(jiān)控NRM。事實(shí)上,為了適應(yīng)連續(xù)的NRM有可能需要對(duì)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行大規(guī)模的更改,因此周期性的、本地化的測(cè)試可能是一個(gè)更好的辦法。
測(cè)試和數(shù)據(jù)分析的自動(dòng)化對(duì)NRM來(lái)說(shuō)非常重要,這是因?yàn)殡S著網(wǎng)絡(luò)變得越來(lái)越大,分析通信流數(shù)量所需的時(shí)間呈數(shù)量級(jí)遞增。分析通信流所需的工具和算法并不需要非常復(fù)雜,就能夠基本了解ICS環(huán)境,當(dāng)發(fā)現(xiàn)異常時(shí),可以根據(jù)需要進(jìn)行更為復(fù)雜的分析,但在正常運(yùn)行中通常則不需要。