★和利時科技集團有限公司賈峰
目前,工業可編程控制系統加密技術主要涉及數據加密、通信加密和存儲加密等方面。數據加密通常采用對稱加密算法或非對稱加密算法,以確保數據的機密性和完整性;通信加密則通過在網絡傳輸過程中對數據進行加密處理,防止數據被竊取或篡改;存儲加密則是對存儲在控制系統中的數據進行加密保護,以防止數據泄露或被非法訪問。
工業可編程控制系統加密需求分析如下:
(1)數據隱私保護需求
工控系統中包含大量敏感數據,如生產過程的實時數據、控制參數、設備狀態等。這些數據的泄露可能會導致企業數據資產損失、工藝秘密泄露或潛在安全風險等嚴重后果。因此,需要采用數據加密技術來保護數據的隱私性。
(2)通信安全需求
工控系統中的各個組件之間需要進行大量的通信,包括控制指令的發送、數據的采集和傳輸等。如果通信過程被攻擊者監聽或篡改,可能會導致系統的不穩定甚至造成安全事故。因此,需要采用通信加密技術來確保通信內容的安全性和完整性。
(3)存儲安全需求
存儲在工控系統中的數據需要保持真實和完整,以防止被竊取或篡改。因此,需要采用存儲加密技術來保護數據的安全性。
(4)訪問控制需求
不同用戶可能具有不同的權限,需要采用訪問控制機制來確保只有經過授權的用戶才能訪問和操作控制系統中的數據。同時,還需要與加密技術結合,實現更高級別的訪問控制。
(5)合規性需求
隨著數據保護和隱私法規的日益嚴格,控制系統需要滿足相關的合規性要求。加密技術是實現這些合規性要求的重要手段之一。
針對工業可編程控制系統的加密需求,可以采用以下加密策略和技術方案:
(1)數據加密策略
采用對稱加密算法或非對稱加密算法對工控系統中的敏感數據進行加密處理,確保數據的機密性和完整性。
(2)通信加密策略
在工控系統的網絡傳輸過程中采用通信加密技術,如SSL/TLS協議等,確保通信內容的安全性和完整性。
(3)存儲加密策略
對存儲在控制系統中的數據進行加密保護,采用全磁盤加密或文件加密等方式來實現。
(4)訪問控制策略
結合加密技術和訪問控制機制,實現用戶身份的驗證和權限的分配,確保只有經過授權的用戶才能訪問和操作控制系統中的數據。
(5)合規性支持
根據相關的數據保護和隱私法規要求,制定合規性支持策略和技術方案,確保控制系統能夠滿足相關法規的要求。
綜上所述,工業可編程控制系統安全需要綜合考慮數據隱私保護、通信安全、存儲安全、訪問控制、合規性要求等多個方面。通過合理的加密技術設計和實施,可以確保控制系統的安全性和穩定性,為企業的持續發展提供有力的保障。
1 工業控制系統密碼算法技術研究
1.1 密碼算法及數據加解密保護
為進一步提高數據傳輸的安全性,采用SM2/SM3/SM4/SM9等加密算法,對數據進行加密處理,確保數據的安全性。設計如圖1所示的工業可編程控制系統加密安全方案,其中密鑰數據(SM2密鑰、常規SM4密鑰、SM9相關密鑰、SM9設備ID等)通過改進的白盒SM4算法(改進見下文)進行加密存儲,確保密鑰的高安全性。其他數據存儲分為以下兩種情況:針對高敏感數據(控制系統實時數據、組態數據、操作指令等),通過SM2加密算法進行加密;針對其他數據,僅判斷其真實性,計算數據hash值,并對其hash值進行簽名,驗證其真實性時,通過判斷驗簽及hash值比對進行校驗。
圖1 可編程序控制系統加密安全方案設計圖
傳統密碼算法在設計時并未考慮算法運行平臺的安全風險。Chow等在2002年提出了白盒攻擊模型,假定攻擊者具有完全控制算法運行過程的能力,可以獲取算法的運行狀態、更改算法運行的中間值等。此模型更符合密碼設備在失控環境下的應用情況,因為一個合法的用戶也可能變為一個潛在的攻擊者。在這種環境下,傳統攻擊模型中設計的密碼算法將不再安全。如何保護密碼算法在白盒環境下的安全性,在數字版權保護、移動終端安全等領域具有強烈的現實需求。Chow等使用混淆與查找表等方式設計了AES、DES白盒方案,肖雅瑩等在2009年使用類似方法設計了SM4算法的白盒方案(肖-來方案),白鯤鵬等進一步通過復雜化內部解碼編碼過程以及引入更多隨機數的方式設計了一個新的SM4白盒方案(白-武方案)。
本文對肖-來方案的白盒SM4在應用SM4CBC方案進行了改進,如圖2所示。
圖2(b)改進WBSM4-CBC加密算法
1.2 密碼管理
根據近代密碼學觀點,決定整個密碼體制安全性的因素是密鑰的保密性,而不是對密碼算法的保密,密碼算法是可以公開評估的,因此密鑰管理是至關重要的。在密碼系統的設計時,需要解決的核心問題是密鑰管理問題,而非密碼算法問題。
密鑰管理就是在授權各方之間實現密鑰關系的建立和維護的一整套技術和程序。
根據工業可編程控制系統的實際情況,去掉管理維護等機制,我們重點關注密鑰的生成、存儲、分發與協商、使用、備份與恢復、更新、撤銷和銷毀階段,如圖3所示。
圖3 工業可編程控制系統密鑰生命周期圖
(1)密鑰生成和檢驗
密鑰產生設備主要是密鑰生成器,一般使用性能良好的發生器裝置產生偽隨機序列,以確保所產生密鑰的隨機性。
(2)密鑰交換和協商
典型的密鑰交換主要有兩種形式:集中式交換方案和分布式交換方案。前者主要依靠網絡中的“密鑰管理中心”根據用戶要求來分配密鑰,后者則是根據網絡中各主機相互間協商來生成共同密鑰。生成的密鑰通過手工方式或安全信道秘密傳送。工控系統在監控網絡層通過可信機構生成SM9主密鑰,控制網絡層通過內部生成SM9主密鑰,在通信過程中,通過密鑰協商生成SM4密鑰。
(3)密鑰保護和存儲
對所有的密鑰必須有強力有效的保護措施,提供密碼服務的密鑰裝置要求絕對安全,密鑰存儲要保證密鑰的機密性、認證性和完整性,而且要盡可能減少系統中駐留的密鑰量。密鑰在存儲、交換、裝入和傳送過程中的核心是保密,其密鑰信息流動應是密文形式。工控系統采用WBSM4白盒加解密表保護密鑰數據安全。
(4)密鑰更新和輪換
任何密鑰的使用都應遵循密鑰的生存周期,絕不能超期使用,因為密鑰使用時間越長,重復幾率越大,外泄可能性越大,被破譯的危險性就越大。此外,密鑰一旦外泄,必須更換與撤銷。密鑰裝入可通過鍵盤、密鑰注入器、磁卡等介質以及智能卡、系統安全模塊(具備密鑰交換功能)等設備實現。密鑰裝入可分為主機主密鑰裝入和終端機主密鑰裝入,二者均可由保密員或專用設備裝入,一旦裝入就不可再讀取。
(5)密鑰備份和恢復
應對密鑰丟失或損壞的情況,應該建立密鑰備份和恢復機制。密鑰備份是將密鑰的副本存儲在安全的地方,以便在需要時進行恢復。密鑰恢復應該受到嚴格的控制,以防止未經授權的訪問。
(6)密鑰注銷和銷毀
當密鑰不再需要時,應進行安全的密鑰注銷和銷毀操作,以確保密鑰無法被恢復和再利用。密鑰注銷是將密鑰從活動狀態轉為非活動狀態,以防止其被誤用。密鑰銷毀涉及物理銷毀密鑰介質或對密鑰進行安全的擦除操作。
(7)密鑰審計和監控
對對稱密鑰進行審計和監控可以追蹤和監測密鑰的使用情況,并可以及時檢測和應對可能的安全威脅。密鑰的使用情況、訪問權限和操作記錄應進行監控和審計,并進行安全事件的報告和響應。
2 工業可編程控制系統通信安全技術方案研究
2.1 研究工控系統控制器與擴展I/O模塊之間高速總線的加解密方法技術
工業可編程控制系統控制器與I/O模塊之間高速總線的加解密方法采用SM9、SM4加密算法。其中,密鑰的生成及密鑰數據存儲均在TPCM中產生與保存。首先,通過SM9加密主密鑰生成接口、簽名主密鑰生成接口、協商主密鑰生成接口分別生成加密主密鑰、簽名主密鑰、協商主密鑰。這三類主密鑰,可結合ID信息用于生成用戶加密密鑰、用戶簽名密鑰、用戶協商密鑰。通過TPCM中的主密鑰,分別根據控制器ID、I/O模塊ID生成三類用戶密鑰,存儲在各個模塊當中,控制器用戶密鑰存儲于TPCM當中。
首先控制器與I/O模塊之間,通過SM9密鑰協商機制,進行密鑰協商。SM9密鑰交換協議流程如圖4所示。
圖4 SM9密鑰交換協議流程
通過密鑰協商,確定SM4密鑰,后續控制器與I/O模塊之間采用SM4CBC加密算法進行數據加密傳輸。
2.2 工業可編程控制系統監控層網絡安全通信
控制系統監控層網絡安全通信根據情況不同,分別采用兩種不同的加密通信方式。
(1)當通訊遠端與本端無同一可信機構生成的SM9用戶加密(簽名、協商)密鑰時,控制系統采用安全套接字SSL技術。安全套接字層SSL協議是目前使用最廣泛的傳輸層安全通信協議,為應用數據安全傳輸提供了保障。但采用傳統密碼算法的SSL協議滿足不了我國商業密碼應用的需求,面對日益嚴峻的安全形勢,國家密碼管理局發布了國產密碼商用SM系列算法。
在工業控制系統的通信過程中引入基于國密算法的通信方式,是加強工業安全可控的要求,可以建設更為安全的工業網絡安全環境,增強工業控制系統的“安全可控”能力。
控制系統采用的安全通信組件支持SM2、SM3、SM4等國密算法和SM2國產密碼數字證書及基于SM2證書的SSL/TLS安全通信協議。組件與常用開源組件保持接口兼容。因此國產密碼通信加解密組件可以替代應用中的常用開源組件,并使應用自動具備基于國產密碼的安全能力。
當工控系統網絡單元接收到傳輸的通信數據包時,首先對數據包按照TCP/IP數據幀結構進行逐層分析,獲取加密后的應用層數據信息,然后將加密的數據信息發送加解密組件,利用已協商好的對稱密鑰,采用國產密碼SM4解密算法對加密的數據信息進行解密,從而獲得應用數據的明文信息,進行下一步處理。
當工控系統網絡單元收到需要加密的應用信息后,首先將明文的應用信息發送給TPCM,TPCM利用已協商好的對稱密鑰,采用國產密碼SM4解密算法對明文信息進行加密,生成加密后的密文應用信息,然后為密文應用信息安全TCP/IP數據幀格式添加TCP首部和IP首部,形成新的數據包,發送至網絡。安全通信協議會話建立過程如圖5所示。
圖5 安全通信協議會話建立過程
(2)當通訊遠端與本地端由同一可信機構生成的SM9用戶加密(簽名、協商)密鑰時,采用SM9加密數據通信,與控制器與I/O模塊之間通信類似,通過SM9密鑰協商機制,進行密鑰協商。協商出SM4密鑰,并通過SM4進行加密數據傳輸。
該方法相較TLS加密通信,具有以下優勢:
·無需證書:SM9密鑰協商是一種基于標識的密碼算法(IBC),它最大的優勢就是無需證書。相比之下,TLS1.2雖然也提供了較高的安全性,但其在建立安全連接時通常需要使用數字證書進行身份驗證和密鑰交換。這意味著在使用TLS1.2時,需要管理和頒發大量的數字證書,增加了管理的復雜性和成本。而SM9密鑰協商則通過基于標識的方式,無需頒發和管理數字證書,從而大幅降低了管理成本。
·高效性:SM9密鑰協商具有運算效率高、算法安全模式實現靈活等特點。這使得在海量設備間的安全通信中,SM9密鑰協商能夠更快速地完成密鑰協商過程,提高了通信的效率和響應速度。而TLS1.2雖然也在握手過程中進行了優化,減少了握手時間和網絡延遲,但其在處理海量設備間的安全通信時,可能仍然存在性能瓶頸。
·適用性:SM9密鑰協商在保障移動互聯網、大數據、工業互聯網、物聯網、車聯網等領域的數據安全方面有著得天獨厚的優勢。這些領域通常需要處理大量的設備和數據,對安全性和性能都有較高的要求。而SM9密鑰協商正是針對這些領域的特點而設計的,能夠滿足這些領域對安全性和性能的需求。
3 結論
針對工業可編程控制系統通信過程中存在的安全問題,以及工業控制系統對系統整體的可靠性、穩定性、安全性要求較高,本文針對工控系統密碼算法技術進行了研究,并對肖-來方案的白盒SM4方案進行了改進。我們通過對白盒SM4-CBC的“IV”進行處理,進一步提高了數據的安全性。基于此,我們設計了工控系統加密安全方案,并設計了控制系統的密鑰管理流程。工業控制系統通信網絡安全技術方案根據作用場景不同,設計了基于SM9、SM4加密算法的安全通信方案以及常規的基于TLS國密安全通信方案,確保了控制系統通信安全。
作者簡介:
賈 峰(1975-),女,遼寧營口人,副高級工程師,學士,現就職于和利時科技集團有限公司,研究方向為工控網絡安全、工業自動化。
參考文獻:
[1] 孫彥斌, 汪弘毅, 田志宏, 等. 工業控制系統安全防護技術發展研究[J]. 中國工程科學, 2023, 25 (6) : 126 - 136.
[2] 張曉明, 王麗宏, 何躍鷹, 等. 工業控制系統信息安全風險分析及漏洞檢測[J]. 物聯網學報, 2017, 1 (1) : 34 - 37.
[3] 王子驥. 工業互聯網安全通信協議與訪問控制關鍵技術研究[D]. 桂林: 桂林電子科技大學, 2024.
[4] 聞宏強, 李富勇, 趙一凡, 等. Modbus/TCP協議安全性分析與防護技術探討[J]. 物聯網技術, 2018, 8 (11) : 34 - 35.
[5] 張翔宇, 路來順. 工業控制系統網絡安全分析與研究[J]. 網絡空間安全, 2019, 10 (5) : 114 - 120.
[6] GB/T 22239-2019, 信息安全技術 網絡安全等級保護基本要求[S].
[7] 尚培. SMS4算法的白盒密碼算法設計與實現[D]. 成都: 電子科技大學, 2017.
[8] 林婷婷. 白盒密碼研究[D]. 上海: 上海交通大學, 2020.
[9] XIAO Y Y, LAI X J. A secure implementation of white-box AES[C]. In: Proceedings of 2009 2nd International Conference on Computer Science and Its Applications—CSA 2009. IEEE, 2009: 1–6. [DOI: 10.1109/CSA. 2009.
[10] 肖雅瑩. 白盒密碼及AES與SMS4算法的實現[D]. 上海: 上海交通大學, 2010.
摘自《自動化博覽》2024年11月刊