隨著信息技術的不斷發展和兩化融合的不斷深入,APT 攻擊、內部滲透、破解偽造等攻擊手段的不斷變化和翻新,使得網絡安全威脅越來越復雜和隱蔽,已經成為企業、政府、個人等各個單位必須面對的問題,尤其在工業企業,網絡安全已成為企業生存、經濟發展、國家穩定的重要保障。
針對網絡安全問題,各國都在積極開展相關的研究和應用。針對未知威脅、未知漏洞和未知后門的威脅,鄔江興院士提出了擬態防御架構的內生安全機制,有效解決了來自“旁路”的攻擊威脅,基于動態異構冗余(Dynamic Heterogeneous Redundancy,DHR) 架 構 的 廣 義功能安全技術能將網絡攻擊帶來的不確定性失效與軟硬件隨機性失效歸一化為可量化和可驗證度量的程度;另外,針對口令破解、證書竊用、協議泄露等來自“正門”的暴力攻擊或偽裝攻擊,仍需要數字加密技術的支撐,國產密碼算法已經具備很高的成熟度,被廣泛應用于政府、監獄、軍工、大型智能建筑等高安全領域 。
本文首先以擬態防御的內生安全架構為研究對象,梳理該架構的核心思想、技術方法以及存在的問題;其次圍繞國產密碼技術的優勢和主流算法,提出了一種將國密算法和擬態防御相結合的新型內生安全防御架構方案,并總結該方案的運行機理和技術路線;最后結合工業控制器的實施案例,提出了基于國產密碼與擬態防御融合一體化的內生安全防御功能實現方案,以提高工業控制器的安全性和可靠性。
1
基于擬態防御的內生安全防御架構
基于擬態防御的內生安全防御架構是一種新型的網絡安全防御架構,它采用了擬態技術,實現了內生安全防御,可以有效地識別和防御各種網絡攻擊。該架構的核心思想是“變化”,即通過不斷的變化來對抗網絡攻擊。其中,內生安全是該架構最關鍵的一環,它采用了擬態技術,實現了自適應、動態、多樣化的防御策略,可以迅速識別和應對各種網絡攻擊。
內生安全防御架構中的 DHR 架構如圖 1所示。該內生安全防御架構由多個組件組成,包括輸入模塊、執行體集合、異構體集合、策略調度模塊、負反饋控制器和多模表決器。其中,策略調度模塊和異構體集合作為多維動態重構的支撐環節。使用標準化的軟硬件模塊可以組合出多種功能等價的異構體集合 E,策略調度算法會動態從 m 個可重構執行體中選取 n 個構件體作為執行體集合 A。輸入模塊會將輸入轉發給執行體集合 A 中的各個執行體,執行體輸出會經過多模表決器表決后得到系統輸出。負反饋控制器用于根據系統運行情況調整執行體集合和異構體集合的組合關系。通過系統輸入代理和多模裁決表決器組成的“擬態括號”,能夠有效地將模型內外結構分隔開,從而保持系統內生的獨立性。擬態括號的兩邊在邏輯和空間上是獨立存在的。

圖 1 DHR 架構模型
基于擬態防御的內生安全防御架構的核心思想是通過功能等價體的動態切換,使異構冗余架構的執行體具有動態化、隨機化的屬性,使攻擊者的攻擊難度和成本大幅提高。
目前業界已經有很多基于擬態防御的內生安全防御架構的實施思路。主要是基于以下幾種思路:
(1)針對軟 / 硬件和網絡安全的挑戰,可以采用不同的技術手段進行防御。對于軟 / 硬件方面,可以通過地址隨機化、指令隨機化、軟件多態化等技術動態改變自身或執行環境,提高安全性。對于網絡方面,可以通過動態化、虛擬化和隨機化處理網絡拓撲、網絡節點、網絡配置或網絡業務,改變網絡靜態性、確定性和相似性,有效抵御攻擊。例如,面向工控領域的擬態安全處理機架構 。
(2)通過數據隨機化技術、N 變體數據多樣化技術等動態化技術改變數據的格式、編碼或表現形式的方式,來實現對數據的保護。例如,基于擬態防御的以太網交換機內生安全體系結構 。
(3)通過可重構技術、基于異構平臺的應用熱遷移技術、Web 服務多樣化技術等動態化技術,使平臺及其上的應用環境呈現出不確定性,從而有效防止攻擊者進行攻擊。例如,內生安全結構中的擬態防御 Web 服務器 。
需要強調的是,當出現口令被破解、證書被竊用或交互協議中存在高危漏洞等攻擊表面之外的因素時,對來自“正門”的暴力攻擊和偽造攻擊仍需要加密技術的支撐。
2
國產密碼算法簡介
在信息安全領域,密碼技術是保證信息安全的重要手段之一。由于密碼技術的重要性,國家和企業對密碼技術的研究和開發一直非常重視。我國的密碼技術發展已經有幾十年的歷史,目前已經有了許多具有自主知識產權的密碼算法和密碼產品,包括祖沖之序列算法 ZUC、SM算法等系列。
祖沖之序列算法 ZUC屬于同步流密碼算法,用于保護移動通信、物聯網通信等領域的安全。ZUC 算法已被采納為國際電信聯盟移動通信安全算法的一部分。ZUC 算法采用的密鑰長度為 128 位,由 128 位種子密鑰和 128 位初始向量共同作用生成 32 位寬的密鑰流。它的加密和解密過程都采用了一系列的置換、代換、線性變換和非線性變換等操作,以保證高強度的加密和解密。同時,ZUC 算法還采用了一些特殊的設計,例如,基于線性反饋移位寄 存 器(Linear Feedback Shift Register,LFSR)的 偽 隨 機 序 列 生 成 器(Pseudo Random Number Generator,PRNG),以及一種被稱為“移位異或反饋”(Shift XOR Feedback,SXF)的加密模式,以進一步增強安全性。
SM 算法系列主要包括 SM2、SM3、SM4 和SM9 等算法,其中,SM2[8] 是用于公鑰密碼體制的加密算法,基于橢圓曲線密碼體制,推薦使用 256 bits 素域上的參數集,支持數字簽名、密鑰交換、加密和解密等多種操作。SM2 算法具有高安全性、高效性和易實現等特點,已成為國際標準化組織中的重要密碼算法之一。SM3是用于消息摘要的哈希算法,它采用 256 位消息長度和 256 位摘要長度,使用非線性函數、置換和模加等多種操作,以保證高強度的哈希安全性。SM3 算法已成為國際標準化組織中的重要哈希算法之一。SM4 是用于分組密碼的加密算法,采用 128 位密鑰長度和分組長度,使用置換、代換、線性變換和非線性變換等多種操作,以保證高強度的加密和解密。SM4 算法已被采納為國際標準化組織中的重要分組密碼算法之一。SM9是基于橢圓曲線密碼的身份密碼算法,采用 256 位密鑰長度,具備數字簽名、加密和密鑰交換等功能。
密碼技術是采用授權管理方式保護合法用戶使用軟硬件設施或信息服務或數據資源,但基于密碼技術的安全,其宿主系統的漏洞后門問題使環境可信性受到根本挑戰,即加密技術存在容易被“旁路”攻擊的風險。
3
基于國產密碼與擬態防御融合的一體化
內生安全防御架構
基于國產密碼與擬態防御融合的一體化內生安全防御架構將國產密碼和擬態防御進行融合,通過將國產密碼算法集成到擬態防御架構中,使得國產密碼的高安全性和高自主可控性支撐著內生安全的主動防御屬性,有效規避了外部攻擊和內部漏洞帶來的安全風險,實現安全性和可靠性的提升。基于國產密碼與擬態防御融合的一體化內生安全防御架構模型如圖 2 所示。

圖 2 基于國產密碼與擬態防御融合的一體化內生安全防御架構模型
3.1 運行機理
每個可重構執行體除由不同的基礎標準化軟件 [ 如操作系統(Operating System,OS)、驅動等 ] 及硬件(如 CPU)模塊構成外,還增加了標準國密模塊。執行體裁決層控制可重構執行體層來進行異構裁決,其中裁決的認證和加解密操作由認證池模塊和國密池模塊進行,并將認證和解密結果發送給風險評估層。在每次裁決前,各可重構執行體向執行體裁決層發送認證請求,當收到認證許可后,各可重構執行體將需要裁決的數據進行加密操作,并將數據發送給執行體裁決層,執行體裁決層中的認證模塊和國密模塊對該數據進行解密和認證,輸入輸出選取模塊將通過解密和認證操作的數據進行集合,然后一并將其傳入到裁決模塊進行一致性裁決并獲得此次裁決的決策。風險評估層根據未通過認證風險數據、解密風險數據以及歷史風險數據等對可執行體進行風險評估并給出風險評估決策,可重構執行體調度模塊根據裁決決策和風險評估層給出的風險評估決策,對可重構執行體進行更換和下線操作,同時對需要下線的可重構執行體進行清洗操作,保持可重構執行體層的動態性。
3.2 可重構執行體層
可重構執行體層在操作系統方面可以選擇Windows、Linux、FreeRTOS 等系統,在硬件處理器方面可以選擇 ARM、Intel 和龍芯等系列處理器,同時,可選用國密芯片作為國密模塊,芯片可集成各類商用對稱 / 非對稱算法,具有極高的安全性,可保證內部存儲密鑰和信息數據不被非法讀取、篡改,并廣泛應用于嵌入式領域。在國密算法方面,通常可選擇祖沖之序列算法和 SM 系列算法作為國密加解密方式。
3.3 執行體裁決層
執行體裁決層是基于國產密碼與擬態防御融合的一體化內生安全防御架構的關鍵層,其包括認證池模塊、國密池模塊、裁決模塊、負反饋模塊和輸入輸出選取模塊。通過與可重構執行體層交互數據,對通過國密解密和認證的數據進行一致性判決輸出。
3.3.1 認證池模塊
當接收到可重構執行體發送過來的認證請求時,將該認證請求與認證池模塊中的認證標簽進行比對,如果比對成功,則向該可重構執行體發送認證許可;反之,則不允許該可重構執行體發送數據。同時將比對結果整合成認證風險數據發送給風險評估層。
3.3.2 國密池模塊
當接收到可重構執行體的加密數據后,根據可重構執行體的類型從國密池中選擇相應的國密算法對數據進行解密,并將解密成功后的數據進行輸出;反之,對未找到對應國密算法或找到國密算法后解密失敗的可重構執行體數據進行過濾,并將解密結果整合成國密風險數據發送給風險評估層。
3.3.3 輸入輸出選取模塊
根據接收到的成功解密后的可重構執行體組件的余度數,針對不同的異構策略,選擇出對應的待處理的可重構執行體數據集隊列,并將各個異構執行體的輸出進行集合,將其發送給多模裁決器作為裁決時的信息依據。
3.3.4 裁決模塊
接收來自輸入輸出選取模塊所選擇的執行體數據集隊列產生的響應結果,并對其進行一致性判決。將通過判決得到的裁決結果發送給異構執行體調度層,同時將裁決結果形成風險數據發送給風險評估層作為風險評估依據。
3.3.5 負反饋模塊
接收可重構執行體層和異構執行體調度層的反饋信息,進行可重構執行體的清洗和掛起工作。當在沒有發現異常組件時,定期進行執行體集合輪換或定時清洗操作,增強系統的安全性。
3.4 風險評估層
風險評估層是基于各種風險數據對各可重構執行體進行風險評估,并將風險評估結果發送給異構執行體調度層,供其基于這個信息和裁決調度層的裁決輸出結果進行調度決策。風險評估的參考數據主要來源于認證風險數據、國密風險數據、裁決結果風險數據以及歷史風險數據等,通過合理的風險評估決策得到各可重構執行體的風險數據。
3.5 可重構執行體調度層
可重構執行體調度層通過與執行體裁決層和風險評估層進行交互,產生對應的調度需求和策略,進行可重構執行體的選取,將選擇可重構執行體從待調度隊列調整到服務集隊列。
4
基于國產密碼與擬態防御融合一體化內生
安全防御架構改造的內生安全工業控制器
4.1 工業控制系統發展現狀
工業互聯網應用中的工業控制系統受到日益嚴重的安全攻擊威脅 ,剖析“震網”“火焰”等工控安全事件可以得出,傳統工業控制系統設計沒有考慮安全性,難于彌補大量的安全漏洞,缺乏系統級有效的安全防護及威脅感知體系,同時由于大量采用的國外處理器或芯片存在很多后門,導致黑客組織和敵對勢力為所欲為,對國家重要基礎設施、關鍵裝備及工業互聯網造成嚴重威脅。工業控制系統的重要性、脆弱的安全狀況以及日益嚴重的攻擊威脅,已引起了世界各國的高度重視,并在政策、標準、技術、方案等方面展開了積極應對。
國內近兩年對工控安全技術的研究如火如荼,鄔江興院士等人提出的以“擬態防御”“自重構可信賴”“使命確保”等創新性主動防御技術,分析工業控制網絡廣義功能安全問題和解決方法 ,在理論推演、技術攻研和原理驗證等方面取得重要進展,并基于工業控制系統的新型攻防理論,針對工業控制系統架構特點,以“工業控制系統智能入侵檢測、工業控制系統攻防模型、工業控制系統擬態防御機理、工業控制系統擬態安全體系架構”為線索,建立了擬態防御工業控制系統安全體系架構。
4.2 現有基于擬態防御的內生安全工業控制架構
工業控制系統從上往下主要包括工程師站 /操作員站、交換機、控制器、通信模塊、IO 模塊等,徹底的內生安全是從上往下的內生安全,包括軟件和硬件的架構、設計與編碼,選擇控制器作為擬態設計對象,以主控單元的輸入和輸出為擬態界,可實現主控單元的未知漏洞和未知后門的防護。
擬態工業控制器由通信模塊、裁決調度模塊以及 N 個主控模塊組成。擬態控制器采用N+1(N ≤ 4) 鏈路設計,主控模塊 1、2、3、4 采用異構設計,輸入 / 輸出代理同時將上下游設備發來的信號透明轉發給各個主控單元,各主控模塊實現動態隨機計算并準備數據輸出,通過裁決調度模塊進行輸入 / 輸出代理的裁決,裁決通過后輸入 / 輸出代理才能將數據發送給上下游設備。擬態工業控制器總體框圖如圖 3 所示。

圖 3 擬態工業控制器總體框圖
4.3 基于國產密碼與擬態防御融合改造后的內生安全工業控制架構
基于國產密碼與擬態防御融合改造方案將國產密碼算法和認證方式集成到現有的擬態工業控制架構中,依托擬態防御的動態性、隨機性和異構性,利用國密的安全數據傳輸和主控模塊與裁決調度之間的實時認證,解決原有內生安全工業控制框架中國產密碼融合度不夠的問題,改造后的內生安全工業控制框架如圖 4 所示。

圖 4 改造后的內生安全工業控制框架
改造方案的要點如下:
(1)在各主控模塊中增加認證模塊,在硬件裁決調度模塊中增加認證池模塊。在擬態工業控制器中,為了方便各主控模塊的維護,各主控模塊通常在結構上被設計為便于拆卸的獨立模塊,所以在主控模塊上電后,硬件裁決調度模塊需要對主控模塊進行認證操作,以防止未得到認證的主控模塊運行在工業控制器中,進而威脅整個控制系統的安全。采用 SM2 算法和 SM2 數字證書實現身份認證,在主控模塊向硬件裁決調度模塊進行業務數據交互之前,先通過認證模塊向其發送認證請求,硬件裁決模塊根據認證池中存儲的認證標簽對其進行確認,當認證成功后向主控模塊發送認證許可,主控模塊收到認證許可后方可進行可信的數據交互,特別是在需要進行固件升級或配置文件更新時,通過主控模塊與裁決調度模塊之間的認證過程,確認了二者之間的可信安全環境,進而保證了系統的安全運行。具體認證流程如圖 5 所示。

圖 5 認證流程
(2)在各主控模塊中增加國密模塊,在硬件裁決調度模塊中增加國密池模塊。為提高單周期的執行效率,采用 SM4 加解密算法實現數據通信加密功能。在主控模塊與硬件裁決調度模塊進行數據交互時,首先將明文數據通過國密算法進行加密,硬件裁決調度模塊接收到主控模塊的加密數據后,從國密池模塊中獲取對應的解密算法并對數據進行解密,應當對解密成功的主控模塊數據進行一致性裁決,對未解密成功的主控模塊數據的風險值進行增加操作,同時該主控數據不參與一致性裁決。一致性裁決后,對未通過一致性裁決的主控模塊的風險值進行增加操作,調度模塊以各主控模塊的風險值是否大于設置的閾值為依據對各主控進行調度。當硬件裁決調度模塊需要向某個主控模塊發送數據時,先從國密池模塊中選擇對應主控的加密算法,并將加密后的數據發送給對應主控模塊,這樣實現了端到端的通信安全。基于國產密碼的裁決調度流程如圖 6所示。

圖 6 基于國產密碼的裁決調度流程
5
結 語
本文首先通過分析基于擬態防御的內生安全防御架構與國產密碼的各自優勢,提出了基于國產密碼與擬態防御融合的一體化內生安全防御架構,提高執行體軟硬件的可信任性以及數據的安全性。梳理了基于擬態防御的內生安全工業控制架構在安全方面存在的風險隱患,提出了基于國產密碼與擬態防御融合改造的內生安全工業控制架構,增強系統的安全性和可靠性,有效防御來自“正門”和“旁路”的攻擊威脅。下一步的研究工作將對架構進行優化,降低系統的性能開銷。
CNCERT國家工程研究中心
一顆小胡椒
安全牛
D1Net
信息安全與通信保密雜志社
系統安全運維
安全牛
商密君
中國信息安全
信息安全與通信保密雜志社
數世咨詢
D1Net