吳云峰
(中國電子信息產業集團有限公司第六研究所工業控制系統信息安全技術國家工程實驗室,北京 102209)
隨著社會和經濟的高速發展,環境問題日益突出,尤其是城市水環境的惡化,加劇了水資源的短缺,城市污水處理對解決水資源缺乏,促進社會可持續發展有著十分重要的意義。
城市污水處理一般分為三級:一級為物理處理,二級為生物處理,三級為深度處理。整個污水處理過程工藝復雜、設備多、操作步驟繁瑣,實現污水處理過程自動化運行是很有必要的,也是保證水質安全、提高污水處理效率不可缺少的環節。
基于PLC的城市污水處理的自動化控制系統采用計算機技術、控制技術、通信技術,跟蹤經常變化的水處理情況,檢測不同時間的水質指標數據,在計算機上動態展示,對這些數據進行分析處理并記錄下來,以備在需要的時候查閱。通過分析數據趨勢走向,隨時調整個設備及工藝過程參數,使其達到優化控制狀態,經濟運行,節省能耗。采用計算機代替人工操作,減少事故,保證安全,降低勞動強度,節約人力,甚至可以完成許多人工難以完成的任務,提高運行的可靠性。控制系統作為保障城市污水處理廠連續正常生產運行以及保證水資源水質安全的核心,其安全問題越來越受到關注。
一直以來,工業控制系統都被認為相對安全,不易遭受病毒攻擊。然而近些年來,水行業控制系統典型安全事件頻發。2000年,一個工程師在應聘澳大利亞的一家污水處理廠被多次拒絕后,遠程侵入該廠的污水處理控制系統,惡意造成污水處理泵站的故障,導致超過1 000 m3的污水被直接排入河流,導致了嚴重的環境災難。2001年,澳大利亞的一家污水處理廠由于內部工程師的多次網絡入侵,該廠發生了46次控制設備功能異常事件。2005年,美國發生水電溢壩事件。2006年,黑客從Internet攻破了美國哈里斯堡的一家污水處理廠的安全措施,在其系統內植入了能夠影響污水操作的惡意程序。2007年,攻擊者侵入加拿大的一個水利SCADA控制系統,通過安裝惡意軟件破壞了用于控制從Sacrmento河調水的控制計算機。2011年,黑客通過互聯網操縱美國伊利諾伊州城市供水系統SCADA,使得其控制的供水泵遭到破壞。上述安全事件表明,惡意網絡攻擊逐漸向城市水處理領域滲透,把控制系統作為攻擊的目標,為城市污水處理廠控制系統的安全性敲響了警鐘。
目前城市污水處理廠控制系統存在以下安全風險:
(1)控制系統聯網后安全問題愈加突出
在計算機和網絡技術高速發展,特別是信息化與工業化深度融合以及物聯網的快速發展的背景下,基于物聯網、云計算的城市污水處理綜合運營管理平臺為水務運營企業提供統一業務信息管理平臺(安全管理、生產運行、水質化驗、設備管理、日常辦公等關鍵業務),為企業規范管理、節能降耗、減員增效和精細化管理提供強大的技術支持,從而形成完善的城市污水處理信息化綜合管理解決方案。因此,傳統封閉控制系統網絡與基于互聯網技術的企業管理網打通,控制系統面對的是開放、復雜、不確定的工業互聯網環境,大多數城市污水處理廠控制系統信息安全防護設計考慮不足,病毒及黑客威脅隨之而來。
(2)工控安全漏洞逐年遞增
國家信息安全漏洞共享平臺CNVD數據顯示,近幾年工控安全漏洞數量增加,半數以上為高危漏洞,分布在水處理行業的工控安全漏洞數量排在前列,由于污水處理工藝生產過程要求連續運行不能隨時停機,因此導致工控安全漏洞的修復進度非常遲緩,這些漏洞極易被攻擊者利用。
(3)國外設備后門帶入威脅
城市污水處理廠控制系統中超過90%的PLC、操作員站、工程師站、工業軟件等為國外產品,因考慮現場服務成本因素,有時需要工控廠商遠程維護,因此,大多工控設備留有遠程訪問端口,存在很多未知的設備“后門”,“后門”帶入的威脅包括旁路控制、拒絕服務(DoS)、信息泄露等。
(4)以PLC為核心的工控系統口令保護弱
在污水處理廠中PLC系統編程和調試中,工程師為防止忘記密碼,往往對PLC程序的密碼口令設置都比較簡單,如生日日期、電話號碼、0~9數字等,或者直接采用出廠默認密碼,對于這種弱口令設置非常容易被破解。即使工程師設置了非常復雜的密碼,但由于目前各廠家PLC加解密大多使用國外公開的密碼算法,或網絡上公開的簡易源碼,對算法復雜度、密鑰的安全度沒有統一的頂層設計,安全性無法得到有效保障。而且大多主流PLC品牌都已有解密的方法,并在網絡上公開,黑客可結合工具掃描所有連接在互聯網上的設備IP,實現對這些設備的攻擊,例如直接篡改系統軟件。
上位機監控組態軟件一般采用固定用戶名與口令密碼,在中央控制站每天負責值班的操作人員往往各自設置用戶名和密碼,但這種依賴于固定用戶名與密碼的身份鑒別機制,無法保證用戶標識符的唯一性,無法識別病毒的偽裝,一旦密碼破解,即可從操作員站隨意控制現場設備,獲取或修改參數,嚴重的會造成重大事故。另一方面,僅依賴于上位機軟件端的身份鑒別機制,使PLC成為被動響應的一方,從而攻擊者可以繞過上位機,直接在網絡中通過重放、偽裝的方式達到攻擊目的。
(5)工控系統中數據通信采用明文傳輸

圖2 控制系統可信安全防護設計方案
城市污水處理廠控制系統通信缺乏完整性校驗,由于PLC控制系統需要保證實時性和可用性,目前PLC與上位監控系統之間、PLC與PLC之間、PLC與現場設備之間均未采用任何密碼方式保護,而是采用明文傳輸,而且往往采用CRC等通用算法,很容易受到黑客攻擊,對數據進行篡改和偽造。
綜上,目前城市污水處理廠控制系統面臨非常嚴峻的安全挑戰,因此,在城市污水處理廠設計時,控制系統的信息安全防護設計必須作為一個主要的指標考慮。
城市污水處理廠控制系統的信息安全防護設計不能是信息安全產品的簡單堆砌,應參照《IEC 62443 工業過程測量、控制和自動化網絡與系統信息安全》、《工業控制系統信息安全防護指南》、《工業自動化和控制系統網絡安全 可編程控制器(PLC)》、《GB/T 22239-2008信息安全技術 信息系統安全等級保護基本要求》等工控安全相關標準規范,根據城市污水處理廠控制系統結構、功能及工藝流程要求,構建覆蓋控制系統基礎設備安全、實時控制行為安全、業務流程作業安全的一體化深度安全防護體系,詳見圖1。

圖1 城市污水處理廠控制系統深度安全防護體系
其中,業務安全主要是IT系統信息安全防護技術在工控系統中的應用,控制安全、邊界安全、通信安全采用以密碼為基礎,以自主可控、可信計算為核心安全防護設計,可提高控制系統的主動免疫防御能力,防止非授權或意外的訪問、篡改、破壞和損失,確保控制系統能長期安全穩定地運行,保障城市污水處理廠出水水質安全。以下重點介紹控制系統的可信安全防護設計方案,如圖2所示。
可信計算是一種運算和防護并存的主動免疫防御體系,通過為計算平臺增加一個具有安全保護的密碼芯片,并通過軟硬件結合的方式構建出一個可信計算環境。利用可信計算環境進行逐級認證,建立可信鏈,確保運行程序和依賴數據的真實性、機密性和可控性等[6-9]。
城市污水處理廠控制系統基于現代先進控制思想,采用分散控制、集中管理的控制模式。系統由廠級管理系統、中央監控系統、PLC控制站、通信網絡以及現場工藝設備組成,廠級管理系統實現全廠資源配置、質量監督等,中央監控系統對全廠實行集中監控、管理,PLC控制站實現對各工段工藝設備的分散控制,二者通過高速工業以太網進行數據通信。
(1)管理層:構建管理可信計算平臺,確保應用軟件運行環境安全可信。
(2)監控層:對數據服務器、操作員站、工程師站進行安全加固,增加可信加密芯片,構建上位機可信計算平臺,確保監控組態軟件、邏輯編程軟件運行環境安全可信;基于國產麒麟操作系統,完成邏輯組態軟件的安全加固,功能包括軟件的完整性度量、權限管理、關鍵操作時的權限鑒別、組態工程文件的加密存儲與傳輸防篡改、與Ukey的集成。
(3)控制層:通過對PLC系統進行可信安全加固,增加可信加密芯片,實現嵌入式操作系統與應用軟件的完整性度量。
(4)通信:通過實現監控層上位機與PLC系統的身份認證,完成關鍵指令的解密和驗簽,確保上位機接入及操作指令下發的完整性和保密性。
中央控制站設于中控室(CCR),配置具有非對稱密碼校驗身份識別和對稱密碼加密通信相結合的安全可信服務器、工程師站和操作員站,均基于國產飛騰CPU和麒麟操作系統。數據服務器、操作員站、工程師站以及各PLC控制的控制器等關鍵設備采用國密算法進行認證接入、建立可信安全環境。工程師站、操作員站、控制終端設備的業務邏輯更新、控制邏輯更新采用國密算法進行認證授權、校驗和操作控制,并借助物理介質(如Ukey)將工程師和操作員的屬性數字化,以此為依據驗證操作者是否具有相應的權限。
(1)安全分區:中央控制站監控系統建立和外部網絡隔離的安全分區,安全分區的門禁等物理隔離設備、網關/網閘等網絡隔離設備、人員訪問控制設備全部采用國密算法。
(2)數據服務器:采用國密算法對關鍵數據進行加密保護,保證數據的安全性。
(3)工程師站:采用國密算法SM2建立的安全訪問控制機制,可穿越開放網絡實現對PLC的遠程監測和維護。配置具有自身完整性度量防護能力,基于國產密碼摘要算法SM3的PLC邏輯組態軟件。工程師啟動PLC邏輯組態開發軟件時,軟件要求對登錄用戶進行認證,對用戶Key和口令進行驗證,通過身份認證后才允許登錄。
(4)操作員站:配置具有自身完整性度量防護能力,基于國產密碼摘要算法SM3的監控組態軟件。兩臺操作員站在功能上完全相同:與所有現場I/O通信(無限點),趨勢、報警、報表、數據庫連接等,且兩臺操作站之間互為熱備冗余:當主站由于故障不能通信時,備站立即接管所有功能,當主站恢復正常時,首先要將故障期間系統需存儲的歷史趨勢數據、報警記錄等從備站補回,然后再將所有控制功能自動切換到主站,由主站繼續控制整個系統,備站重新回到熱備狀態,并連續地以主站為數據源同步更新所有數據。
(5)其他業務子系統:其他業務相關子系統,如水務集團企業網,和PLC子系統彼此隔離。數據訪問需經過相應的權限認證和密碼保護。
系統共設4個PLC控制站, 1#站設于提升泵房,負責物理處理工段;2#站設于變配電間,負責生物處理工段;3#站設于鼓風機房,負責深度處理工段;4#站設于污泥濃縮脫水機房,負責污泥處理工段。
PLC控制站由控制器、電源模塊、通信模塊、I/O模塊、功能模塊、控制機柜以及其他電氣元件等組成,是實現整個工藝流程自動化控制的關鍵,實現對現場壓力、流量、溫度、PH等工藝數據以及現場工藝設備運行狀態的采集,并通過預先編制下裝至PLC的邏輯控制程序控制污水處理廠工藝流程自動運行。PLC采集到的工藝數據實時上傳至中央控制站監控系統,并執行來自中央控制站監控系統的指令。
控制器:PLC控制站的核心,設計基于國產密碼安全芯片,采用國產化自主CPU、實時操作系統以及組態運行支撐環境。
冗余配置:PLC采用雙機熱備的冗余配置,即支持電源冗余、CPU冗余、以太網冗余、總線冗余以及I/O冗余,熱備無擾切換時間≤50 ms,CPU與遠程I/O之間采用冗余的現場總線。整個系統任何部件的故障或者異常關斷都能夠自動切換到備用系統。
控制邏輯:PLC中的用戶控制邏輯是實現控制功能的關鍵部分。控制邏輯在工程師站邏輯組態軟件中完成編輯、編譯后生成可執行文件,然后下裝至控制器中循環執行。PLC控制邏輯設計采用可信分發技術,整個過程包括:組態—編譯—簽名—權限—下裝—認證—接收—驗簽—運行。與傳統PLC相比,邏輯分發過程要更加安全、可信。
另外,PLC系統及安全防護設計應遵循以下準則:
(1)單一故障不會引起PLC系統的整體故障。
(2)單一故障不會引起其他保護系統的誤動作或拒動作。
(3)控制功能的分組劃分原則:某個區域的故障只是部分降低整個控制系統的控制功能,此類控制功能的降低可通過運行人員干預進行處理。
(4)控制系統具有自診斷功能,內部故障在對過程造成影響之前可被檢測出來。
(5)每個I/O機架有安裝好的備用I/O點,為實際使用量的20%。
(6)每個I/O機架應有實際使用量30%的備用插卡空間。
(7)支持目前主流通信協議,如MODBUS TCP、MODBUS RTU、CAN、自由口協議等。
(8)PLC邏輯編程軟件符合IEC61131-3國際標準,支持夠提供包括梯形圖(LD)、功能圖塊(FDB)、結構化文本(ST)編程語言,用戶可在同一項目中選擇不同的編程語言編輯子程序、功能模塊等。
整個系統采用三級網絡結構,即生產管理網、生產監控網和生產控制網,將過程實時數據、運行操作監視數據信息同非實時信息及共享資源信息分開,分別使用不同的網絡,有效地提高了通信效率,降低了通信負荷。配置邊界防護設備,通過對進入和流出計算環境的信息流進行可信度量和安全檢查,確保不會有違背系統安全策略的信息流經過邊界。
(1)生產管理網,即廠級信息管理系統網絡,配置安全工業以太網交換機,并通過工業防火墻連接互聯網。
(2)生產監控網,即中央控制站與各PLC控制站之間的數據通信采用高速、實時的工業以太網,網絡結構為環形,通信速率為100 Mb/s,傳輸介質為光纖。配置安全工業以太網交換機,并通過工業防火墻連接生產管理網。
(3)生產控制網,即PLC控制與I/O之間采用現場總線,傳輸介質為屏蔽雙絞線或光纖。
(1)安全可信授權系統:工程師、操作員進入系統需使用物理介質(如Ukey)進行認證授權、校驗和操作控制,安全密碼驗證基于國密算法,以此為依據驗證操作者是否具有相應的權限,避免控制系統遭到非授權或意外的訪問、篡改、破壞和損失。系統提供分級的用戶進入密碼系統,所以低級操作員只能進入基本操作功能界面,同時較高級別的操作人員,按照不同的密碼,可進入不同的系統組態功能界面。操作者對非自己管理區域的設備不能進行誤操作,無權限人員無法通過該計算機控制PLC系統,同時也可防止病毒偽裝成操作員發送控制指令。
(2)流程顯示功能:顯示工程設備的運行狀態、工藝流程的動態參數、相關參數的趨勢、歷史數據及歷史記錄、各類報表。
(3)編程組態功能:工程師可在中央控制站實現編程、組態和修改等,監控計算機裝有功能強大的監控組態軟件,以便能方便、直觀地組態和編程。
(4)診斷調試:系統有在線和離線修改功能,并帶有自診斷功能,系統的任何一個部件的故障可以在運行中自動診斷出,并且在監控軟件中及時、準確地反映出故障狀態、故障時間、故障地點及相關信息。在系統或工藝設備發生故障后,I/O狀態將返回到工藝要求預設置的安全狀態上。
(5)系統穩定性:不因誤操作和通信問題死機,重要技術參數修改有軟鎖。
(6)趨勢功能:能根據實時數據,觀看在擴展期內的發展趨勢,同時能顯示出8個趨勢且每10 s掃描一次,圖形顯示和歷史數據顯示是一樣的,哪一個模擬量要顯示趨勢,由操作員根據標志或鍵盤輸入確定。
(7)報警功能:完成報警記錄及顯示報警總匯,可根據收到的次序顯示,所有報警都標有日期、時間,有8個報警優先級,并且可以總體報警或一個接一個報警。
(8)打印功能:打印過程回路控制的參數給定值、報警記錄、報表、趨勢圖等。
目前互聯網技術得到了的快速發展,以高級持續性威脅(APT)為代表的攻擊使得工業控制系統面臨前所未有的安全挑戰,傳統的被動防御安全策略(如防火墻、殺毒軟件、網閘)已無法抵擋日益復雜多變的黑客攻擊。可信計算技術在城市污水處理廠控制系統設計中的應用,使得控制系統中邏輯控制不被篡改和破壞,實現主動免疫防御,具備對未知病毒木馬以及系統漏洞的防御能力,從而從根本上保證了城市污水處理廠生產的安全運行,確保水質安全。
[1] 王昱鑌,陳思,程楠.工業控制系統信息安全防護研究[J].信息網絡安全,2016(9):35-39.
[2] 彭勇,江常青,謝豐,等.工業控制系統信息安全研究進展[J].清華大學學報(自然科學版),2012(10):1396-1408.
[3] 曾瑜,郭金全.工業控制系統信息安全現狀分析[J].信息網絡安全,2016(9):169-172.
[4] 李鴻培.2014 工業控制系統的安全研究與實踐[J].計算機安全,2014(5):36-59.
[5] 宋國江,肖榮華,晏培.工業控制系統中PLC面臨的網絡空間安全威脅[J].信息網絡安全,2016(9):228-233.
[6] 沈昌祥,張煥國,王懷民,等.可信計算的研究與發展[J]. 中國科學:信息科學,2010,40(2):139-166.
[7] 沈昌祥,陳興蜀.基于可信計算構建縱深防御的信息安全保障體系[J].四川大學學報(工程科學版),2014,46(1):1-7.
[8] 馮登國.可信計算理論與實踐[M].北京:清華大學出版 社,2013.
[9] 吳歡.工業控制環境計算節點安全防護技術研究[D].北京:北京工業大學,2016.
[10] 張向宏,耿貴寧.基于可信計算的工業控制安全體系架構研究[J].保密科學技術,2014(8):4-13.
[11] 鐘梁高.基于可信計算的工業控制系統信息安全解決方案研究[D].大連:大連理工大學,2015.
[12] 魏可承,李斌,易偉文,等.工業控制系統信息安全防護體系規劃研究[J].自動化儀表,2015,36(2):49-50.
[13] 施光源,張建標.可信計算領域中可信證明的研究與進展[J].計算機應用與研究,2012,28(12): 4414-4419.