谷 鵬,劉 波,幸享宏,鄒大均
(中國電子科技集團公司第三十研究所,四川 成都 610041)
0 引言
在網絡空間對抗加劇的背景下,關系國計民生的工業控制系統成為重要攻擊目標。近年來,針對各國關鍵信息基礎設施,特別是重要工業控制系統的攻擊頻發,如美國輸油管道關閉、烏克蘭配電系統被網絡攻擊、以色列供水設施運行系統口令被破解等。這些安全事件表明,攻擊重點越來越指向工業系統的實體信任、數據域信令安全方面,其根源在于實體可信機制缺乏、管控粒度不細、縱深保障能力不足[1],因此,需要研究一種以國產商用密碼為突破口,構建國產密碼在工業控制系統中深度融合的安全體系結構,開展自主可控的國產密碼防護框架研究,攻關工業控制系統中關鍵防護技術,保障工控系統資源和通信安全。
密碼技術作為重要的安全手段,在信息安全、身份認證等技術領域發揮了重要作用,保障了信息系統的私密性和完整性。但是,基于工業控制系統的現狀,密碼技術在工業控制網絡的應用仍顯不足。因此,開展針對工業協議的密碼算法、密碼模塊,自主可控的工業設備上的深度融合等方面的研究與應用,顯得尤為緊迫和重要。
1 工業網絡風險分析
通過調查研究我國工業網絡現狀發現,我國工業控制系統主要存在以下問題。
(1)系統與設備存在漏洞:工控系統設計之初缺乏安全性考慮,存在諸多漏洞與風險。隨著操作技術(Operation Technology,OT)與信息技術(Information Technology,IT)的深度融合,工控設備廣泛接入互聯網或組網進入大型企業內網,極易遭受攻擊。
(2)缺乏系統化國產密碼支撐保障:工控系統普遍缺乏基于國產密碼的自主安全防護手段。
(3)工控設備自主程度不高:工控設備與系統嚴重依賴進口,自主可控能力不足,安全性差[2]。
2 國產商用密碼概述
為確保密碼算法的自主可控,降低敏感信息泄露和信息系統遭受攻擊的風險,國家密碼管理局制定并發布了具有自主知識產權和高安全強度的國產密碼算法、密碼算法使用等相關標準,基本建成了國產密碼應用基礎設施并提供服務。目前,國產密碼產業鏈已經成熟[3]。我國自主研發的密碼算法分別有SM1 算法、SM2 算法、SM3 算法、SM4 算法、SM7 算法、SM9 算法和祖沖之算法等[4]。SM1、SM4、SM7 和祖沖之密碼是對稱算法,SM2、SM9是非對稱算法,SM3 是雜湊算法。
考慮到工控領域密碼應用的復雜性,需要確保密碼應用的安全性、合規性和有效性,需要研究商用密碼在身份認證、通信加密、協議保護等各應用領域的深度融合,發揮密碼在工控系統安全的核心關鍵支撐作用。
3 商用密碼與工業網絡融合架構設計
根據GB/T 25070—2019《網絡安全等級保護設計要求》中對工業網絡的安全要求,需要對工業網絡進行多層次的安全設計,包括根據工業網絡被保護對象的業務性質進行分區,以及針對功能層次技術特點實施網絡安全等級保護設計。工業網絡等級保護設計應結合工業控制系統協議復雜多樣、實時性要求強、節點計算資源有限、設備可靠性要求高、故障恢復時間短、安全機制不能影響實時性等特點。綜合參考工業網絡等級保護安全系統框架,本文設計的網絡安全等級保護系統架構如圖1 所示。

圖1 網絡安全等級保護系統架構
商用密碼可以完整實現網絡空間信息防泄露、內容防篡改、身份防假冒、行為抗抵賴等功能,滿足網絡與信息系統對機密性、完整性、真實性和不可否認性等安全需求。為了提升核心工業網絡的安全防護水平,結合《網絡安全等級保護基本要求》,以中國工控業務特點為導向,并針對目前工業網絡安全領域在密碼應用中存在的短板,加強商用密碼的應用,形成基于商用密碼的工業網絡安全的解決方案。
《網絡安全等級保護基本要求》專門針對工業網絡推出了擴展要求,同時要求高等級工業網絡應使用符合國家標準的密碼技術保證安全,推動商用密碼技術在工業網絡領域的應用。在管理要求、安全通信網絡、安全計算環境等“等保2.0”三級系統要求中都對密碼技術的應用進行了嚴格要求[5]。
以密碼為基礎,針對典型工業現場控制設備、網絡平臺,本文建立工業控制系統密碼應用需求框架,并提出密碼應用模式;以工業網絡、智能設備、數據服務等關鍵基礎設施為安全防護對象,將主機身份鑒別、網絡設備安全接入、用戶認證、傳輸加密、密鑰管理和數字認證等技術作為支撐,配合密鑰管理、密碼服務等實現區域隔離、邊界防護、實時監控和漏洞檢測,最終形成滿足要求的基于商用密碼的工業網絡安全防護系統,具體如圖2 所示。

圖2 基于商用密碼的工業安全防護系統
如圖2 所示,工業企業總部與全國各地的工業網絡作業單元間網絡數據是通過基于商用密碼的數字證書認證系統及VPN 安全網關來保障傳輸安全的。基于商用密碼的數字證書認證系統進行接入認證,實現了探針等安全設備接入時的可信性,保障了數據通信傳輸的完整性和機密性。邊界安全防護設備根據不同網絡區域、作業層級進行網絡安全域劃分實現區域訪問控制,基于商用密碼技術的網絡用戶身份認證實現安全域內、安全域之間的權限管理及訪問控制,同時可實現上位機安全域與下位機可編程邏輯控制器(Programmable Logic Controller,PLC)安全域之間的區域訪問控制和權限管理。終端安全防護系統(身份鑒別系統)主要負責操作員站、工程師站等上位機終端訪問用戶的身份鑒別與機上行為安全審計,將USBKey 中的商用密碼證書與主機用戶身份進行綁定來實現終端安全防護。
4 商用密碼與工業網絡融合關鍵技術及方案
4.1 基于商用密碼的邊界防護
采用商用密碼算法對接入的關鍵設備(工程師站、操作員站、PLC 等)進行身份認證,防止設備非法接入與訪問。網絡接入時需要向網絡安全防護設備進行身份認證,身份認證時采用USBKey+用戶名的雙因子認證,USBKey 采用SM2 證書及相關商用密碼算法實現身份確認,使得用戶身份認證更加安全。SM2 密碼算法主要用于證書頒發,SM2WithSM3 密碼算法用于網絡設備接入認證,基于SM2 密碼算法的證書授權機構(Certificate Authority,CA)頒發SM2 證書,存放于USBKey 中,USBKey 支持SM2/SM3 算法,算法可以由USBKey 中的芯片硬件實現。
采用商用密碼算法對關鍵數據鏈路(工業企業總部與分公司、不同作業流程之間、現場工作單元與辦公網絡等)的通信數據加密。采用商用密碼算法VPN 隧道對通信數據進行加密,用戶登錄到系統時建立一個安全加密通道,之后所有的通信數據都經過加密保護,保證數據的機密性與安全性。采用SM2 作為非對稱密碼算法,SM3 作為密碼雜湊算法,SM4 作為對稱密碼算法。通過使用SM2 證書驗證加密通信兩端的身份是否可信,并對密鑰協商中的報文進行加密,然后使用SM3 密碼算法對摘要內容進行簽名,密鑰協商完成后通過使用SM4 密碼算法對報文進行對稱加解密。
4.2 基于商用密碼的終端防護
以商用密碼相關技術為基礎,綜合利用終端操作系統訪問控制、外設控制、進程控制、文件管控等技術,面向工控系統對終端進行多方面安全防護和審計,主要實現步驟如下文所述。
(1)通過替換操作系統現有的口令登錄驗證模式,增加USBKey+PIN 碼雙因子登錄方式實現增強型的操作系統登錄。通過使用SM2WithSM3 算法和SM2 數字證書進行簽名和驗簽實現身份鑒別,以支持商用密碼算法的USBKey 作為用戶的唯一標識,使系統登錄與USBKey 緊密捆綁。用戶登錄操作系統時,必須同時通過USBKey 的PIN 碼及相關證書驗證和Windows 用戶身份驗證,才能進入系統。
(2)通過在工控現場終端快速掃描終端本地磁盤,創建PE 文件(.exe,.dll,.ocx,…)、腳本白名單庫。文件特征采用高強度商密安全散列算法,形成白名單庫。白名單庫加密存儲且無法被篡改,即使被篡改后也無法執行且會產生報警。支持基于國密SM3 哈希算法對程序校驗,被篡改的程序進程無法運行。
(3)實時采集工控終端狀態信息,包括主機IP、MAC、操作系統版本、硬件信息、安裝軟件信息、操作系統日志、開關機時間等,根據終端主機狀態監視策略,對非正常行為記錄審計日志并告警,對違反控制策略的行為進行阻斷。
(4)對未經授權的網絡設備接入行為進行阻斷,并記錄審計日志和告警;監視主機的打印行為,并記錄審計日志;監視主機的文件操作行為,并記錄審計日志;根據文件Hash 值對重要文件進行監視,發現其內容變化時記錄審計日志;對主機有連接外網的行為時對其進行阻斷,并記錄審計日志和告警。對終端中的文件、注冊表進行實時監控,根據文件、注冊表名稱或路徑進行管控,根據策略配置對非法讀取、修改、刪除文件或注冊表鍵值的行為進行管控審計并日志告警。
4.3 基于商用密碼的安全隧道
工控系統需要實現安全的網絡數據傳輸,但是工業網絡同時具有網絡環境復雜、網絡質量不可控的特點。結合工控系統的可靠性和穩定性要求,將商用密碼與VPN 技術相融合,建立傳輸高效、數據可信的安全通道,以滿足工控系統數據傳輸的實時性、安全性、可靠性等需求。
如圖3 所示,遵循國家密碼管理局GM/T 0022—2014《IPSec VPN 技術規范》的要求,根據工業網絡下的數據傳輸安全的特點,采用虛擬私有網絡技術、網絡密鑰交換協議(Internet Key Exchange,IKE)密鑰協商技術,實現通信隧道的建立、通信雙方身份認證、保障數據的機密性和完整性等功能。采用SM2 作為非對稱密碼算法,SM3作為密碼雜湊算法,SM4 作為對稱密碼算法。通過SM2 證書驗證加密通信兩端的身份是否可信,并對密鑰協商中的報文進行加密;然后使用SM3 密碼算法對摘要內容進行簽名,密鑰協商完成后使用SM4密碼算法對報文進行對稱加解密[6]。

圖3 網絡數據加密隧道
通過硬件密碼模塊實現商密運算,可實現對稱加密速率不低于20 Mbit/s,按工業協議數據包平均長度500 字節估算,完成該數據包的商密加解密運算所需時間約為0.2 ms。而工控系統Modbus/TCP數據交互時間間隔通常為10 ms,商密運算時間遠小于工業協議數據交互時間間隔,商密運算對系統延遲的影響微乎其微,對系統實時性不會產生實質性的影響。
為保證總部與各重點機構、工控作業單元之間數據在網絡傳輸中的真實性、機密性、完整性,開發基于商用密碼算法的網絡傳輸數據加密功能,將SM2、SM3、SM4 等算法應用到工業網絡的網絡數據加密環境中。網絡數據加密重點在于建立安全的數據通道,構造這條安全通道的協議必須具備以下條件:
(1)保證數據的真實性,通信主機必須是經過授權的,要有抵抗地址冒認(IP Spoofing)的能力;
(2)保證數據的完整性,接收到的數據必須與發送時的一致,要有抵抗不法分子篡改數據的 能力;
(3)保證通道的機密性,提供強有力的加密手段,必須使偷聽者不能破解攔截到的通道數據;
(4)提供動態密鑰交換功能,提供密鑰中心管理服務器,必須具備防止數據重播(Replay)的功能,保證通道不能被重播;
(5)提供安全防護措施和訪問控制,要有抵抗黑客通過VPN 通道攻擊企業網絡的能力,并且可以對VPN 通道進行訪問控制(Access Control)。
工業網絡要求網絡數據傳輸要求時延低,性能高,需要研究在傳統VPN 的基礎上,通過充分利用多核平臺的優勢,在算法的并行處理上和多核調度上進行調度優化,在關鍵的服務程序中采用多進程的處理模式,提高連接處理的并行性,充分發揮多核處理器的性能,從而滿足在工控網絡中對數據傳輸高性能和低時延的要求。
4.4 基于商用密碼的一體化工業控制系統
工業控制系統網絡結構主要組成設備包括PLC控制器、上位機(操作員站、服務器)等。生產單位的工藝流程主要依賴于控制系統中的PLC 設備完成,因此建設一體化安全工控系統,離不開安全的PLC 控制器。
以通用平臺的成熟PLC 技術為基礎,突破商用密碼輕量化裁剪、資源受限條件下的算法優化等關鍵技術,并與控制系統具體業務進行一體化深度融合,形成商密一體化安全PLC 技術。研發商用密碼一體化的通用工控系統關鍵設備,形成具有安全防御能力的商密一體化通用安全PLC 控制器產品,匹配工控系統實際安全需求,有效解決工控系統自主可控能力不足的潛在安全問題。
為全面提升工控系統的安全性,以內生安全為代表的安全新興技術正在興起;因此可以構建系統對未知威脅的主動防御能力,將商用密碼與擬態防御技術結合,研究突破內生安全在工控系統中的應用技術,研發商用密碼一體化擬態防御工控系統關鍵設備,打造具有主動防御能力的安全PLC 控制器產品,形成具有主動防御能力的整套擬態防御一體化安全工控系統解決方案,這也是將來工業網絡安全領域重要的研究發展方向。
5 結語
目前,我國工業控制網絡的安全保障建設尚處于起步階段,密碼應用技術方案尚不成熟。需要針對工控網絡及其業務特點,打造出一批深度融合國產密碼的邊界防護設備、終端安全防護系統、網絡安全監測系統、漏洞掃描系統、VPN 安全網關等網絡安全防護產品,充分利用國產商業密碼在網絡安全中的基石作用,構建工業網絡的安全防護能力。