《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 基于生成對抗網(wǎng)絡(luò)的工控協(xié)議模糊測試研究
基于生成對抗網(wǎng)絡(luò)的工控協(xié)議模糊測試研究
網(wǎng)絡(luò)安全與數(shù)據(jù)治理
宗學(xué)軍1,2,隋一凡1,2,王國剛1,2,寧博偉2,3,何戡1,2,連蓮1,2,孫逸菲1,2
1.沈陽化工大學(xué)信息工程學(xué)院; 2.遼寧省石油化工行業(yè)信息安全重點實驗室; 3.沈陽工業(yè)大學(xué)人工智能學(xué)院
摘要: 傳統(tǒng)模糊測試依賴專家經(jīng)驗和協(xié)議規(guī)范,基于神經(jīng)網(wǎng)絡(luò)的方法受限于訓(xùn)練數(shù)據(jù)質(zhì)量和模型結(jié)構(gòu),面對不同的ICPs(Industrial Control Protocols)有效性差,缺乏通用有效的模糊測試方法。針對上述問題,提出一種基于WGAN-GP(Wasserstein Generative Adversarial Network with Gradient Penalty)的ICP模糊測試方法,結(jié)合統(tǒng)計語言模型N-gram修正訓(xùn)練結(jié)果,并構(gòu)建了面向多種ICPs的通用模糊測試框架GPFuzz。在油氣集輸全流程工業(yè)攻防靶場中對3種常見工控協(xié)議(Modbus/TCP,Ethernet/IP,S7comm)進行實驗,結(jié)果表明該框架生成的測試用例具有多樣性,在接受率和異常觸發(fā)指標(biāo)上優(yōu)于其他模糊測試方法,為ICS提供一種高效、通用的安全性評估方法,提升系統(tǒng)整體的安全性。
中圖分類號:TP393文獻標(biāo)識碼:ADOI:10.19358/j.issn.2097-1788.2024.07.003
引用格式:宗學(xué)軍,隋一凡,王國剛,等.基于生成對抗網(wǎng)絡(luò)的工控協(xié)議模糊測試研究[J].網(wǎng)絡(luò)安全與數(shù)據(jù)治理,2024,43(7):13-20.
Research on fuzzing of industrial control protocol based on generative adversarial network
Zong Xuejun1,2,Sui Yifan1,2,Wang Guogang1,2,Ning Bowei2,3,He Kan1,2, Lian Lian1,2, Sun Yifei1,2
1. School of Information Engineering, Shenyang University of Chemical Technology; 2. Key Laboratory of Information Security for Petrochemical Industry in Liaoning Province; 3. School of Artificial Intelligence, Shenyang University of Technology
Abstract: Traditional fuzzing relies on expert knowledge and protocol specifications,while neural network-based methods are constrained by the quality of training data and model structure. These methods exhibit poor effectiveness across different Industrial Control Protocols (ICPs) and lack a universal and efficient fuzzing approach. To address these issues, this paper proposes an ICP fuzzing method based on Wasserstein Generative Adversarial Network with Gradient Penalty (WGAN-GP), incorporating statistical language model N-gram to refine the training results. This paper developed a universal fuzzing framework, GPFuzz, tailored for various ICPs. Experiments conducted in laboratory′s oil and gas collection and transmission full-process industrial attack-defense range on three common ICPs (Modbus/TCP, Ethernet/IP, S7comm) demonstrate that the framework generates diverse test cases. These cases outperform other fuzzing methods in terms of acceptance rate and anomaly triggering indicators, providing an efficient and general security assessment method for ICS and enhancing the overall system security.
Key words : vulnerability mining; fuzzing; industrial control protocol; generative adversarial networks

引言

工業(yè)控制系統(tǒng)已廣泛應(yīng)用于能源、市政、水利、鐵路、石油石化等各個控制領(lǐng)域,是工業(yè)穩(wěn)定運行不可或缺的重要組成部分。工業(yè)控制協(xié)議(Industrial Control Protocols,ICPs)是工業(yè)控制系統(tǒng)(Industrial Control System,ICS)中傳遞信息的通道,其安全性關(guān)系到整個系統(tǒng)的安全穩(wěn)定運行。隨著工業(yè)4.0[1]時代的到來,ICS中的設(shè)備也開始接入互聯(lián)網(wǎng)。IT技術(shù)在提高生產(chǎn)力和帶來便利性的同時,也給ICS行業(yè)帶來了許多新的威脅。早期的工業(yè)控制系統(tǒng)處于物理隔離的狀態(tài),生產(chǎn)環(huán)境相對封閉。因此,在ICPs設(shè)計之初,更多地考慮協(xié)議的實時性、高效性和便利性,而沒有考慮相關(guān)的網(wǎng)絡(luò)安全風(fēng)險,忽略了網(wǎng)絡(luò)通信的基本安全屬性。然而,隨著工業(yè)控制系統(tǒng)大量使用基于IP的控制協(xié)議,或?qū)鹘y(tǒng)的基于串行的協(xié)議遷移到TCP/IP的應(yīng)用層,工業(yè)控制系統(tǒng)開始暴露于互聯(lián)網(wǎng)。2010年的Stuxnet[2]、2014年的DrongFly[3]及其演變標(biāo)志著工業(yè)控制協(xié)議已經(jīng)是黑客主要的攻擊對象之一。因此,需要對工業(yè)控制協(xié)議展開漏洞挖掘研究確保其安全性,挖掘潛在漏洞并及時修復(fù),確保工業(yè)控制系統(tǒng)的安全運行。近幾年國內(nèi)外的一系列研究表明,模糊測試能夠作為挖掘ICPs潛在威脅的有效手段。相較于其他漏洞挖掘方法如靜態(tài)分析、動態(tài)分析、滲透測試,模糊測試具備自動化、高覆蓋、成本低等優(yōu)點。模糊測試最早由Milter[4]于20世紀(jì)90年代提出,起初應(yīng)用于軟件測試領(lǐng)域,后廣泛應(yīng)用于網(wǎng)絡(luò)安全領(lǐng)域,通過模糊測試可以找到的一些漏洞類型,包括跨站點腳本、緩沖區(qū)溢出和拒絕服務(wù)等漏洞。模糊測試流程通過向目標(biāo)提供非預(yù)期輸入并監(jiān)視異常結(jié)果來發(fā)現(xiàn)漏洞,模糊測試工作主要由測試用例生成、測試用例運行、目標(biāo)程序監(jiān)測、異常分析(如圖1所示)四個階段組成,模糊測試的核心在于測試用例的構(gòu)建?,F(xiàn)有面向ICPs的模糊測試工具大部分都依賴于協(xié)議語法語義,根據(jù)協(xié)議規(guī)范來指導(dǎo)測試用例的生成,比如以Peach[5]、AFL[6]、Sulley[7]為首的模糊器等,通過預(yù)設(shè)格式生成測試用例。然而大多數(shù)ICPs協(xié)議都是不公開的專有協(xié)議,而想了解協(xié)議的語法和語義就需要對ICPs通信的數(shù)據(jù)流跟蹤和逆向分析,這種方式耗時費力且需要大量資源。隨著神經(jīng)網(wǎng)絡(luò)被應(yīng)用于處理工控過程的復(fù)雜流量[8-9],以及生成滿足要求的模糊測試輸入,逐漸擺脫對協(xié)議規(guī)范的依賴。為了構(gòu)建高效的測試用例,賴英旭等[10]使用循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)學(xué)習(xí)協(xié)議規(guī)范,提出了反樣本的測試用例生成方法,并對Modbus/TCP做了實驗,提高測試用例的接受率;趙輝等[11]提出了一種稱為SeqFuzzer的模糊測試框架,該框架采用長短期記憶網(wǎng)絡(luò)LSTM作為Seq2Seq的編碼器和解碼器,能夠處理有狀態(tài)的時間特征,并對EhterCAT協(xié)議進行了測試,發(fā)現(xiàn)了幾個漏洞;寧博偉等[12]基于無監(jiān)督學(xué)習(xí)和深度神經(jīng)網(wǎng)絡(luò),將模糊測試與協(xié)議逆向工程結(jié)合,使用投票專家算法推斷協(xié)議邊界,結(jié)合具有注意力機制的雙向長短期記憶網(wǎng)絡(luò)提取格式和語義特征;其中尤其以結(jié)合生成對抗網(wǎng)絡(luò)(GAN)的模糊測試表現(xiàn)最為出色,由于生成對抗網(wǎng)絡(luò)在圖像生成領(lǐng)域中出色的學(xué)習(xí)能力,且生成器和鑒別器的組成結(jié)構(gòu),讓胡志成等[13]使用RNN、LSTM作為生成對抗網(wǎng)絡(luò)的生成器,卷積神經(jīng)網(wǎng)絡(luò)(CNN)作為鑒別器,提出了一種自動化智能模糊測試框架GANFuzz。此外,與GAN相關(guān)的優(yōu)化方法如SeqGAN等[14]也與ICPs模糊測試結(jié)合。目前大多數(shù)研究工作傾向于將神經(jīng)網(wǎng)絡(luò)與模糊測試結(jié)合,構(gòu)建改進的模糊測試框架,然而上述方法太過于依賴單一神經(jīng)網(wǎng)絡(luò),缺少對工控協(xié)議的特殊考慮和針對性的功能設(shè)計,缺少多種工控協(xié)議的能力。本文提出一種將改進的生成對抗網(wǎng)絡(luò)WGAN-GP(Wasserstein Generative Adversarial Network with Gradient Penalty)應(yīng)用于模糊測試用例生成的方法,結(jié)合統(tǒng)計語言概率模型N-gram修正訓(xùn)練結(jié)果,在上述基礎(chǔ)上設(shè)計了面向多種ICPs的通用模糊測試框架GPFuzz。實驗表明,該框架在多個評價指標(biāo)上優(yōu)于其他方法,為工業(yè)控制系統(tǒng)提供一種高效、通用的安全性評估方法,提升系統(tǒng)整體的安全性。


本文詳細內(nèi)容請下載:

http://ihrv.cn/resource/share/2000006086


作者信息:

宗學(xué)軍1,2,隋一凡1,2,王國剛1,2,寧博偉2,3,何戡1,2,連蓮1,2,孫逸菲1,2

(1.沈陽化工大學(xué)信息工程學(xué)院,遼寧沈陽110142;

2.遼寧省石油化工行業(yè)信息安全重點實驗室,遼寧沈陽110142;

3.沈陽工業(yè)大學(xué)人工智能學(xué)院,遼寧沈陽110870)


Magazine.Subscription.jpg

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。