谷神星網(wǎng)絡(luò)科技有限公司
工業(yè)控制網(wǎng)絡(luò)安全系列之五SCADA 通信協(xié)議的漏洞、攻擊及應(yīng)對
谷神星網(wǎng)絡(luò)科技有限公司
工業(yè)控制系統(tǒng)(ICS)中,SCADA(監(jiān)控和數(shù)據(jù)采集系統(tǒng))的每一步操作都是嚴格遵照RTU(遠程終端單元)發(fā)出的指令來完成的,所以,想對采用SCADA的工業(yè)控制系統(tǒng)進行破壞,黑客只要修改相關(guān)數(shù)據(jù)或者阻礙數(shù)據(jù)傳輸就可以達到目的。
由于SCADA系統(tǒng)的通信協(xié)議在設(shè)計之初就欠缺安全考慮,所以SCADA系統(tǒng)對黑客們有很大的吸引力。這些黑客有兩種,一種是目標式攻擊者,一種是愚笨式攻擊者。愚笨式攻擊者一般都是些技術(shù)不熟練的生手,對付他們只要采用冗余系統(tǒng)或其他安全手段就可以了,不用費什么力氣。而目標式攻擊者多數(shù)技術(shù)嫻熟、智力超群,SCADA系統(tǒng)現(xiàn)有的安全手段很難防備。如果遇到攻擊方式多樣化的協(xié)同式攻擊(聯(lián)合攻擊),SCADA系統(tǒng)更是束手無策;而且,協(xié)同式攻擊還可通過偽裝和分解等手段來躲避偵測。可以這么說,如果策劃嚴密、實施得當,協(xié)同式通信信道攻擊幾乎可以摧毀現(xiàn)在所有的SCADA系統(tǒng)。不過,協(xié)同式通信信道攻擊只有在黑客做足風險分析,找到系統(tǒng)所有漏洞的前提下才能完成。
如果“換位思考”,從攻擊者的角度來考慮重要系統(tǒng)的安全防護工作,那么,首先就應(yīng)該對通信信道進行風險分析,找出所有可能的漏洞,然后再采取應(yīng)對措施,降低協(xié)同式通信信道攻擊風險。
采用風險分析或漏洞分析方法的另一個好處是,企業(yè)可以自行決定是對所有的設(shè)備實施安全防護,還是只對特定的某些區(qū)域進行安全防護,以在投入成本與安全效益之間取得平衡。
⑴IEC 60870-5-101和IEC 60870-5-104通信協(xié)議中存在以下幾個漏洞:
①IEC 60870-5-101協(xié)議中CS(校驗和)域只有一個字節(jié);IEC 60870-5-104協(xié)議中則沒有CS域;傳輸數(shù)據(jù)的完整性完全取決于下一層;
② 對于應(yīng)用層和數(shù)據(jù)鏈路層,兩種協(xié)議都缺少內(nèi)在的安全機制;
③ 數(shù)據(jù)傳輸層的漏洞有:
a. 有限的帶寬限制了可傳輸幀的長度(如:兩個協(xié)議下,一次都只能傳輸255個8位位組)。
b. 通信介質(zhì)的不可靠性(即通信介質(zhì)不一定有安全機制)。
⑵IEC 62351安全標準也對這些漏洞進行了探討。攻擊者就是利用這兩個協(xié)議中的這些漏洞潛入系統(tǒng)并進行破壞的。其中,應(yīng)用層漏洞可能導致的攻擊有電子欺騙和非否定攻擊;數(shù)據(jù)鏈路層漏洞可能導致的攻擊有嗅探攻擊、數(shù)據(jù)篡改和重放攻擊等。
⑶SCADA環(huán)境中可能會受到通信信道攻擊的環(huán)節(jié)有:
① MTU(主控終端)和RTU之間的通信(數(shù)據(jù)傳輸采用的是IEC 60870-5-101和IEC 60870-5-104協(xié)議)。
②MTU 和HMI(人機接口)之間的通信。
這些環(huán)節(jié)中,如果數(shù)據(jù)被修改,就可能導致控制出錯,并引發(fā)混亂。
⑴CS域漏洞
①CS域的位數(shù)不夠
IEC 60870-5-101協(xié)議中CS域只有一個字節(jié),很容易發(fā)生溢出現(xiàn)象。早期SCADA研究中有很多這方面的論據(jù)。其中一個例子是,校驗和最大值為100的情況下,如果所有數(shù)據(jù)的和為130或230或330等時,那么CS域的值為30。這表明,只使用一個字節(jié)的CS域是不能準確反映校驗和的數(shù)值的。
② 單憑CS域不能保證數(shù)據(jù)的完整性
單純依靠CS域來檢查數(shù)據(jù)的完整性是不可取的。精明的黑客只要同時改變數(shù)據(jù)值和相應(yīng)CS域的值,就可以瞞天過海。
⑵ 數(shù)據(jù)傳輸層的漏洞
數(shù)據(jù)傳輸?shù)挠邢迬捴萍s了數(shù)據(jù)包的幀長度。在IEC 60870-5-101和IEC 60870-5-104協(xié)議下,一次只能傳輸255個8位位組;同時,也不可能在傳輸幀中增加安全位。
缺乏安全機制的通信介質(zhì)也是一個問題。通常,通信介質(zhì)有雙絞線、光纖、無線電波等。如果通信介質(zhì)為無線電波,那么,一個不在通信頻段的信號就能對數(shù)據(jù)通信造成頻率干擾。
IEC 62351安全標準為IEC 60870-5系列協(xié)議提供了安全機制。雖然IEC 62351對應(yīng)用層提供了安全策略,但卻沒有考慮數(shù)據(jù)鏈路層的安全措施。因此,僅憑IEC 62351標準來保護DCADA系統(tǒng)通信協(xié)議的安全是不夠的。
⑴非協(xié)同式攻擊
目的:誤導控制中心操作員
缺陷:在交叉檢驗標識的值和范圍時容易被控制中心操作員發(fā)覺
非協(xié)同式攻擊也分兩種,愚笨型和智能型。
愚笨型攻擊非常簡單,攻擊者不需要具備通信協(xié)議相關(guān)知識,只要簡單修改幾個字節(jié)的數(shù)據(jù),再發(fā)送到目的地即可。但是,MTU仿真器會根據(jù)CS值檢測出數(shù)據(jù)變化,并提示“校驗和不匹配”信息。所以,這類攻擊對系統(tǒng)不會造成大的影響。
智能型攻擊就需要了解系統(tǒng)所用的通信協(xié)議內(nèi)容。圖1為IEC 60870-5-101協(xié)議中傳輸幀的格式。
圖1中,CF 控制域;LA 鏈路地址域;T1 類型標志域;VSQ 可變結(jié)構(gòu)限定詞;COT 傳輸原因域;CAASDU應(yīng)用服務(wù)地址單元域;CS 校驗和域;L 長度域;RES 保留位;PRM 信源信息位;FCB 幀計數(shù)位;DFC 數(shù)據(jù)流控制位;ACD要求訪問位。
圖1也對CF控制域的8個位元進行了描述。其中,ACD位是由從(受控)系統(tǒng)發(fā)送給主(控制)系統(tǒng)的,目的是告知主系統(tǒng)有數(shù)據(jù)需要傳送;主系統(tǒng)如果想讀取這些數(shù)據(jù)就會發(fā)出數(shù)據(jù)請求。通常這些數(shù)據(jù)與斷路器、開關(guān)等有關(guān),所以大部分情況下,被視為關(guān)鍵數(shù)據(jù)。聰明的黑客非常清楚,只要修改ACD位和相應(yīng)CS位的值,就可以蒙蔽主系統(tǒng),主系統(tǒng)就接收不到這些關(guān)鍵數(shù)據(jù)。
還有一個DFC位,也是由從系統(tǒng)傳送到主系統(tǒng)的。目的是告知主系統(tǒng),如果主系統(tǒng)繼續(xù)發(fā)送數(shù)據(jù)請求,就會導致數(shù)據(jù)溢出。那么,黑客如果修改DFC位和相應(yīng)CS位的值,就可以讓主系統(tǒng)處于不斷等待狀態(tài)中。
ASDU(CAASDU)域和LA域分別儲存應(yīng)用服務(wù)地址和鏈路地址。黑客如果篡改了這些域和相應(yīng)CS位的值,那么RTU就不可能按照原定指令進行控制操作。
傳輸幀格式里的其他域(如TI、VSQ、CQT等)的值也可能被修改,不過這種修改很容易被操作員發(fā)覺,影響非常小。
⑵協(xié)同式攻擊
如果攻擊者想給某個組織或某個國家嚴重打擊,就會采取協(xié)同式攻擊,也稱作目標協(xié)同式攻擊。這種攻擊不是由個人進行的,而是由一組不同領(lǐng)域的專家共同完成。就像其他常見的利用通信信道攻擊獲取網(wǎng)絡(luò)接入和接入憑證信息一樣,他們收集的是通信協(xié)議及其域值的詳細信息。攻擊者會仔細研究通信協(xié)議,找出哪些漏洞可以用來進行最大限度的破壞。實驗證明,這種攻擊可以造成非常嚴重的后果。
攻擊者一旦獲取了代表執(zhí)行器和斷路器等設(shè)備域的標識、值和范圍等信息,就可以發(fā)送控制命令,操縱這些設(shè)備,并給系統(tǒng)造成嚴重影響。協(xié)同式攻擊非常殘酷,也非常不容易被發(fā)現(xiàn)和控制。
在應(yīng)用層,認證機制是很關(guān)鍵的安全防護手段。認證機制有兩種:操作員認證和MTU/ RTU認證。
操作員認證可以阻擋非否定攻擊。其認證機制是每個操作員都擁有一個獨立的認證憑據(jù),并可設(shè)置操作員權(quán)限。所以,采用操作員認證可以讓操作員負起責任。
MTU/RTU認證可以阻擋電子欺騙/偽裝攻擊。IEC 62351安全標準提出的安全機制是只認證關(guān)鍵數(shù)據(jù),不認證非關(guān)鍵數(shù)據(jù),以減少對帶寬和處理能力的要求。IEC 62351還定義了一個積極模式機制,用于取代質(zhì)詢響應(yīng)機制。不過,積極模式的安全性沒有質(zhì)詢響應(yīng)機制高。另外,IEC 62351對認證憑據(jù)的修改/管理也提出了密鑰交換機制。
對當前的SCADA系統(tǒng)實行這些安全機制面臨的一個主要問題是,RTU和MTU軟件是不對外開放的第三方軟件。安全模型的設(shè)計只能在技術(shù)上和經(jīng)濟上都不影響現(xiàn)有SCADA系統(tǒng)的情況下進行。因此,在不影響SCADA系統(tǒng)運行的前提下,應(yīng)用層的安全機制只能由系統(tǒng)外部提供。這個可以利用單板機(SBC)實現(xiàn)。將單板機視為附加層,在這個附加的安全層里,傳輸數(shù)據(jù)會被包裝起來。
圖2是為IEC 60870-5-101協(xié)議開發(fā)的安全設(shè)計模型。其中的強化安全區(qū)(Security Hardener)就是一個SBC。
這個安全模型是完全遵照IEC 62351安全標準要求設(shè)計的。模型中,為了優(yōu)化帶寬使用和處理能力,采用的是僅對關(guān)鍵數(shù)據(jù)進行認證的模式。
圖1 IEC 60870-5-101和104通信協(xié)議的幀格式
圖2 IEC 60870-5-101協(xié)議的認證安全模型
關(guān)于優(yōu)化帶寬和處理能力的計算:IEC 60870-5-101 協(xié)議中ASDU(應(yīng)用服務(wù)數(shù)據(jù)單元)的長度是25 B。通常,處理25 B需要100 ms。再考慮由SBC給應(yīng)用層提高安全防護的質(zhì)詢響應(yīng)機制,其中質(zhì)詢信息112 bit(23 B),響應(yīng)信息72 bit(9 B);專門的ASDU請求和響應(yīng)會占50 B。那么采用安全機制傳輸?shù)淖止?jié)總數(shù)為82 B(23+9+50)。
字節(jié)數(shù)的增加會增大帶寬的使用;用“X”來表示增加的處理能力。那么,新的處理能力應(yīng)為“100 ms+X”。注意:“X”值會小于100 ms。
如果使用積極模式來代替質(zhì)詢響應(yīng)機制,那么額外增加的字節(jié)數(shù)應(yīng)為57 B(積極模式請求7 B+數(shù)據(jù)傳輸50 B)。
注意:質(zhì)詢響應(yīng)機制的數(shù)據(jù)長度是根據(jù)所需的最小值(IEC 62351提到)來計算的,因為數(shù)據(jù)長度總有增加的可能。
圖3是IEC 60870-5-104協(xié)議的安全認證模型。IEC 60870-5-104協(xié)議是一個基于IP的協(xié)議,所以,某種程度上,它與IEC 60870-5-101協(xié)議的設(shè)計模型并不相同,但是,它們的數(shù)據(jù)傳輸機制都是差不多的。
這種模型也是完全遵照IEC 62351安全標準來設(shè)計的。由于認證機制中積極模式的安全性不夠,所以這種模式只采用了質(zhì)詢響應(yīng)機制。雖然在時間苛刻的情況下,積極模式非常重要,但通常的工作場景是可以承受質(zhì)詢響應(yīng)機制帶來的時間延遲的。
IEC 62351 安全標準只對應(yīng)用層提供了安全防護措施。但是在SCADA系統(tǒng)中,僅實現(xiàn)應(yīng)用層安全并不能保證關(guān)鍵數(shù)據(jù)的完整性。所以,為了保證數(shù)據(jù)完整性,需要引入安全加密機制。由于MTU和RTU都是第三方軟件,在實施數(shù)據(jù)鏈路層安全機制時,也會碰到線路機制。
經(jīng)過對IEC 60870-5-101協(xié)議數(shù)據(jù)包格式的深入分析發(fā)現(xiàn),在MTU和RTU之間傳輸?shù)臄?shù)據(jù)包有2種規(guī)格。一種長度<16 B,另一種長度>16 B。小于16 B的ASDU數(shù)據(jù)包在傳送時是完全加密的,大于16 B的ASDU數(shù)據(jù)包中,只有16 B(包括CS位)被加密,并與其余數(shù)據(jù)一起傳送。為提供更強大的安全防護,使用了AES-128位加密算法。我們已經(jīng)對模擬實驗室里的SCADA測試臺使用了這種技術(shù)。加密技術(shù)可以有效防御數(shù)據(jù)篡改攻擊、重放攻擊以及嗅探攻擊等。在數(shù)據(jù)傳輸協(xié)議中采用時間戳技術(shù)也可以防御重放攻擊。
采用不同機制造成的時延如表1所示。
由于SCADA系統(tǒng)的通信協(xié)議缺乏應(yīng)用層和數(shù)據(jù)鏈路層的安全機制,使得SCADA系統(tǒng)深受網(wǎng)絡(luò)攻擊之苦。這些網(wǎng)絡(luò)攻擊被犯罪分子用來作為破壞某個組織或國家的網(wǎng)絡(luò)戰(zhàn)爭武器。如果采用上述實驗研究模型,可以有效防御網(wǎng)絡(luò)攻擊,并可為SCADA系統(tǒng)提供應(yīng)用層和數(shù)據(jù)鏈路層的安全防護。這個研究模型也是完全符合IEC 62351安全標準的。
(未完待續(xù),“系列之六:新一代基于服務(wù)的SCADA/DCS系統(tǒng)化體系架構(gòu)”見2015年第9期)
表1 不同機制造成的時延
圖3 IEC 60870-5-104協(xié)議的安全認證模型
ADI推出四通道、2.4 GS/s、16位數(shù)DAC AD9154
最近,Analog Devices, Inc. (NASDAQ∶ADI)——全球領(lǐng)先的高性能信號處理解決方案供應(yīng)商推出四通道、2.4 GS/s、16位數(shù)模轉(zhuǎn)換器(DAC) AD9154,該器件在100 MHz ~ 300 MHz 頻段內(nèi)具有業(yè)界領(lǐng)先的動態(tài)范圍性能,可用于復(fù)中頻發(fā)射機。高度集成的四通道、16位 DAC AD9154 是同類產(chǎn)品中唯一片內(nèi)集成 PLL(鎖相環(huán))和八通道 JESD204B 接口的器件。這些特性組合可讓設(shè)計人員采用單個器件滿足多載波 GSM 和 LTE 發(fā)射器針對無線宏基站、點對點微波無線電、軍用無線電和無線電測試設(shè)備的全部設(shè)計要求。這款最新的轉(zhuǎn)換器集成一系列針對復(fù)中頻發(fā)射應(yīng)用優(yōu)化的特性,包括復(fù)數(shù)數(shù)字調(diào)制、輸入信號功率檢捊以及增益、相位與失調(diào)補償。觀看最新款高速 DAC 的視頻請訪問: http∶//www . analog.com/AD9154video 。
(ADI公司供稿)