1 工業(yè)控制系統(tǒng)的脆弱性
由于工業(yè)控制系統(tǒng)正向復(fù)雜化、IT化和通用化趨勢(shì)發(fā)展,基于PC+Windows的工業(yè)控制網(wǎng)絡(luò)面臨安全挑戰(zhàn),這些年不僅國外發(fā)生了一些安全事件,同時(shí)國內(nèi)也暴露出了一系列的工業(yè)控制系統(tǒng)信息安全的問題。比如2010年齊魯石化、2011年大慶石化煉油廠,某裝置控制系統(tǒng)分別感染Conficker病毒,都造成控制系統(tǒng)服務(wù)器與控制器通訊不同程度的中斷。
ICS-CERT安全報(bào)告指出“近三年針對(duì)工業(yè)控制系統(tǒng)的安全事件呈明顯上升趨勢(shì),僅2013年度,針對(duì)關(guān)鍵基礎(chǔ)設(shè)施的攻擊報(bào)告已達(dá)到257起。”主要集中在能源、關(guān)鍵制造業(yè)、交通、通信、水利、核能等領(lǐng)域,而能源行業(yè)的安全事故則超過了一半。如圖1所示。
圖1 近三年各領(lǐng)域發(fā)生工業(yè)控制系統(tǒng)的安全事件比例
我們認(rèn)為,歸根結(jié)底就是工業(yè)控制系統(tǒng)的漏洞問題,截止到2013年12月底,公開的工業(yè)控制系統(tǒng)漏洞數(shù)總體仍呈增長趨勢(shì)。2010年6月出現(xiàn)的Stuxnet病毒,是世界上首個(gè)專門針對(duì)工業(yè)控制系統(tǒng)編寫的席卷全球工業(yè)界破壞性病毒,它同時(shí)利用7個(gè)最新漏洞進(jìn)行攻擊。這7個(gè)漏洞中,有5個(gè)是針對(duì)windows系統(tǒng),2個(gè)是針對(duì)西門子SIMATIC WinCC系統(tǒng)。
工業(yè)控制系統(tǒng)的漏洞主要包括5個(gè)方面,如下:
(1)通信協(xié)議漏洞
兩化融合和物聯(lián)網(wǎng)的發(fā)展使得TCP/IP協(xié)議等通用協(xié)議越來越廣泛地應(yīng)用在工業(yè)控制網(wǎng)絡(luò)中,隨之而來的通信協(xié)議漏洞問題也日益突出。
(2)操作系統(tǒng)漏洞
目前大多數(shù)工業(yè)控制系統(tǒng)的工程師站/操作站/HMI都是Windows平臺(tái)的,通常現(xiàn)場(chǎng)工程師在系統(tǒng)開啟后不會(huì)對(duì)windows平臺(tái)安全任何補(bǔ)丁,埋下了安全隱患。
(3)應(yīng)用軟件漏洞
由于應(yīng)用軟件多種多樣,很難形成統(tǒng)一的防護(hù)規(guī)范以應(yīng)對(duì)安全問題,另外當(dāng)應(yīng)用軟件面向網(wǎng)絡(luò)應(yīng)用時(shí),就必須開放其應(yīng)用端口,是重要的攻擊途徑。
(4)安全策略和管理流程漏洞
追求可用性而犧牲安全性,是很多工業(yè)控制系統(tǒng)存在的普遍現(xiàn)象,缺乏完整有效的安全策略與管理流程也給工業(yè)控制系統(tǒng)信息安全帶來一定的威脅。
(5)殺毒軟件漏洞
為了保證工控應(yīng)用軟件的可用性,許多工控系統(tǒng)操作站通常不會(huì)安裝殺毒軟件,即使安裝了殺毒軟件,病毒庫也不會(huì)定期更新。
2 工業(yè)控制系統(tǒng)的安全需求
表1給出了工控系統(tǒng)與傳統(tǒng)IT系統(tǒng)的不同。
表1所示的這些不同,導(dǎo)致了工控安全與傳統(tǒng)IT安全的差異,傳統(tǒng)IT安全更注重機(jī)密性,其次是完整性,之后是可用性,但是工控系統(tǒng)的安全,則是可用性排在第一位,接下來是完整性,最后才是機(jī)密性。所以,傳統(tǒng)網(wǎng)絡(luò)安全技術(shù)不適于應(yīng)用到工業(yè)控制系統(tǒng)。
美國國土安全部下屬的ICS-CERT(工業(yè)控制系統(tǒng)應(yīng)急響應(yīng)小組)及CSSP(控制系統(tǒng)安全項(xiàng)目)通過對(duì)工業(yè)控制系統(tǒng)軟件的缺陷性分析發(fā)現(xiàn),工業(yè)控制系統(tǒng)軟件的安全脆弱性問題主要涉及錯(cuò)誤輸入驗(yàn)證、密碼管理、越權(quán)訪問、不適當(dāng)?shù)恼J(rèn)證、系統(tǒng)配置等方面。
典型工控系統(tǒng)的安全問題,如圖2所示。
3 工業(yè)控制系統(tǒng)的安全測(cè)試技術(shù)趨勢(shì)
3.1 工業(yè)控制系統(tǒng)的特點(diǎn)
(1)封閉性:SCADA、ICS系統(tǒng)的設(shè)計(jì)之初安全機(jī)制不完善;
(2)多樣性:多種數(shù)據(jù)接口(如RJ45、RS485、RS232等),協(xié)議規(guī)約實(shí)現(xiàn)多樣;
(3)復(fù)雜性:專用的通信協(xié)議或規(guī)約(如OPC、Modbus、DNP3、 Profibus等);
(4)不可改變性:工控系統(tǒng)程序升級(jí)困難。
傳統(tǒng)IT安全測(cè)試技術(shù)不適合工業(yè)控制系統(tǒng),所以急需針對(duì)工業(yè)控制系統(tǒng)的安全測(cè)試技術(shù)。針對(duì)SCADA、ICS系統(tǒng)自身脆弱性(漏洞)和通信規(guī)約的安全性,研究工業(yè)控制系統(tǒng)的安全測(cè)試技術(shù),分析工業(yè)控制系統(tǒng)中已知的與未知的安全威脅,指導(dǎo)其對(duì)安全威脅進(jìn)行有效的防御。
3.2 工控系統(tǒng)安全測(cè)試技術(shù)已成為重要的發(fā)展方向
3.2.1 美國能源部SCADA測(cè)試平臺(tái)計(jì)劃(2008-2013)
美國能源部自2008年就開始了搭建SCADA測(cè)試平臺(tái)計(jì)劃(2008-2013),通過聯(lián)合其下屬Idaho等6個(gè)國家實(shí)驗(yàn)室的技術(shù)力量,提供各種工業(yè)控制系統(tǒng)的真實(shí)測(cè)試環(huán)境,實(shí)現(xiàn)對(duì)石油、電力等行業(yè)控制系統(tǒng)的安全測(cè)評(píng)。
美國能源部SCADA測(cè)試平臺(tái)計(jì)劃中主要包括4個(gè)典型測(cè)試平臺(tái),如下。
(1)SCADA/控制系統(tǒng)測(cè)試平臺(tái);
(2)信息安全測(cè)試平臺(tái);
(3)電網(wǎng)測(cè)試平臺(tái);
(4)無線技術(shù)測(cè)試平臺(tái)。
圖3所示是一個(gè)SCADA/控制系統(tǒng)測(cè)試平臺(tái)實(shí)例。
3.2.2 歐洲SCADA安全測(cè)試平臺(tái)
歐洲也搭建了SCADA安全測(cè)試平臺(tái),主要特點(diǎn)如下:
(1)采用現(xiàn)場(chǎng)系統(tǒng)的滲透測(cè)試,建立風(fēng)險(xiǎn)分析方法,測(cè)試、評(píng)估SCADA系統(tǒng)的安全性;
(2)對(duì)于Computer Emergency Response Team (CERT)發(fā)布的SCADA安全信息能夠快速處理,以保護(hù)世界各地的運(yùn)行系統(tǒng);
(3)具有高度重構(gòu),與其它SCADA系統(tǒng)安全、遠(yuǎn)距離通信連接,構(gòu)建先進(jìn)的分布式測(cè)試環(huán)境。
3.2.3 學(xué)術(shù)界工控系統(tǒng)安全測(cè)試技術(shù)研究
國外學(xué)者致力于搭建SCADA系統(tǒng)真實(shí)測(cè)試環(huán)境,模擬攻擊行為,通過仿真和建模分析SCADA系統(tǒng)的安全性。
國際知名工業(yè)安全測(cè)試公司相關(guān)產(chǎn)品和解決方案如下:
(1)加拿大 Wurldtech的Achilles 測(cè)試工具采用漏洞掃描和模糊測(cè)試的方法,測(cè)試工控系統(tǒng)中設(shè)備和軟件的安全問題;
(2)加拿大的ICS Sandbox測(cè)試平臺(tái)采用滲透測(cè)試的方法,通過模擬真實(shí)的網(wǎng)絡(luò)攻擊,測(cè)試SCADA系統(tǒng)中關(guān)鍵基礎(chǔ)設(shè)施的脆弱性;
(3)芬蘭科諾康Codenomicon Defensics工控健壯性/安全性測(cè)試平臺(tái),采用基于主動(dòng)性安全漏洞挖掘的健壯性評(píng)估與管理方案,與ISASecure合作,遵循IEC 62443標(biāo)準(zhǔn)。
3.3 工控系統(tǒng)安全測(cè)試的關(guān)鍵技術(shù)
(1)構(gòu)建工控系統(tǒng)漏洞庫
由于通信協(xié)議的特殊性,傳統(tǒng)漏洞庫并不適應(yīng)于工業(yè)控制系統(tǒng)安全測(cè)試領(lǐng)域,需要構(gòu)建工控系統(tǒng)專有漏洞庫。如圖4所示。
圖4 漏洞數(shù)據(jù)庫
(2)基于工業(yè)漏洞庫的漏洞掃描技術(shù),如圖5所示。依靠漏洞掃描引擎、檢測(cè)規(guī)則的自動(dòng)匹配,通過工控系統(tǒng)漏洞庫,掃描系統(tǒng)中的關(guān)鍵設(shè)備,檢測(cè)系統(tǒng)的脆弱性;
支持Modbus、DNP3、Profinet等工業(yè)通信協(xié)議漏洞;
支持ICMP Ping掃描、端口掃描等傳統(tǒng)掃描技術(shù)。
圖5 基于工業(yè)漏洞庫的漏洞掃描技術(shù)
(3)面向工業(yè)控制協(xié)議的Fuzzing測(cè)試,如圖6所示。
圖6 面向工業(yè)控制協(xié)議的Fuzzing測(cè)試
運(yùn)用模糊測(cè)試的原理,設(shè)計(jì)變異測(cè)試用例并構(gòu)造變異報(bào)文,檢查工控協(xié)議實(shí)現(xiàn)的缺陷。
構(gòu)建完整、可擴(kuò)展的動(dòng)態(tài)隨機(jī)分析測(cè)試框架,監(jiān)控測(cè)試目標(biāo),管理測(cè)試結(jié)果,并支持多目標(biāo)(如文件、網(wǎng)絡(luò)協(xié)議等等)、多種協(xié)議(如Modbus TCP、DNP3等不同類型的協(xié)議)、多線程(加速測(cè)試進(jìn)度)
(4)工業(yè)病毒行為特征提取與攻擊模擬技術(shù),如圖7所示。
數(shù)據(jù)挖掘智能認(rèn)知工業(yè)病毒攻擊行為,實(shí)現(xiàn)工業(yè)病毒行為判定,提取工業(yè)病毒行為特征;
根據(jù)網(wǎng)絡(luò)流量情況、具體協(xié)議內(nèi)容、交互模式以及主機(jī)或設(shè)備行為,檢測(cè)工控環(huán)境特種木馬等復(fù)雜攻擊。
4 工業(yè)控制系統(tǒng)的安全防護(hù)技術(shù)趨勢(shì)
保證工業(yè)控制系統(tǒng)安全穩(wěn)定運(yùn)行,工業(yè)控制系統(tǒng)的安全防護(hù)必須達(dá)到以下三個(gè)目標(biāo),如表2所示。
4.1 工業(yè)控制系統(tǒng)防火墻技術(shù)
防火墻是基于訪問控制技術(shù),它可以保障不同安全區(qū)域之間進(jìn)行安全通信,通過設(shè)置訪問控制規(guī)則,管理和控制出入不同安全區(qū)域的信息流,保障資源在合法范圍內(nèi)得以有效使用和管理。
目前傳統(tǒng)的IT防火墻都是根據(jù)“白名單”或者“黑名單”的方式進(jìn)行規(guī)則設(shè)置,而工業(yè)防火墻大都是根據(jù)“白名單”設(shè)置規(guī)則。對(duì)于“白名單”,可以設(shè)置允許規(guī)則,也就是說只有符合該規(guī)則的數(shù)據(jù)流才能通過,其它的任何數(shù)據(jù)流都可以被看做攻擊而過濾掉,這樣就保障了資源的合法使用;而對(duì)于“黑名單”,可以設(shè)置禁止規(guī)則,禁止不合法的客戶端對(duì)資源的訪問。
工業(yè)控制系統(tǒng)防火墻技術(shù)可以實(shí)現(xiàn)區(qū)域管控,劃分控制系統(tǒng)安全區(qū)域,對(duì)安全區(qū)域?qū)崿F(xiàn)隔離保護(hù),保護(hù)合法用戶訪問網(wǎng)絡(luò)資源;
同時(shí),可以對(duì)控制協(xié)議進(jìn)行深度解析,可以解析Modbus、DNP3等應(yīng)用層異常數(shù)據(jù)流量,并對(duì)OPC端口進(jìn)行動(dòng)態(tài)追蹤,對(duì)關(guān)鍵寄存器和操作進(jìn)行保護(hù)。
工業(yè)控制系統(tǒng)防火墻技術(shù)目前存在一個(gè)問題,就是規(guī)則粒度問題(Modbus規(guī)則設(shè)置為例)。防火墻的規(guī)則設(shè)置應(yīng)該能夠支持到具體數(shù)據(jù)字段的匹配,但是規(guī)則深度越深帶來防火墻的效率問題。
4.2 工業(yè)控制系統(tǒng)入侵檢測(cè)技術(shù)
工業(yè)控制系統(tǒng)入侵檢測(cè)技術(shù)是面向控制系統(tǒng)通信協(xié)議,根據(jù)控制異常行為模式庫,對(duì)控制系統(tǒng)網(wǎng)絡(luò)或主機(jī)進(jìn)行異常監(jiān)測(cè):
(1)監(jiān)視、分析控制終端行為活動(dòng);
(2)審計(jì)控制系統(tǒng)的配置和弱點(diǎn);
(3)識(shí)別已知進(jìn)攻模式;
(4)異常活動(dòng)的統(tǒng)計(jì)分析。
目前工業(yè)控制系統(tǒng)入侵檢測(cè)技術(shù)主要包括兩個(gè)方面,第一個(gè)就是基于特征的入侵檢測(cè),第二個(gè)是基于異常的入侵檢測(cè),目前這種方式大多數(shù)處于理論研究階段。如圖8所示。
圖8 兩個(gè)主要的工業(yè)控制系統(tǒng)入侵檢測(cè)技術(shù)
目前工業(yè)控制系統(tǒng)入侵檢測(cè)技術(shù)的主要問題是,工業(yè)控制系統(tǒng)以可用性為先,入侵檢測(cè)技術(shù)的漏報(bào)和誤報(bào)將難以商業(yè)化應(yīng)用。
摘自《自動(dòng)化博覽》2014年9月