工業自動化系統信息安全思索

時間:2022-06-07 09:49:00

導語:工業自動化系統信息安全思索一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

工業自動化系統信息安全思索

1工業自動化控制系統信息安全現狀

現代工業基礎設施包括電力、石油與天然氣、水利、工業制造,以及交通控制等重點行業,構成了我國國民經濟、現代社會以及國家安全的重要基礎。工業基礎設施的中關鍵應用、系統故障可能導致:(1)人員傷亡,嚴重的甚至造成群死、群傷等嚴重的社會事件;(2)嚴重的經濟損失,危及我國經濟建設的秩序與成果;(3)基礎設施被破壞,導致無法繼續提供對國計民生至關重要的物質產品與公共服務;(4)環境災難,從而嚴重危害人民乃至子孫后代賴以生存、發展的根本物質基礎;(5)危及公眾生活及國家安全,導致社會恐慌、政府公信力受損,甚至導致恐怖襲擊等極其嚴重的后果。而在現代工業基礎設施中,工業自動化控制系統(IACS-IndustrialAutomationControlSystem)又構成了其神經系統。工業自動化控制系統的安全直接關系到各重點工業行業的生產安全,因而,近年來成為信息安全研究的重點、熱點領域。傳統上,工業自動化控制系統多采用專用技術的封閉網絡,其面臨的(信息)安全威脅不突出。各種工業控制設備、應用、系統主要是針對專有的封閉環境而設計,對外沒有互聯互通。由于沒有現實的(信息)安全威脅,工業自動化控制系統在設計、實現與部署過程中,其主要指標是可用性、功能、性能、(物理)安全性、實時性等,而無需過多考慮網絡攻擊、信息安全等問題。

但近幾十年來,各種工業自動化控制系統正快速地從封閉、孤立的系統走向互聯(包括與傳統IT系統互聯),日益廣泛地采用以太網、TCP/IP網絡作為網絡基礎設施,將工業控制協議遷移到應用層;采用包括IWLAN、GPRS等在內的各種無線網絡;廣泛采用標準的Windows等商用操作系統、設備、中間件與各種通用技術。典型的工業自動化控制系統——SCADA(SupervisoryControlAndDataAcquisition,數據采集與監控系統)、DCS(DistributedControlSystem,分布式控制系統)、PLC(ProgrammableLogicController,可編程邏輯控制器)等正日益變得開放、通用和標準化。工業自動化控制系統在享受開放、互聯技術帶來的進步、效率與利益的同時,也開始面臨著越來越嚴重的安全威脅,具體包括:(1)由于病毒、惡意軟件等導致的工廠停產;(2)工業制造的核心數據、配方被竊取;(3)制造工廠及其關鍵工控生產流程被破壞;(4)惡意操縱工控數據或應用軟件;(5)對工控系統功能未經授權的訪問等。由于長期缺乏安全需求的推動,對(采用TCP/IP等通用技術的)網絡環境下廣泛存在的安全威脅缺乏充分認識,現有的工業自動化控制系統過去在設計、研發中沒有充分考慮安全問題,在部署、運維中又缺乏安全意識、管理、流程、策略與相關專業技術的支撐,導致許多工業自動化控制系統中存在著這樣或那樣的安全問題,一旦被無意或惡意利用,就會造成各種安全事件。近年來,越來越多的工業信息安全事件見諸報端,充分說明工業自動化控制系統所面臨的安全威脅絕非空穴來風。目前,我國對工業自動化控制系統信息安全工作的重要性與緊迫性也日益重視。2011年工信部了《關于加強工業控制系統安全管理的通知》,明確了重點領域工業控制系統信息安全管理要求,并強調了“誰主管誰負責、誰運營誰負責、誰使用誰負責”的原則,對連接管理、組網管理、配置管理、設備選擇與升級管理、數據管理、應急管理等等提出了明確要求。國際上也早已意識到工業自動化控制系統信息安全的重要性,包括美國、歐洲在內的西方國家,早在上個世紀90年代左右就開始了相關的研究工作。而工控信息安全方面的國際標準,包括ISA-99(也即IEC62443)[1]、NERCCIP、NISTSP800-82、WIBM-2784、IEC62351等等。其中,ISA-99由InternationalSocietyofAutomation(ISA)WG4工作組負責制定,面向各種工業行業的工業自動化控制系統(IACS)的安全。由于ISA-99充分考慮了工業領域的不同參與方(自動化產品廠商、系統/產品提供商、系統集成商、終端用戶)的不同安全需求,比較符合各工業行業的對信息安全標準的需要。目前,ISA-99已經完成了三部分,其他部分也正在制定中,而我國也已開始積極參與到該標準的制定工作中。因此,在可以預見的將來,工業自動化控制系統的信息安全將會成為信息安全研究及相關工作的一個重點研究領域。針對工業自動化控制系統的特點,研制并部署相應的工業自動化控制系統信息安全解決方案,保障我國工業基礎設施的安全運營,已成為迫在眉睫的需求。

2工業自動化控制系統的特點

雖然工業自動化控制系統的安全威脅源自IT、網絡技術在工業領域日益廣泛的應用,但工控系統仍具有自身的特點,簡單采用標準的IT安全技術很難適應于工控環境下控制協議、設備、應用、標準的特殊安全需求。本文將以典型的DCS為例(其網絡拓撲如圖1所示),具體分析工業自動化控制系統的特點。首先,在工業自動化控制系統中,直接執行現場控制操作的通常為PLC、分布式I/O這樣的嵌入式設備。這些設備專為現場控制環境而設計、制造,多用于執行關鍵的實時控制,易受到DoS攻擊的影響。同時,由于當前廣泛應用的PLC多設計于十幾年前,多數僅集成了簡單的口令安全等機制。設計、生產并推廣具有強安全措施的新型PLC尚待時日。與此同時,當前工業自動化控制領域還大量使用工業PC(IndustrialPC)作為工程師站、HMI、服務器等的硬件平臺。IPC實際上是一種針對工業作業環境進行了加固的PC機,具有在粉塵、高/低溫、潮濕、震動、腐蝕環境下連續不間斷工作的能力。由于易用性、用戶友好方面的考慮,目前工控領域的大多數IPC都使用Windows操作系統,通過專門的I/O卡、協議芯片等硬件使之具備工業控制、通信功能。由于是基于Windows的PC系統,IPC也面臨著與普通PC類似的安全威脅。圖1典型DCS的網絡拓撲其次,工業自動化控制系統中采用了許多特有的工業控制通信協議。這些協議或是針對特定的控制環境與應用場景(如工業以太網通信)而設計,其安全需求與可用性、實時性、功能等關鍵需求有沖突之處,因此無法簡單地修改協議,而需要有針對性地部署附加(add-on)安全解決方案;有些協議在設計之初未考慮安全方面的需求,或未考慮廣泛互聯所帶來的更高的安全需求,因而需要在為防護遺產系統提供防護解決方案的同時,逐漸遷移到新的、更安全的規范。以目前得到廣泛應用的工業以太網標準化PROFINET[2]為例。PROFINET是標準化組織PI(PROFIBUSInternational)為工業自動化制定的開放工業以太網標準,PROFINET符合TCP/IP和IT標準,可實現與現場總線系統的多層次無縫集成,并保證實時通信。PROFINET實際上是一個協議族,采用了不同的通信方式,用于滿足不同的通信需求,(1)基于以太網第二層(Layer2)的實時數據通信,包括實時RT通信(響應時間為5~10ms);基于第二層的同步實時交換芯片的同步實時IRT通信通道(在100個節點下,響應時間小于1ms,抖動誤差小于1μs);以及用于第二層網絡管理與配置的DCP(DiscoveryandConfigurationProtocol)、LLDP(LinkLayerDiscoveryProtocol)等子協議。(2)非實時的TCP/IP通信,包括基于UDP/DCOM的PN-CM(ContextManagement,用于建立并維護PROFINET通信上下文)等。由于要保證RT、IRT控制通信的實時性,在PROFINET中集成復雜的內嵌安全機制并不現實。但PROFINET實際上是工業以太網通信協議標準,其RT、IRT等實時控制通道都屬于第二層通信協議,其互聯的控制設備需要位于同一以太網內,才能保證實時控制通信。因此,完全可以在保障物理安全的前提下,通過有針對性地部署防火墻、網關、VPN,將PROFINET網絡隔離為獨立的安全域,從而保證其安全。再以得到廣泛應用的ClassicOPC(OLEforProcessControl)[3]為例。19951996年,為了避免單獨定義專門的網絡通信協議與進程間的通信機制,加快OPC規范的制定工作,ClassicOPC的通信接口直接采用了微軟的COM/DCOM。目前,OPCDA(DataAccess)服務器被廣泛用于(在控制域中)從PLC等控制設備中采集控制數據,再以C/S模式供(位于監控區或辦公區的)OPCDA客戶端訪問。但由于ClassicOPC是基于COM/DCOM的,所以客戶端在訪問OPCDA服務器數據時采用的是動態端口,ClassicOPCDA的協議通信過程如下(如圖2所示):(1)OPC客戶端首先基于DCOM通過TCP135端口向OPC服務器發送連接請求,而OPC服務器動態分配一個1024~65536之間的動態端口號發送給OPC客戶端;(2)然后OPC客戶端才通過這個動態端口向OPC服務器發送數據請求,并獲得對應的控制數據。圖2ClassicOPCDA通信如OPC客戶端部署于(圖1中的)辦公網絡,而OPC服務器則位于(圖1中的監控域。ClassicOPC的這種動態端口協商機制將導致在兩個網絡之間無法部署傳統IT防火墻,為工控網絡提供有效的防護。OPCFoundation早已意識到ClassicOPC的局限性,了新一代的OPCUA(UniversalArchitecture)。OPCUA的傳輸機制不再基于COM/DCOM,而是采用二進制TCP通信,或防火墻友好的WebService通信,因此成為未來OPC發展的方向。因此,一方面對現存的大量ClassicOPC遺產應用,迫切需要能夠提供動態端口防護的網關產品;另一方面在新的工控系統中,則應當盡可能地采用OPCUA。最后,工業自動化控制系統信息安全保障的對象,是集散控制系統DCS、過程控制系統PCS、監控與采集系統SCADA等。這些系統并非傳統的IT系統,與電信系統也相去甚遠,簡單采用標準的IT安全技術也無法為工控應用系統提供周全的保護。因此需要深入地研究工業自動化控制應用的特點與特殊的安全需求,才能真正確保工業自動化控制系統的安全。

3工控信息安全需求分析

工控信息安全是一個復雜的系統工程,不僅涉及到技術、產品、系統,更取決于工業企業的安全管理的水平。在工業應用多元化發展需求的強勁推動下,隨著工業自動化控制網絡正逐步演變為開放系統,大規模采用IT技術,其集成化網絡系統與IT網絡基礎設施充分互聯,IT部門與自動化生產部門共同負責自動化網絡運營。在這一背景下,工業企業是否經常性地組織安全培訓與意識培養,是否根據其系統特點制訂了相關的安全策略,是否建立了正規、可備案的安全流程,是否設計、維護了工業自動化控制系統的安全架構,是否根據相關實施指南貫徹了工控設備安全配置,是否建立了常規的安全審計制度,是否建立了安全事件監控與應急響應制度與預案,都直接關系著相應的安全技術及解決方案是否能真正起到作用。與傳統IT信息安全相比,工控信息安全有著其自身的特點,主要體現為安全防護的重點有所不同。IT安全一般針對的是辦公自動化環境,需要首先保證機密性,其次才是完整性和可用性(即通常所說的CIA)。而工控信息安全的防護對象則是現場的PLC、RTU等控制設備,工業控制(實時)網絡通信,以及DCS、SCADA等工業控制應用,其特點可以總結為:(1)必須優先保障24/7/365的可用性,提供不間斷的可操作性,并確保工業自動化控制系統可訪問;(2)保證系統性能;(3)保證數據的實時傳輸;(4)系統與數據的完整性;(5)為實現無縫的通信與功能交互而采用開放標準(6)采用通用組件(如微軟OS)作為自動化解決方案的基礎;(7)辦公環境與生產IT系統間的不間斷通信以保障對生產的實時監控;(8)對工廠全生命周期的支持;(9)防止誤操作與蓄意破壞;(10)保護專有技術;(11)安全日志與變更管理等。對工業信息安全而言,首先需要滿足控制系統的高可用性的要求,其次是完整性。由于在工控環境下,多數數據都是設備與設備之間的通信,因此,再次的安全目標才是機密性。所以,可以將工業自動化控制系統信息安全的關鍵需求總結為:(1)開展工業安全風險評估,建設全面的信息安全管理;(2)實現安全域的劃分與隔離,不同安全域之間的網絡接口需遵從清晰的安全規范;(3)部署集成安全措施的保護基于工業PC的控制系統;(4)保護工業自動化控制系統的控制單元,防御安全攻擊;(5)實現對工業自動化控制通信的可感知與可控制。

4解決方案:縱深防御

根據工業自動化控制系統的特點,要滿足上述安全需求,需要引入工業自動化控制系統“縱深防御”的概念作為解決方案。縱深防御就是要通過部署多層次的、具有不同針對性的安全措施,保護關鍵的工業自動化控制過程與應用的安全,其特點在于:(1)攻擊者將不得不滲透或繞過不同的多層安全機制,大大增加了攻擊的難度;(2)安全架構中存在于某一層次上的安全脆弱性,可被其他防護措施所彌補,從而避免“一點突破,滿盤皆輸”的危險。建立工業自動化控制系統縱深防御,首先需要對具體工業自動化控制系統安全需求進行系統地分析,制定相應的安全規劃;并對工控系統進行風險評估,切合實際地識別出該系統的安全脆弱性,面臨的安全威脅,以及風險的來源。在此基礎上,借助于產品安全、安全操作指南以及專業的工業安全服務,建立、部署層次化的多重安全措施(如圖3所示)。具體包括物理安全,制定安全策略與流程,部署防火墻進行隔離、防護不同的安全單元(安全域),采用VPN保護單元間通信,進行系統加固,部署賬號管理等訪問控制措施,以及補丁管理、惡意軟件檢測與防護等。目前,縱深防御的工業信息安全理念覆蓋了工業自動化控制系統的所有級別,是滿足工業信息安全領域的關鍵需求的現實解決方案。

本文以圖1.中的基于PROFINET的DCS系統為例,扼要探討一下如何根據PROFINET的特點,建立工業自動化控制系統的縱深防御:(1)建立PROFINET的物理防護邊界物理安全是工業自動化控制系統信息安全的前提,首先需要確保PROFINET網絡處于可控的物理環境中,只有經過授權的人員才能接觸網絡、設備。(2)安全策略與流程工業自動化控制系統縱深防御不僅依賴于技術、產品,更需要完備的安全策略與規范的安全流程。近年來,許多工業自動化控制系統被病毒感染都是由于工程師在IPC上使用被病毒感染的USB移動存儲所致。類似的問題,簡單依靠技術手段很難完全防止,更需要依靠安全管理措施與流程的貫徹。(3)建立安全的控制單元,確保PROFINET的邊界安全在工業自動化控制系統中,每個控制單元(圖1中controlcell)都是相對獨立的子系統,不同的控制單元之間通過PROFINET進行集成、互聯。而PROFINET的日常生產控制又相對獨立于操作站、維護站等維護應用,以及HMI、OPC服務器、應用服務器等監控系統或應用。因此,需要將基于PROFINET的DCS按其用途、特點劃分為不同的安全域(控制單元、PROFINET網絡與與監控域),定義清晰的安全域邊界。還可根據其應用、通信業務的不同之處,進一步將PROFINET中用于組態、調試、維護的操作站、維護站等劃分為一個獨立的安全域。并在安全域之間的接口處部署防火墻、安全網關等隔離設備。此外,對遠程接入、遠程維護、無線接入等,也需要在其接口處針對性地部署邊界訪問控制。(4)采用VPN技術保護不同控制單元之間的通信對于不同控制單元、安全域之間的通信,可以通過在安全單元之間部署VPN保護單元間的通信,保證相關業務通信的認證、完整性與機密性,阻止非法業務通信。同時,借助于VPN隧道技術,還可在安全單元內將維護、調試等組態通信業務,數據采集等監控業務與實時控制業務隔離開,避免組態、數據采集等被濫用后對實時控制通信產生影響。對于ClassicOPCDA服務器,必要時還需要部署專門應用網關保護其免受來自(OPC客戶端所在的)其他域的攻擊。(5)系統加固與補丁管理目前用于組態/維護的工程師站、HMI終端、OPC、SCADA、應用服務器等都采用的是安裝了Windows的IPC,加之在IPC上運行的工業控制軟件、應用,以及相關中間件等,都可能存在相應的安全漏洞,因此在條件允許的情況下,需要及時地進行補丁升級與系統加固。同時,雖然PLC等工控設備多數基于專有的嵌入式系統,但其固件也存在補丁升級的問題。(5)賬號管理對PLC、IPC上的關鍵工控應用、過程、資源,為防止未經授權的訪問或濫用,對不同人員的訪問權限進行細粒度的控制,并在安全審計中對安全事件進行溯源,需要將管理措施與技術手段相結合,針對PLCCPU口令,工業WLAN口令、IPCWindows口令、HMI口令等建立系統的賬號管理,強化基于口令的訪問控制。(7)惡意軟件防護技術對采用Windows系統的IPC工作站與服務器,病毒、蠕蟲等惡意軟件的攻擊是其面臨的最普遍的安全威脅之一。所以不僅需要在工控網絡中所有的IPC主機上全面部署病毒監控,如有更高的安全需求,還需要在安全域的入口處進一步部署防病毒網關。此外,根據ISA-99,工業自動化控制系統縱深防御還需要建立安全日志的搜集、備案與審計機制;并建立安全事件處理及應急響應預案,做到一旦發生安全事件,能夠迅速定位脆弱點,追溯攻擊源,并迅速恢復系統正常功能。從而實現對工業自動化控制通信的可感知與可控制。

5總結

工業自動化控制系統信息安全不是一個單純的技術問題,而是一個從意識培養開始,涉及到管理、流程、架構、技術、產品等各方面的系統工程,需要工業自動化控制系統的管理方、運營方、集成商與組件供應商的共同參與,協同工作,并在整個工業基礎設施生命周期的各個階段中持續實施,不斷改進才能保障我國工業基礎設施的安全運營。最后,與在IT信息安全中類似,工業自動化控制系統的安全是一個動態過程,設備變更、系統升級等都會導致工業自動化控制系統自身處于動態演化之中,而各種安全威脅、安全攻擊技術的復雜性和技巧性也在不斷演變,防范難度也會與日俱增,因此在工控信息安全也無法達到100%,信息安全需要工業自動化控制系統生命周期的各個階段中持續實施、不斷改進。