999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Fuzzing技術的工業網絡漏洞挖掘技術研究*

2016-12-21 07:13:58王國相王建章許德森李東垣郭冰楠
網絡安全與數據管理 2016年23期
關鍵詞:系統

王國相,王建章,許德森,李東垣,趙 鵬,郭冰楠,李 璇

(1.北京郵電大學, 北京100876;2.中華通信系統有限責任公司,北京100070)

?

基于Fuzzing技術的工業網絡漏洞挖掘技術研究*

王國相1,王建章2,許德森2,李東垣2,趙 鵬2,郭冰楠1,李 璇1

(1.北京郵電大學, 北京100876;2.中華通信系統有限責任公司,北京100070)

隨著工業網絡的不斷發展,為了實現更便捷的互聯互通,其與傳統IP網絡的聯系越來越緊密,這在帶來巨大便利的同時,也使得工業網絡的安全問題越來越嚴重。工業系統中存在的漏洞危害極為巨大,需要著重防范。文章根據工業系統的特點,總結了傳統漏洞挖掘方法的優缺點,進而提出了更為有效的基于Fuzzing技術的新型漏洞挖掘方法,并對相關技術進行了一定的研究和分析。應用該方法在辦公網和工業網絡中均成功挖掘出了相應的漏洞。

工業網絡;IP網絡;漏洞挖掘;Fuzzing

0 引言

隨著工業網絡和互聯網技術的發展,工業網絡與傳統IP網絡的聯系越來越緊密。現在,在很多網絡中,都存在著傳統工業網絡和IP網絡的混合組網。傳統工業網絡與IP網絡聯系不斷緊密的同時,其給工業網絡所帶來的安全威脅也越來越突出,近年來專門針對工業網絡的病毒和木馬層出不窮,并且有著愈演愈烈的趨勢[1]。因此,對工業網絡進行安全加固,防患于未然,有著極為重大的意義。漏洞挖掘技術是一種有效的安全防范技術,其可以在系統尚未受到攻擊時,先期進行相應的自我檢測和自我防范,檢測系統中可能存在的安全漏洞,并且在此基礎上做出相應的應對措施,這樣可以有效地防止系統中存在的安全漏洞被不法分子所利用,從而避免不必要的損失,因此漏洞挖掘無論是對于傳統的IP網絡,還是對于工業網絡,都可以起到極好的防護作用,所以近年來不斷地成為信息安全領域和工業網絡領域的研究熱點。模糊測試技術(Fuzzing)是一種有效的漏洞挖掘方法,其不需要獲取目標系統的所有信息,自動化程度高,快速高效,因此其在工業網絡漏洞挖掘領域有著廣泛的運用。

1 工業網絡與模糊測試技術

工業網絡是指在日常工業生產環境當中,進行日常業務控制、信息交互的復雜通信系統,其精密化程度高,組成成分復雜,功能多樣,通常由多個系統構成,包括業務局域網絡(Local Area Network,LAN)、工業控制系統、分布式控制系統或過程控制系統,其每一部分都有其特定的物理層面和邏輯層面的安全設計、策略和關注點[1]。業務局域網絡通常是傳統的互聯網,其中所使用的網絡協議通常包括TCP、IP、UDP以及一些應用層協議,如FTP、HTTP等。典型的工業網絡協議通常為用于工業自動化系統的現場總線協議,包括Modbus、CAN總線[2]等,當前很多工業網絡協議為了滿足實時性和可靠性等要求,對協議的安全性往往缺乏重視。為了實現對現場工業設備的實時控制和監測,多協議轉換網關應運而生,它通常部署在傳統IP網絡和現場總線網絡之間,提供協議轉換功能,從而實現業務網絡和現場總線網絡之間的互聯互通。當前典型的工業網絡組網方式如圖1所示。

圖1 典型的工業網絡組網方式

傳統IP網絡與現場總線網絡的融合,不僅可以實現業務網絡和現場總線網絡之間的互聯互通,也使得多種現場總線協議之間的信息交換變得更加便捷。但是,隨之而來的安全問題也變得越發突出,很多被用在傳統IP網絡的攻擊技術和病毒,都被廣泛地用于對工業網絡的攻擊,攻擊者不但可以對業務網絡進行攻擊,而且可以通過業務網絡侵入現場總線系統,從而獲得對工業現場設備的控制。

安全漏洞是指在信息系統中,開發、實現或者運行過程中引入的缺陷和錯誤。嚴重的漏洞可以導致整個信息系統的崩潰,甚至被攻擊者所操縱。工業網絡也存在著大量的安全漏洞,其危害巨大,需要著重防范。因此利用漏洞挖掘技術挖掘工業網絡中存在的安全漏洞,對工業網絡進行安全加固,有著極為重要的意義。

發現安全漏洞的方法主要有黑盒測試、白盒測試和灰盒測試三種。模糊測試技術(Fuzzing)是一種寬泛的研究領域,它屬于一種灰盒測試方法,通過向目標測試系統不斷輸入非預期的輸入,并且對系統進行監控,通過觀察系統的異常輸出來發現目標系統存在的安全漏洞[3-4]。

目前,已經存在一些比較經典的基于模糊測試技術的漏洞挖掘框架,包括SPIKE、Peach和Dfuz等。其中SPIKE框架是最被廣泛使用和最知名的模糊測試框架,它把協議數據結構分解成塊,這些塊同時包含了二進制數據和該塊的大小,甚至可以針對某個塊進行校驗,這種基于塊的協議建模方法,可以對網絡協議中各個不同的字段分別進行數據變異,從而可以對網絡協議進行覆蓋程度極高的模糊測試,提高漏洞挖掘的有效性。

Sulley是一個新型的模糊測試框架,它同樣采用基于塊的形式產生測試請求,同時簡化了數據表示方法[5],并且可以針對網絡協議的不同運行狀態和運行路徑進行全面的建模,從而對網絡協議進行全面的漏洞挖掘。同時,它還采用網絡監視代理和進程監視代理等方法,對目標測試系統進行實時監控,觀察測試目標的反應,從而及時發現測試目標所存在的漏洞。Sulley框架代表了當前主流的模糊測試框架,其在漏洞挖掘領域有著較為重要的地位。Sulley框架的組成如圖2所示。

圖2典型的模糊測試框架(Sulley)架構

在Sulley框架中,同一個測試用例只能對協議中某一個字段進行變異,不能同時對多個字段進行變異,這雖然簡化了測試用例數據的生成,但是很容易遺漏那些由多個協議字段畸形變異所觸發的漏洞[6]。其次,Sulley框架對于協議運行路徑圖中的各個不同的協議請求,不能進行組合式的漏洞挖掘,即只能對其中某一個請求進行模糊測試,其他請求則采用默認值輸入測試目標,這對那些需要協議多步運行才能觸發的漏洞顯得無能為力。最后,在工業網絡中,存在很多閉源的硬件設備,無法在其上運行監視系統,因此必須采用形式多樣的測試目標監控方案進行監控,才能對工業網絡中的設備進行有效的漏洞挖掘。針對上述在很多模糊測試框架中都會存在的問題,本文提出了相應的解決方案。

2 針對工業網絡的漏洞挖掘系統

2.1 工業網絡漏洞挖掘系統模型

在原有方法的基礎上,本文提出了更為有效并且適用于工業網絡的漏洞挖掘方法。該方法可以對工業網絡中業務網絡部分和現場總線網絡部分進行相應的漏洞挖掘,能夠產生多維變量變異的測試用例,并且在網絡協議建模的基礎之上,可以進行相應的組合式漏洞挖掘。同時,在目標監視部分,針對工業網絡中存在的網絡設備,采用發送心跳包的方式[7]實時監測設備的運行狀態,從而實時發現相應的漏洞。工業網絡漏洞挖掘系統模型如圖3所示。

2.2 多維測試用例生成方法

測試用例生成算法在模糊測試中至關重要,為了生成有效的測試用例必須對各個協議字段進行充分的變異,進而產生足夠數量并且效果良好的測試用例,本文在Sulley框架的基礎上,提出一種可以對多個協議字段進行多維變異的測試用例生成算法MFTCG(Multidimensional Fuzzing Test Case Generator)。該算法描述了測試用例的構造和生成過程,通過它可以針對協議中的各個不同字段進行多維變異,從而可以有效地避免遺漏由多維隨機變異所觸發的安全漏洞。算法描述如下:

該算法在初始時,需要建立畸形數據庫MD,其中包含針對不同字段屬性的畸形數據,包括格式化字符串、長字符串、分隔符、目錄遍歷字符串和一些邊界數據等;之后定義協議字段集合P,為了對多個協議字段進行變異,還要定義多維測試用例生成向量g。

協議字段集合P=(p1,p2,p3…pn)T表征了協議中的各個字段,pi表示協議字段集合中的某一特殊字段;多維測試用例生成向量g=(g1,g2,g3…gn)T,當gi=1(i=1,2,3…n)時選取對應的協議字段pi進行變異。

畸形數據庫:MD=(MD1,MD2…MDn),表征了不同的畸形數據子集合,如格式化字符串、目錄遍歷等,其中:

MDi=(mdi1,mdi2,mdi3…mdiri)T,mdik(i=1,2,3…n,k=1,2,3…ri)表示畸形數據子集合中的某一個畸形數據。對應協議字段pi的畸形數據生成向量si=(si1,si2,si3…siri),當sik=1時,表示從對應的畸形數據庫MDi中選取第k個畸形數據mdik,對初始序列進行變異。對于pi字段,根據畸形數據生成向量si和對應的畸形數據庫MDi,可以獲得對應的畸形數據bi:

令βi=(0,0…bi…0)T,βi為n維列向量,其中第i個分量等于bi。

設根據協議建模之后針對pi的初始測試用例序列α0=(a1,a2,a3…an)T,將對應的第i個分量置0,即初始偏移測試用例序列α′=(a1,a2,a3…0…an)T,所以最后生成的多維測試用例為:

針對不同的協議,采用不同的多維測試用例生成向量g和對應每個協議字段的畸形數據生成向量s,即可獲得相應的多維變異測試用例。所有的多維測試用例t構成了多維測試用例集合T。

2.3 組合式模糊測試方法

很多傳統的模糊測試方法在生成測試用例的基礎上,通常采取對協議的某個狀態或者單個命令發送模糊測試用例,這通常能發現對應單個協議命令或者單個協議狀態的漏洞。但是很多安全漏洞都是由多條協議指令和多個協議狀態共同作用所觸發的,因此在原有協議路徑有向無環圖的基礎上,定義一種新的組合路徑生成算法(Combination Path Generation,CPG),采用基于深度優先搜索(DFS)[8]算法的路徑遍歷算法(Path Traversal Algorithm,PTA),遍歷出任意兩個協議狀態之間存在的多條路徑,再根據路徑組合生成矩陣,產生組合式命令集合CP,并且生成相應的組合式模糊測試用例集合(包含多條指令的模糊測試用例),可以有效地挖掘目標系統中由多條有序模糊測試用例所觸發的漏洞。

在PTA算法中,從指定圖的節點出發,對深度優先搜索算法進行改進,對行進過程中的逐個節點進行記錄和比較,一旦匹配到符合要求的路徑,則馬上記錄,從而生成完整的路徑集合。設協議建模之后的有向無環圖(graph)為G=(V,E),其由協議的頂點(vertex)集V和邊(edge)集E組成,對無環圖中的任意兩個點V1和V2,以V1為起點,以V2為終點,應用本文提出的基于深度優先搜索的路徑遍歷算法PTA遍歷出兩個協議狀態之間的所有運行路徑,然后根據路徑頂點選擇策略矩陣PS=[pij]m·n,生成不同的組合挖掘路徑,從而有效地挖掘目標協議棧中由于測試用例組合式發送所觸發的漏洞。在PS中,當pij=1時,選取遍歷出的路徑集合中第i條路徑中的第j個頂點作為組合式挖掘的頂點之一。

算法的詳細描述如下:

CPG(G,PS)→CP

輸入:協議有向無環圖G,路徑選擇策略矩陣PS

方案一將16號線車站設置于十字路口南側,以盡量避免對既有上林大橋產生影響。車站共設3個出入口,分別位于灃涇大道東西兩側,以滿足灃涇大道兩側人流過街需求。車站設置兩組風亭,位于車站西側的綠化帶內。

輸出:組合路徑集合CP

(1)獲取出發點src和目的點dsc。

(2)根據src,利用函數AVF獲取可用點集合AVC。其中函數AVF用于從某一個點的鄰接點中取出符合要求的可用點,可用點必須滿足以下三個條件:鄰接點;非起始點;從該點出發未曾遍歷過的點。

(3)對可用點集合中的每一個點W進行判斷,如果是目標終點,則保存路徑,并且將新的出發點復置為之前的起始點;如果不是,則以W為新的起點,遞歸執行(2)和(3),繼續搜索。

(4)直到每個可用點集合都變為空集,輸出路徑組合ACP,到第(5)步。

根據上述算法,可以生成不同的協議挖掘路徑和不同的組合路徑,進而與測試用例生成算法組合,生成大量的針對不同協議運行狀態和應用場景的測試用例,充分有效地挖掘目標系統中存在的漏洞。

3 實驗測試與分析

本文在上述研究的基礎上,對FTP協議和工業網絡中典型的CAN總線協議轉換網關和Modbus協議轉換網關進行協議建模并進行漏洞檢測,成功發現了多例漏洞,驗證了本文方法的有效性和可靠性。試驗中,采用本文第1節所示的典型工業網絡架構架設實驗網絡,使用本文提出的方法,在對常用的應用層協議和通用工業協議進行建模的基礎之上,構造測試用例對測試目標進行Fuzzing測試。測試結果如表1所示。

表1 漏洞列表

采用本文方法對FTP服務器進行漏洞挖掘時,發送的測試用例觸發了7例漏洞,使得測試目標崩潰。對CAN網關和Modbus網關進行漏洞挖掘時,在發送特定的組合路徑測試腳本之后,漏洞挖掘系統所在客戶機無法連接目標測試系統,在發送特定組合的多個測試用例之后,從Modbus網關返回的數據異常,無法與下游的Modbus從站正常連接。

同時為了進一步驗證本文方法的有效性,采用同樣的網絡架構和應用場景,采用傳統的漏洞挖掘方法(Sulley框架)對相應的測試目標進行模糊測試,結果發現對于FTP協議,傳統方法同樣可以有效地挖掘漏洞,觸發異常,但是對于CAN網關和Modbus網關等需要多維測試用例和組合式挖掘方法才能觸發的異常和漏洞則顯得無能為力,具體實驗結果如圖4。而采用本文所提出的方法則有效地挖掘出了CAN網關和Modbus網關中的安全漏洞,從而驗證了本文所提出方法的有效性和可靠性。

圖4漏洞挖掘系統測試結果比較

4 結論與展望

本文介紹了漏洞挖掘系統的相關組成以及模糊測試系統的工作流程和模塊組成,并且分析了一般模糊測試的工作模式和測試用例生成方法,在此基礎上,提出了多維測試用例生成算法和協議路徑組合式挖掘方法,可以有效地挖掘目標系統中由多維測試用例和組合式協議命令才能觸發的漏洞,從而提升了漏洞挖掘系統的有效性。

本文在前人的研究基礎上,在方法上取得了一定的進步,但是仍舊存在很大的不足,譬如對測試目標的監控手段還不夠智能,模糊測試的自動化水平還不夠高,對工業網設備的測試范圍也相對不夠廣泛。下一步的工作是對更多的工業網絡設備進行相應的模糊測試,提升模糊測試的自動化水平。

[1] KNAPP E D.工業網絡安全[M].周秦,郭冰逸,賀惠民,等譯.北京:國防工業出版社,2014.

[2] KNAPP E D. Industrial network security(securing critical infrastructure networks for smart grid,SCADA,and other industrial control systems)[M]. American: Syngress,2011.

[3] SUTTON M ,AMINI P.模糊測試:強制性安全漏洞發掘[M].段念,趙勇,譯.北京:電子工業出版社, 2013.

[4] 胡文濤. 基于Fuzzing的網絡服務型軟件的漏洞挖掘研究[D].上海:上海交通大學, 2009.

[5] Cai Jun,Yang Shangfei,Men Jinquan,et al.Automatic software vulnerability detection based on guided deep fuzzing[C].Software Engineering and Service Science (ICSESS), 2014 5th IEEE International Conference,2014:231-234.

[6] Zhang Saidan,Zhang Luyong.Vulnerability mining for network protocols based on fuzzing[C]. Systems and Informatics (ICSAI), 2014 2nd IEEE International Conference,2014:644 - 648.

[7] 于長奇. 工控設備漏洞挖掘技術研究[D].北京:北京郵電大學, 2015.

[8] CORMEN T H,LEISERSON C E.算法導論[M].殷建平,徐云,譯.北京:機械工業出版社,2013.

Vulnerabilities mining in industrial networks based on Fuzzing

Wang Guoxiang1, Wang Jianzhang2, Xu Desen2,Li Dongyuan2, Zhao Peng2, Guo Bingnan1, Li Xuan1

(1. Beijing University of Posts and Telecommunications, Beijing 100876, China; 2.China Communication System Co.,Ltd., Beijing 100070, China)

With the development of industrial network, in order to realize more convenient connectivity, the association between traditional IP networks and industrial networks is more and more intimate, which brings great convenience. At the same time, the industrial network’s security seems becoming more and more serious. Loopholes existing in industrial systems have seriously dangerous, which should be prevented especially. According to characteristics of industrial system, this paper summarizes the advantages and disadvantages of the traditional vulnerability mining methods, then puts forward a new method based on Fuzzing technology. And some relative technologies have been researched and analyzed in this paper. This method has been applied in office network and industrial network, which has excavated the corresponding vulnerability successfully.

industrial network; IP network; vulnerability mining; Fuzzing

電子發展基金資助(工信部[2013]472)

TP306+.3;TP309.2

A

10.19358/j.issn.1674- 7720.2016.23.001

王國相,王建章,許德森,等. 基于Fuzzing技術的工業網絡漏洞挖掘技術研究[J].微型機與應用,2016,35(23):5-8.

2016-09-15)

王國相(1989-),男,碩士研究生,主要研究方向:多協議網絡,工業網絡安全。

王建章(1964-),男,高級工程師,主要研究方向:多協議網絡,云計算及大數據。

許德森(1957-),男,研究員,主要研究方向:無線多協議網絡,天線技術等。

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 99精品伊人久久久大香线蕉 | 国产成人精品亚洲日本对白优播| 日韩在线播放欧美字幕| 有专无码视频| 1769国产精品免费视频| 国产黑丝视频在线观看| 成人a免费α片在线视频网站| 亚洲第七页| 波多野结衣一区二区三区AV| 精品无码人妻一区二区| 一本一道波多野结衣一区二区| 亚洲天堂视频网站| 欧美日本激情| 欧美天堂久久| 国产后式a一视频| 天天躁狠狠躁| 国产乱人视频免费观看| 在线色国产| 成人午夜久久| 国产香蕉97碰碰视频VA碰碰看| 真实国产精品vr专区| 香蕉蕉亚亚洲aav综合| 午夜福利亚洲精品| 亚洲精品国产综合99| 国产精品亚洲片在线va| 亚洲欧美一区二区三区图片| 国产黑丝一区| 亚洲性一区| 成人国产精品2021| 亚洲国产天堂久久综合226114| 国产成人91精品免费网址在线| 伊人国产无码高清视频| av性天堂网| 国产精品漂亮美女在线观看| 这里只有精品在线播放| 色综合天天娱乐综合网| 国产精品视频猛进猛出| 日韩天堂视频| 亚洲AV电影不卡在线观看| 欧美日韩亚洲综合在线观看| 中国国产A一级毛片| 热re99久久精品国99热| 91亚洲免费| 国产白浆在线| 久久国产高潮流白浆免费观看| 青青久久91| 69精品在线观看| 欧美日本在线观看| 中文无码精品A∨在线观看不卡| 97视频在线精品国自产拍| 国产精品黑色丝袜的老师| 国产无码在线调教| 欧美第九页| 一级一级特黄女人精品毛片| 麻豆AV网站免费进入| 久久综合五月| 久久久久久久蜜桃| 亚洲天堂网在线观看视频| 九九九国产| 四虎永久在线精品国产免费| AV在线天堂进入| 国产伦精品一区二区三区视频优播| 色男人的天堂久久综合| 国产小视频网站| 97精品伊人久久大香线蕉| 99在线国产| 成人在线天堂| 18禁黄无遮挡免费动漫网站| 精久久久久无码区中文字幕| 亚洲福利网址| 久久综合成人| 国产天天色| 91在线无码精品秘九色APP| 国产玖玖视频| 免费观看国产小粉嫩喷水| 国产美女视频黄a视频全免费网站| 伊人网址在线| 亚洲一区二区成人| 亚洲欧美一区二区三区图片| 精品久久高清| 久久久久亚洲Av片无码观看| 九九免费观看全部免费视频|