盧 凱,朱廣宇,王紹杰,劉智國
(中國電子信息產(chǎn)業(yè)集團有限公司第六研究所,北京 102209)
工業(yè)控制系統(tǒng)(ICS)是幾種不同類型的控制系統(tǒng)的總稱,包括監(jiān)控和數(shù)據(jù)采集系統(tǒng)(SCADA)、分布式控制系統(tǒng)(DCS)和其他控制系統(tǒng)(如可編程邏輯控制器(PLC))[1]。工業(yè)控制系統(tǒng)廣泛應(yīng)用于電力電網(wǎng)、石油石化、冶金建材、食品醫(yī)藥、市政水利、核能設(shè)施、先進(jìn)制造等國家關(guān)鍵基礎(chǔ)設(shè)施的運行控制過程中,是國家關(guān)鍵基礎(chǔ)設(shè)施的“中樞神經(jīng)”。一旦工業(yè)控制系統(tǒng)信息安全出現(xiàn)漏洞,將對工業(yè)生產(chǎn)運行和國家經(jīng)濟安全造成重大威脅。而隨著云計算技術(shù)、物聯(lián)網(wǎng)技術(shù)的快速發(fā)展以及“兩化融合”工作的不斷深化,工業(yè)控制系統(tǒng)面臨的內(nèi)外部安全威脅日益嚴(yán)重,保障工業(yè)控制系統(tǒng)信息安全已經(jīng)上升到了國家安全戰(zhàn)略的高度。
工業(yè)控制系統(tǒng)信息安全測試平臺為工業(yè)控制系統(tǒng)的設(shè)計開發(fā)、測試驗證、故障定位、缺陷分析以及運行維護提供完善、高效的測試驗證環(huán)境,可以對重點行業(yè)領(lǐng)域的工控系統(tǒng)進(jìn)行覆蓋控制器級、網(wǎng)絡(luò)級和系統(tǒng)級的信息安全測試驗證及風(fēng)險評估,整體提升工業(yè)控制系統(tǒng)的信息安全監(jiān)測和防護能力。開展工業(yè)控制系統(tǒng)信息安全測試平臺的研究是保障工業(yè)控制系統(tǒng)信息安全的重要途徑。
國外很早就開始了相關(guān)方面的研究和應(yīng)用[2-4]。美國愛達(dá)荷國家實驗室(INL)自2003年起就開始實施由美國政府支持的建設(shè)關(guān)鍵基礎(chǔ)設(shè)施測試靶場計劃,包括SCADA控制系統(tǒng)測試床和電力電網(wǎng)測試床等,提供真實的測試環(huán)境,對工業(yè)控制系統(tǒng)的脆弱性和軟硬件安全性進(jìn)行測試評估;歐洲也搭建了SCADA安全測試平臺,構(gòu)建分布式測試環(huán)境,測試、評估、驗證、保護SCADA系統(tǒng)的安全性;Wurldtech等國際知名工業(yè)安全測試公司也推出了相關(guān)的測試平臺,如Achilles測試工具、ICS Sandbox測試平臺等。
國內(nèi)近幾年在工業(yè)控制系統(tǒng)信息安全測試平臺方面開展相關(guān)的研究工作,也取得了一定的成果,如電子六所在2015年發(fā)布的工控健壯性測試平臺、各信息安全廠商推出的信息安全防護平臺以及一些專業(yè)機構(gòu)推出的行業(yè)仿真測試平臺等。但是現(xiàn)在的這些測試平臺存在著行業(yè)應(yīng)用局限性、功能單一性、控制系統(tǒng)適應(yīng)性等問題[5-7],基于此,本文提出了一種弱化控制系統(tǒng)型號和應(yīng)用行業(yè)(只針對工業(yè)控制系統(tǒng)架構(gòu)本身),集檢測、攻防、仿真、評估于一體的信息安全測試平臺設(shè)計架構(gòu),并論述了開展相關(guān)應(yīng)用研究的進(jìn)展情況。
工業(yè)控制系統(tǒng)的信息安全威脅有多個方面[8],比如:工控協(xié)議本身未采取安全措施,明文傳輸或存在漏洞;工控系統(tǒng)長時間不間斷運行導(dǎo)致操作系統(tǒng)版本、漏洞庫等無法及時更新,易受病毒攻擊感染;系統(tǒng)網(wǎng)絡(luò)設(shè)計不完善,存在外部攻擊通道;對外接口開放,存在安全隱患;外部信息破壞手段不斷提高,各種攻擊手段層出不窮等。為應(yīng)對以上安全威脅,工業(yè)控制系統(tǒng)信息安全測試平臺應(yīng)該具有如下的功能:
(1)針對工業(yè)控制系統(tǒng)通信協(xié)議的特殊性,構(gòu)建工控系統(tǒng)漏洞庫;
(2)能對被測工業(yè)控制系統(tǒng)進(jìn)行漏洞掃描及漏洞挖掘;
(3)能對工業(yè)控制系統(tǒng)的外部接口進(jìn)行管理,測試外部威脅引入系統(tǒng)的可能性;
(4)能夠模擬攻擊場景、攻擊行為,測試和驗證系統(tǒng)的防護能力;
(5)能夠?qū)Υ罱ǖ淖钚』到y(tǒng)進(jìn)行模擬或仿真擴充,打造接近真實的網(wǎng)絡(luò)測試環(huán)境;
(6)建立風(fēng)險分析方法,能夠?qū)Ρ粶y工業(yè)控制系統(tǒng)進(jìn)行風(fēng)險評估。
工業(yè)控制系統(tǒng)信息安全測試平臺的設(shè)計思路是提供一個統(tǒng)一的平臺,在平臺上集成系統(tǒng)安全測試和隱患分析服務(wù)、風(fēng)險評估服務(wù)、安全事件場景復(fù)現(xiàn)服務(wù)以及提供自動化測試工具、網(wǎng)絡(luò)與工藝仿真、攻防試驗等工具和軟件。平臺總體架構(gòu)如圖1所示。
圖1 工業(yè)控制系統(tǒng)信息安全測試平臺總計架構(gòu)圖
工業(yè)控制系統(tǒng)信息安全測試平臺由測試配置子平臺、測試監(jiān)控子平臺、安全測試工具集、威脅接入子平臺、安全信息庫、仿真運行環(huán)境、仿真接入子平臺、運行場景庫等部分組成,各部分的功能如下。
(1)測試配置子平臺
測試配置子平臺主要功能:配置仿真運行環(huán)境,包括虛擬設(shè)備、虛擬子系統(tǒng)、虛擬MES系統(tǒng),以及仿真系統(tǒng)與被測工業(yè)控制系統(tǒng)和監(jiān)控子平臺的通信接口協(xié)議和鏈路參數(shù);配置安全測試工具集,包括各工具參數(shù)以及各工具與被測工業(yè)控制系統(tǒng)和監(jiān)控子平臺的通信接口協(xié)議和鏈路參數(shù);配置測試監(jiān)控子平臺參數(shù),包括設(shè)備、通信、信息、畫面、邏輯等。
(2)測試監(jiān)控子平臺
測試監(jiān)控子平臺主要功能:提供安全測試集中操作控制臺,包括一套主操作控制臺和若干套協(xié)操作控制臺,共同完成對仿真環(huán)境和測試工具運行控制;通過大屏幕顯示器,提供對測試環(huán)境、被測對象、威脅行為的綜合可視化輸出;提供對測試數(shù)據(jù)的記錄、分析,識別被測對象薄弱環(huán)節(jié),對被測工業(yè)控制系統(tǒng)信息安全風(fēng)險作出量化評估。
(3)安全測試工具集
安全測試工具集主要功能:監(jiān)測工業(yè)控制系統(tǒng)的狀態(tài),包括資產(chǎn)的運行狀態(tài)安全監(jiān)測、資產(chǎn)配置監(jiān)測等;檢測工業(yè)控制系統(tǒng)的異常行為并進(jìn)行實時分析,包括異常通信檢測、非法接入檢測、惡意進(jìn)攻行為報警等;向工業(yè)控制系統(tǒng)注入威脅性檢測信號并進(jìn)行實時檢測和分析,包括端口掃描/操作系統(tǒng)探測、Fuzzing測試、認(rèn)證攻擊、邏輯攻擊、命令執(zhí)行、授權(quán)攻擊、客戶端攻擊等。
(4)威脅接入子平臺
威脅接入子平臺主要功能:提供工業(yè)控制系統(tǒng)在配置、運行期間可能受到的外部威脅源入口,如工業(yè)控制系統(tǒng)邊界的企業(yè)管理信息區(qū)接口、子系統(tǒng)互聯(lián)接口、遠(yuǎn)程維護接口,及工業(yè)控制系統(tǒng)內(nèi)部的交換機多余接口,主機、控制器或工程師站的多余通信接口等。
(5)安全信息庫
安全信息庫主要包括:典型工業(yè)控制系統(tǒng)的缺陷信息庫;操作系統(tǒng)、數(shù)據(jù)庫、工業(yè)控制系統(tǒng)的漏洞庫;工業(yè)控制網(wǎng)絡(luò)通信協(xié)議特征庫;典型工業(yè)控制系統(tǒng)的測試案例庫。
(6)仿真運行環(huán)境
仿真運行環(huán)境主要功能:通過仿真手段,搭建起工業(yè)控制系統(tǒng)完整運行環(huán)境,包括模仿底層工藝系統(tǒng)的虛擬設(shè)備、模仿與工業(yè)控制系統(tǒng)互聯(lián)的虛擬子系統(tǒng)、模仿與LEVEL 3層制造執(zhí)行系統(tǒng)(MES)交互的虛擬MES。其中虛擬設(shè)備提供高精度I/O能力,可與工業(yè)控制系統(tǒng)的I/O單元直連,并通過通用可組態(tài)測試工具進(jìn)行驅(qū)動和管理。虛擬子系統(tǒng)和虛擬MES由純軟件模擬。
(7)仿真接入子平臺
仿真接入子平臺主要功能:提供可直接連接工業(yè)控制系統(tǒng)的硬接線端口及控制系統(tǒng)上下層通信接口。
(8)運行場景庫
運行場景庫主要功能:虛擬設(shè)備、虛擬子系統(tǒng)、虛擬MES采用ISO 20242(測試應(yīng)用服務(wù)接口)規(guī)定的軟件結(jié)構(gòu)和接口形式,保持高度靈活性、擴展性,為安全測試構(gòu)造足夠真實、復(fù)雜、多樣的行業(yè)應(yīng)用環(huán)境。
為實現(xiàn)測試平臺的搭建,將上述測試平臺設(shè)計架構(gòu)的研究內(nèi)容進(jìn)行分解,已經(jīng)實現(xiàn)的關(guān)鍵技術(shù)或已經(jīng)產(chǎn)品化的研究內(nèi)容如下。
(1)安全信息庫及漏洞掃描系統(tǒng)[9]
基于安全信息庫的漏洞掃描系統(tǒng)由信息安全庫、資產(chǎn)發(fā)現(xiàn)模塊、協(xié)議識別模塊、已知漏洞掃描模塊以及風(fēng)險評估分析模塊組成,可對工業(yè)控制系統(tǒng)進(jìn)行漏洞發(fā)現(xiàn)和分析。工控漏洞庫從中國國家漏洞庫、國家信息安全漏洞共享平臺、國家安全漏洞庫以及CVE(Common Vulnerabilities and Exposures)漏洞庫中搜集整理工業(yè)控制系統(tǒng)相關(guān)漏洞信息,加入自行挖掘出的工控漏洞信息,不斷豐富,目前已經(jīng)達(dá)到了近千條的規(guī)模。資產(chǎn)發(fā)現(xiàn)模塊用來對被測系統(tǒng)的資產(chǎn)清單進(jìn)行管理,協(xié)議識別模塊與信息安全庫結(jié)合用來確保生成測試用例的全面性,通過測試用例對被測系統(tǒng)的檢測和比對,來確定被測系統(tǒng)是否存在已知的漏洞。
(2)工控漏洞挖掘系統(tǒng)[10-11]
基于模糊測試技術(shù)的工控漏洞挖掘系統(tǒng)由控制模塊、端口掃描模塊、測試數(shù)據(jù)配置與生成模塊、測試用例執(zhí)行模塊和網(wǎng)絡(luò)/邏輯監(jiān)控模塊組成,可對常用網(wǎng)絡(luò)協(xié)議以及工控協(xié)議進(jìn)行漏洞挖掘。已經(jīng)采用本漏洞挖掘系統(tǒng)進(jìn)行漏洞挖掘試驗的工控協(xié)議包括ModbusTCP/IP、DNP3.0、EtherNet/IP-CIP、Foudation Fieldbus、IEC104、IEC61850、MMS和PROFINET,挖掘出的漏洞如某國產(chǎn)PLC產(chǎn)品經(jīng)過IP分片語法測試可導(dǎo)致底層TCP/IP協(xié)議棧出現(xiàn)異常。
(3)網(wǎng)絡(luò)仿真與攻防試驗系統(tǒng)
網(wǎng)絡(luò)仿真與攻防試驗系統(tǒng)采用虛擬化技術(shù)、VM快速部署技術(shù)、虛實互聯(lián)技術(shù)等主要技術(shù)進(jìn)行應(yīng)用及研發(fā),開發(fā)平臺使用Eclipse、PyCharm、WebStorm,系統(tǒng)運行環(huán)境使用Linux操作系統(tǒng),開發(fā)環(huán)境包括Tomcat、MySQL、Nginx等,開發(fā)語言使用Java、Python、JS、C。目前系統(tǒng)已經(jīng)處于測試階段。
網(wǎng)絡(luò)仿真軟件基于容器虛擬化技術(shù),通過在容器中運行高逼真路由程序,達(dá)到與實際網(wǎng)絡(luò)一致的效果。網(wǎng)絡(luò)仿真軟件由網(wǎng)絡(luò)拓?fù)渚庉嬈鳌⒎抡婢W(wǎng)絡(luò)管理模塊、流量仿真模塊、路由仿真模塊、流量采集與展示模塊和系統(tǒng)維護管理模塊組成,用于仿真不同規(guī)模的網(wǎng)絡(luò),能夠支持網(wǎng)絡(luò)規(guī)模的擴展。網(wǎng)絡(luò)拓?fù)渚庉嫿缑嫒鐖D2所示。
圖2 網(wǎng)絡(luò)仿真軟件拓?fù)渚庉嫿缑?/p>
網(wǎng)絡(luò)仿真與攻防試驗系統(tǒng)通過網(wǎng)絡(luò)拓?fù)湓O(shè)計以及虛擬節(jié)點的部署來搭建出測試環(huán)境,根據(jù)虛擬節(jié)點的功能劃分,在虛擬機中安裝被測工業(yè)控制系統(tǒng)的組態(tài)及運行軟件或者安裝擬對被測系統(tǒng)進(jìn)行測試的攻擊工具。這樣,網(wǎng)絡(luò)仿真與攻防試驗系統(tǒng)一方面可以對被測工業(yè)控制系統(tǒng)進(jìn)行網(wǎng)絡(luò)環(huán)境仿真和擴充,另一方面也可以構(gòu)建攻擊網(wǎng)絡(luò)對被測系統(tǒng)進(jìn)行攻擊和滲透測試。
(4)虛實互聯(lián)技術(shù)
虛實互聯(lián)技術(shù)是網(wǎng)絡(luò)仿真與攻防試驗系統(tǒng)采用的主要技術(shù)之一,實現(xiàn)虛擬網(wǎng)絡(luò)與實物網(wǎng)絡(luò)設(shè)備之間的通信,將虛擬網(wǎng)絡(luò)與實物網(wǎng)絡(luò)有機結(jié)合成一個具備統(tǒng)一網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)和邏輯視圖的目標(biāo)網(wǎng)絡(luò)[12]。虛擬互聯(lián)的核心是虛擬網(wǎng)絡(luò)通過虛實互聯(lián)服務(wù)器與實物網(wǎng)絡(luò)之間建立一個中間映射層以實現(xiàn)虛實網(wǎng)絡(luò)互聯(lián),系統(tǒng)通過解析虛實網(wǎng)絡(luò)配置獲得虛實網(wǎng)絡(luò)邊界信息,根據(jù)轉(zhuǎn)發(fā)關(guān)系對相關(guān)實物網(wǎng)絡(luò)接口進(jìn)行配置,使實物網(wǎng)絡(luò)設(shè)備與虛實互聯(lián)服務(wù)器能夠正常通信。圖3所示為某實物主機的端口設(shè)置窗口,圖4所示為實物交換機與虛擬網(wǎng)絡(luò)及實物主機的關(guān)聯(lián)設(shè)置窗口。
圖3 實物主機端口設(shè)置窗口
圖4 實物交換機關(guān)聯(lián)設(shè)置窗口
圍繞本文提出的工業(yè)控制系統(tǒng)信息安全測試平臺設(shè)計架構(gòu),主要的功能開發(fā)工作已經(jīng)基本完成,下一步要開展的工作主要包括:
(1)系統(tǒng)接口及配置平臺開發(fā)。工業(yè)控制系統(tǒng)信息安全測試平臺作為一個產(chǎn)品形態(tài),應(yīng)該具有統(tǒng)一的操作入口,需要開發(fā)一套平臺配置與操作系統(tǒng),并整合漏洞掃描系統(tǒng)、漏洞挖掘系統(tǒng)以及網(wǎng)絡(luò)仿真與攻防測試系統(tǒng)的通信接口和通信內(nèi)容,形成統(tǒng)一的呈現(xiàn)界面。
(2)評估功能整合。結(jié)合等級保護的要求和工業(yè)控制系統(tǒng)的特點,設(shè)計一套測評的模型,并將漏洞掃描、漏洞挖掘以及攻防測試的結(jié)果整合進(jìn)評估模型中,實現(xiàn)評估結(jié)果自動生成與導(dǎo)出功能。
(3)資源庫豐富。安全信息庫與運行場景庫都需要針對不同的測試場景不斷地進(jìn)行豐富,協(xié)議指紋庫和測試案例庫至少要覆蓋國內(nèi)主流的工業(yè)控制系統(tǒng)。
國內(nèi)現(xiàn)有的一些工業(yè)控制系統(tǒng)信息安全測試平臺存在一定的局限性,比如電力電網(wǎng)仿真測試床具有鮮明的行業(yè)特征、漏洞掃描工具功能單一、某些測試平臺基于特定的控制系統(tǒng)型號開發(fā)而不具有普適性等,針對這些問題,本文提出了一種弱化控制系統(tǒng)型號和應(yīng)用行業(yè),集檢測、攻防、仿真、評估于一體的信息安全測試平臺設(shè)計架構(gòu),并論述了相關(guān)技術(shù)的開發(fā)進(jìn)展情況。目前測試平臺的主要功能已經(jīng)能夠?qū)崿F(xiàn),下一步主要進(jìn)行人機界面開發(fā)、評估功能整合以及測試平臺的應(yīng)用推廣工作,通過測試平臺的應(yīng)用來發(fā)現(xiàn)工業(yè)控制系統(tǒng)的漏洞和缺陷,提出整改意見,保障工業(yè)控制系統(tǒng)信息安全。
[1] NIST.SP800-82, guide to industrial control systems(ICS) security[M].Gaithersburg:NIST,2011.
[2] 盧坦,林濤,梁頌.美國工控安全保障體系研究及啟示[J].保密科學(xué)技術(shù),2014(4):24-33.
[3] 黃慧萍,肖世德,孟祥印.SCADA系統(tǒng)信息安全測試床研究進(jìn)展[J].計算機應(yīng)用研究,2012,32(7):1926-1930.
[4] 萬明.工業(yè)控制系統(tǒng)信息安全測試與防護技術(shù)趨勢[J].自動化博覽,2014(9):68-71.
[5] 李航.從“0”到“1”:我國自主研發(fā)工控協(xié)議通訊健壯性測試平臺[J].自動化博覽,2015(9):70-73.
[6] 周侃恒,吳清,謝新勤,等.便攜式化工生產(chǎn)流程控制信息安全測試平臺[J].工業(yè)控制計算機,2015,28(10):1-3.
[7] 陳云輝,劉東,凌萬水,等.主動配電網(wǎng)協(xié)調(diào)控制仿真測試平臺[J].電力系統(tǒng)自動化,2015,39(9):54-60.
[8] 王志強,王紅凱,張旭東,等.工業(yè)控制系統(tǒng)安全隱患及應(yīng)對措施研究[J].信息網(wǎng)絡(luò)安全,2014(9):203-206.
[9] 秦媛媛,朱廣宇,田曉娜,等.基于CVE漏洞庫的工控漏洞發(fā)現(xiàn)和分析系統(tǒng)研究[J].信息通信技術(shù),2017(3):54-59.
[10] 朱廣宇,秦媛媛,陳波,等.面向工業(yè)互聯(lián)網(wǎng)環(huán)境的模糊測試系統(tǒng)設(shè)計研究與實現(xiàn)[J].信息通信技術(shù),2017(3):72-76.
[11] 李航,董偉,朱廣宇.基于Fuzzing測試的工業(yè)控制協(xié)議漏洞挖掘技術(shù)研究[J].信息網(wǎng)絡(luò)安全,2014(9):203-206.
[12]方濱興,賈焰,李愛平,等.網(wǎng)絡(luò)空間靶場技術(shù)研究[J].信息安全學(xué)報,2016,1(3):1-9.