從控制系統(tǒng)網(wǎng)絡的內(nèi)部和外部對控制系統(tǒng)進行攻擊時,控制系統(tǒng)是脆弱的。要了解控制系統(tǒng)相關的漏洞,用戶必須知道通信類型和與控制系統(tǒng)的相關操作,以及解了攻擊者如何利用系統(tǒng)漏洞使他們獲益。本文僅提供一種高層的概述,不討論攻擊者利用漏洞完成入侵的細節(jié)。
我們將從下面幾個方面進行介紹:
●了解控制系統(tǒng)的網(wǎng)絡漏洞;
●訪問控制系統(tǒng)局域網(wǎng):
o常見的網(wǎng)絡架構;
o撥號訪問遠程終端;
o供應商支持;
o信息技術(it)控制的通信裝備;
o企業(yè)的虛擬專用網(wǎng)(vpn);
o數(shù)據(jù)庫鏈接;
o配置不當?shù)姆阑饓Γ?br>o對等設施鏈接。
●過程發(fā)現(xiàn);
●過程控制:
o命令直接發(fā)送到數(shù)據(jù)采集設備;
o輸出到人機界面(hmi)屏幕;
o更改數(shù)據(jù)庫;
o中間人攻擊。
一、了解控制系統(tǒng)的網(wǎng)絡漏洞
要了解工業(yè)控制系統(tǒng)(ics)的相關漏洞,用戶必須首先了解所有可能流入和流出ics的通信路徑。圖1給出了用于典型過程系統(tǒng)組件通信的各種設備、通信路徑和方法。
圖 1:對控制系統(tǒng)的通信訪問
如圖1中所示,使用各種計算和通信設備,有許多方法與ics網(wǎng)絡和組件通信。一個人如果具有對工藝設備、網(wǎng)絡、操作系統(tǒng)和軟件應用的知識,就可以使用這些設備和其他電子工具訪問ics。目前在未經(jīng)授權連接系統(tǒng)和網(wǎng)絡的無線接入點出現(xiàn)了漏洞。
在一個典型的大規(guī)模生產(chǎn)系統(tǒng)中,很多ics使用監(jiān)督控制和數(shù)據(jù)采集(scada)或分布式控制系統(tǒng)(dcs)的配置,有許多集成的計算機、控制器和網(wǎng)絡通訊組件,為系統(tǒng)運行提供所需的功能。一個典型的網(wǎng)絡結構如圖2所示。
圖2:典型雙防火墻網(wǎng)絡架構
控制器單元連接到過程設備和傳感器收集狀態(tài)數(shù)據(jù),并提供設備的操作控制??刂茊卧cics數(shù)據(jù)采集服務器的通信使用不同的通信協(xié)議(用不同格式為傳輸?shù)臄?shù)據(jù)打包)。一個系統(tǒng)中的數(shù)據(jù)采集服務器和控制器單元之間的通信,在本地通常使用高速線、光纖電纜;對遠程的控制器單元,通常使用無線、撥號、以太網(wǎng),或組合的通信方法。
操作員或調(diào)度員通過hmi子系統(tǒng)監(jiān)視和控制系統(tǒng)。 hmi提供的圖形顯示了設備的狀態(tài)、報警和事件、系統(tǒng)的運行狀況,以及系統(tǒng)相關的其他信息。操作員可以通過hmi的顯示屏和鍵盤或鼠標與系統(tǒng)交互,遠程操作系統(tǒng)裝置,解決疑難問題,制做打印報告,以及執(zhí)行其他操作。
系統(tǒng)數(shù)據(jù)的收集、處理和存儲在主數(shù)據(jù)庫服務器上進行。保存的數(shù)據(jù)將用于趨勢、備案、監(jiān)管和外部訪問等業(yè)務需求。數(shù)據(jù)的各種來源包括了:數(shù)據(jù)采集服務器、操作員的控制操作、報警和事件,以及其他服務器的計算和生成。
大多數(shù)控制系統(tǒng)采用專門的應用程序進行運營和業(yè)務相關的數(shù)據(jù)處理。這些任務通常在先進的應用服務器上執(zhí)行,從控制系統(tǒng)網(wǎng)絡上的各種源采數(shù)據(jù)。這些應用程序可以是:實時操作控制的調(diào)整、報告、報警和事件,計算的數(shù)據(jù)源為主數(shù)據(jù)庫服務器提供歸檔,或支持工程師站或其他計算機的分析工作。
工程師站提供了一種手段,對系統(tǒng)運行的各個方面進行監(jiān)視和診斷,安裝和更新程序,對失效進行恢復,以及系統(tǒng)管理方面的其他任務。
關鍵任務控制系統(tǒng)通常配置成一個完全的冗余架構,使系統(tǒng)能夠從各種組件失效的情況下快速恢復。對更關鍵的應用要采用備份控制中心,如果主系統(tǒng)發(fā)生了災難性故障,備份系統(tǒng)馬上工作。
控制系統(tǒng)網(wǎng)絡通常與業(yè)務辦公網(wǎng)絡相連接,把控制網(wǎng)絡中的實時數(shù)據(jù)傳輸?shù)狡髽I(yè)辦公室的各個部門。這些部門通常包括維護規(guī)劃、客戶服務中心、庫存控制、管理與行政,以及依靠這些數(shù)據(jù)及時做出業(yè)務決策的部門。
企圖控制ics的攻擊者必須面對三大挑戰(zhàn):
1.獲得對ics局域網(wǎng)的訪問;
2.通過發(fā)現(xiàn),了解過程運行的情況;
3.獲得對過程的控制。
二、訪問ics局域網(wǎng)
攻擊者需要完成的第一件事情就是要繞過外圍防御獲得對ics局域網(wǎng)的訪問。大多數(shù)ics網(wǎng)絡不再支持從互聯(lián)網(wǎng)的直接遠程訪問。多數(shù)企業(yè)的常見做法是用防火墻分開業(yè)務局域網(wǎng)和ics局域網(wǎng)。這不僅有助于防止黑客進入,還隔離了控制系統(tǒng)網(wǎng)絡,防止了中斷、蠕蟲和其他發(fā)生在商業(yè)局域網(wǎng)中的困擾。大多數(shù)攻擊者使用現(xiàn)成的黑客工具,直接作用于網(wǎng)絡。攻擊者有很多獲取對網(wǎng)絡訪問的方法,但使用其他路徑要超過常見途徑。
常見的網(wǎng)絡架構
圖3:兩個防火墻
在大多數(shù)控制系統(tǒng)中,有三種常見的架構。每個企業(yè)都有自己的細微變化,這由他們所處的環(huán)境所決定。如果防火墻、入侵檢測系統(tǒng)以及應用級權限都實施到位,就有三重安全性。目前最常見的結構是兩個防火墻的體系結構(參見圖3)。業(yè)務局域網(wǎng)由一個隔離因特網(wǎng)的防火墻來保護,控制系統(tǒng)局域網(wǎng)由另一個防火墻保護,與業(yè)務局域網(wǎng)隔離。業(yè)務防火墻由企業(yè)的it人員管理,控制系統(tǒng)防火墻由控制系統(tǒng)人員管理。
圖4:控制系統(tǒng)的隔離區(qū)(dmz)
第二種常見的架構是在控制系統(tǒng)網(wǎng)絡建立一個隔離區(qū)(dmz)隔開與業(yè)務局域網(wǎng)的連接(見圖4)。這個防火墻由it人員管理,從業(yè)務局域網(wǎng)和互聯(lián)網(wǎng)兩個方面保護控制系統(tǒng)的局域網(wǎng)。
圖5:業(yè)務局域網(wǎng)作為骨干網(wǎng)
大型dcs往往需要使用業(yè)務網(wǎng)絡的多個部分作路由,連接多個控制系統(tǒng)局域網(wǎng)(見圖5)。每個控制系統(tǒng)局域網(wǎng)都有自己的防火墻,使他與業(yè)務局域網(wǎng)分開,并且加密保護每個過程通信,因為信息要穿越業(yè)務局域網(wǎng)。防火墻的管理一般由控制系統(tǒng)和it部門的人員共同完成。
圖6:數(shù)據(jù) dmz
一種新的趨勢是在企業(yè)局域網(wǎng)和控制系統(tǒng)局域網(wǎng)之間(參見圖6)安裝數(shù)據(jù)dmz。它提供了一個額外的保護層,因為從控制系統(tǒng)局域網(wǎng)到業(yè)務局域網(wǎng)沒有直接通訊。數(shù)據(jù)dmz的增強性能取決于它的實施細節(jié)。
撥號訪問遠程終端(rtu)
圖7:撥號訪問遠程終端
其中最常見的接入途徑是對連接現(xiàn)場設備的調(diào)制解調(diào)器直接撥號(參見圖7)。如果主高速線路發(fā)生故障時,調(diào)制解調(diào)器用做備份通信路徑。攻擊者會在一個城市撥打每個電話號碼尋找調(diào)制解調(diào)器。此外,攻擊者還會撥打公司每個分機尋找掛在企業(yè)電話系統(tǒng)中的調(diào)制解調(diào)器。大多數(shù)遠程終端單元(rtu)能識別他們自己和制造他們的供應商。大多數(shù)的rtu不需要證明或密碼進行驗證。使用默認密碼的rtu非常常見,現(xiàn)場仍在使用。
攻擊者必須知道如何使用rtu協(xié)議控制rtu。這種控制通常(但不總是)限于單一變電站。
供應商支持
圖8:供應商支持
大多數(shù)控制系統(tǒng)都具有供應商支持協(xié)議。在升級過程或當系統(tǒng)發(fā)生故障時提供支持。供應商最常見的支持手段是通過調(diào)制解調(diào)器或通過因特網(wǎng)與pc連接(見圖8)。近年來,已過渡到用虛擬專用網(wǎng)(vpn)訪問控制系統(tǒng)局域網(wǎng)。攻擊者會嘗試獲取對內(nèi)部供應商資源或現(xiàn)場筆記本電腦的訪問,然后間接連接到控制系統(tǒng)的局域網(wǎng)。
信息技術(it)控制的通信裝備
圖9:it控制的通信裝備
通常情況下,企業(yè)it部門負責長距離通訊線路的運營和維護。這時,常見的問題是其中一條或多條通信線路被業(yè)務局域網(wǎng)控制和使用。使用微波鏈路和光纖線路多路復用器是最常見的解決方案。一個高水平的攻擊者可以重新配置或改變那些通信裝備連接控制現(xiàn)場網(wǎng)絡(見圖9)。
企業(yè)虛擬專用網(wǎng)(vpn)
圖10:企業(yè)vpn
大多數(shù)控制系統(tǒng)提供一些機制,允許業(yè)務局域網(wǎng)的工程師訪問控制系統(tǒng)局域網(wǎng)。最常用的方法是通過vpn到達控制防火墻(見圖10)。攻擊者會試圖接管一臺機器,等待合法用戶通過vpn連接控制系統(tǒng)局域網(wǎng),然后搭載這個連接。
數(shù)據(jù)庫鏈接
圖11:數(shù)據(jù)庫鏈接
幾乎每個生產(chǎn)控制系統(tǒng)都將日志記錄到控制系統(tǒng)局域網(wǎng)上的數(shù)據(jù)庫,然后再映射到企業(yè)局域網(wǎng)上。通常情況下,管理員按照規(guī)則去配置防火墻,但沒花很多時間來保護數(shù)據(jù)庫。一個高水平的攻擊者可以訪問企業(yè)局域網(wǎng)上的數(shù)據(jù)庫,并使用特定的結構化查詢語言(sql)接管在控制系統(tǒng)局域網(wǎng)上的數(shù)據(jù)庫服務器(參見圖11)。如果沒有使用正確的配置來阻止,幾乎所有的現(xiàn)代數(shù)據(jù)庫都會受到這種類型的攻擊。
防火墻配置不當
通常,防火墻配置不當是由于歷史或政治的原因。常見的防火墻缺陷包括通過微軟視窗(windows)網(wǎng)絡數(shù)據(jù)包、通過服務和有信任的業(yè)務局域網(wǎng)主機。最常見的配置問題是沒有提供出站數(shù)據(jù)規(guī)則。這可能允許攻擊者潛入控制系統(tǒng)機器的有效載荷,從控制系統(tǒng)局域網(wǎng)回呼至業(yè)務局域網(wǎng)或互聯(lián)網(wǎng)(見圖7)。
對等設施鏈接
圖12:對等設施鏈接
通常連接一個控制系統(tǒng)局域網(wǎng)最簡單的方法是接管臨近的公共設施或合作伙伴。從歷史上看,伙伴或鄰居的鏈接已被信任。在這種情況下,系統(tǒng)的安全是最弱成員的安全(參見圖12)。最近,對等鏈接已被限制在防火墻后面的特定主機和端口。
三、過程發(fā)現(xiàn)
在控制系統(tǒng)局域網(wǎng)上獲得立足點的攻擊者,必須找到該過程實施的細節(jié),然后想辦法攻擊。如果一組化學工程師負責創(chuàng)建一座滑石粉廠,每人都會用不同的設備和獨特的配置。為了達到破壞目的,攻擊者需要了解規(guī)范。只是想讓過程停機的攻擊者,不需要了解更多的內(nèi)容。
兩個最有價值的攻擊點是數(shù)據(jù)采集服務器數(shù)據(jù)庫和人機界面顯示屏幕。每個控制系統(tǒng)供應商使用的數(shù)據(jù)庫都有所不同,但幾乎所有的控制系統(tǒng)都分配每個傳感器、泵、斷路器等設備一個唯一的編號。在通信協(xié)議級別,用編號來稱呼設備。攻擊者需要一張點參考編號和這些編號所代表含義的列表。
操作員的人機界面屏幕為了解過程和每個點參考編號分配意義提供了最簡單的方法。每個控制系統(tǒng)的供應商在什么地方存儲操作員人機界面屏幕和點數(shù)據(jù)庫都是唯一的。把這些規(guī)則加到入侵檢測系統(tǒng)(ids)中對發(fā)現(xiàn)攻擊者是非常有效的。
四、過程控制
命令直接發(fā)送到數(shù)據(jù)采集設備
圖13:把命令直接發(fā)送到數(shù)據(jù)采集設備
控制過程最簡單的方法是將命令直接發(fā)送到數(shù)據(jù)采集設備(參見圖13)。大多數(shù)plc、協(xié)議轉換器、數(shù)據(jù)采集服務器都缺乏基本的鑒權功能。他們通常接受任何格式正確的命令。攻擊者希望只需建立一個與數(shù)據(jù)采集設備的連接,然后發(fā)出相應的命令。
導出人機界面屏幕
圖14:導出人機界面屏幕
一個有效的攻擊方式是給攻擊者導出操作員人機界面控制臺的屏幕(參見圖14)。市售的工具可以在windows和unix環(huán)境下完成此功能。只要攻擊存在,操作員會看到一個“巫毒老鼠”在屏幕上到處點擊。攻擊者也受限于當前登錄操作員可以操作的命令。舉例來說,他不能改變變壓器上的相線接頭。
更改數(shù)據(jù)庫
圖15:更改數(shù)據(jù)庫
有些(但不是所有的)供應商的控制系統(tǒng),操作數(shù)據(jù)庫中的數(shù)據(jù)可以執(zhí)行控制系統(tǒng)的任何動作(參見圖15)。
中間人攻擊
圖16:中間人攻擊
如果攻擊者知道他所操作的協(xié)議,中間人攻擊可在控制系統(tǒng)的協(xié)議上進行。攻擊者可以修改傳輸過程中的數(shù)據(jù)包,可以惡搞操作員人機界面的顯示,也可以完全控制ics(參見圖16)。通過對命令流插入命令,攻擊者可以發(fā)出任意的或針對的命令。通過更改回復,操作員得到的顯示是更改后的過程畫面。