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

大規模網絡滲透測試路徑規劃方法研究

2023-06-07 09:43:24王曉凡周天陽臧藝超朱俊虎
計算機應用與軟件 2023年5期
關鍵詞:程序規劃利用

王曉凡 周天陽,2 臧藝超 朱俊虎,2

1(信息工程大學數學工程與先進計算國家重點實驗室 河南 鄭州 450001) 2(國家數字交換系統工程技術研究中心 河南 鄭州 450001)

0 引 言

2019年以來,云計算、大數據、物聯網、工業互聯網、人工智能等新技術新應用大規模發展,網絡安全風險融合疊加并快速演變?;ヂ摼W技術應用不斷模糊物理世界和虛擬世界界限,對整個經濟社會發展的融合、滲透、驅動作用日益明顯,帶來的風險挑戰也不斷增大,網絡空間威脅和風險日益增多[1]。在眾多網絡攻擊形式中,滲透攻擊威脅更大,特別是以高級可持續威脅(Advanced Persistent Threat,APT)為代表的滲透攻擊,給國家、軍隊和企業帶來了巨大的威脅[2]。APT攻擊是某個組織針對特定對象展開的持續有效的攻擊活動。當前,APT攻擊逐步向各重要行業領域滲透,在重大活動和敏感時期更加猖獗。2019年全國“兩會”、新中國成立70周年等重大活動期間,“蔓靈花”組織大幅擴充攻擊竊密武器庫,利用了數十個郵箱發送釣魚郵件,攻擊了近百個目標,向多臺重要主機植入了攻擊竊密武器,對我國黨政機關、能源機構等重要信息系統實施大規模定向攻擊[1]。因此,加強網絡安全防護,加快網絡安全核心技術創新突破成為關注的重點。在現有的網絡安全技術中,滲透測試是最為有效的方法之一[3]。它是一種模擬真實攻擊的方法,旨在評估計算機系統和網絡的安全性[4]。

滲透測試主要包括前期交互、情報搜集、威脅建模、漏洞分析、滲透攻擊、后滲透攻擊、報告七個階段[5]。其中,路徑規劃是在漏洞分析的基礎上,為滲透攻擊提供方向指導。當前,對滲透測試路徑規劃的研究存在兩種不足。

第一是路徑規劃的準確性有偏差,原因在于建立的漏洞評價體系存在不足。文獻[6-8]提出了基于CVSS的漏洞評分系統。CVSS是一個對漏洞定性評級的標準,它將漏洞的相關信息轉換為具體的分數,同時提供多個指標便于對漏洞的評估[9]。這個標準主要是對漏洞的嚴重性和影響力進行綜合評估,但是在反映漏洞利用的難度上存在一定的偏差。文獻[10]提出了基于CVSS的改進的漏洞評價方法,加入了主機環境因素,并對時間因素建模評分,提高了漏洞評估的準確性,但是基于單一的CVSS標準進行評估,仍然存在一定的局限性。文獻[11]提出了基于多源漏洞庫的漏洞評估標準庫,調用了公共平臺枚舉(Common Product Enumeration,CPE)平臺枚舉數據、公共漏洞披露(Common Vulnerabilities and Exposures,CVE)漏洞定義數據和公開漏洞評估語言(Open Vulnerability and Assessment Language,OVAL)漏洞評估數據,實現了對漏洞較為全面的評價,但是該評價方法無法對特定的漏洞及其所處的網絡環境進行分析。文獻[12]提出了基于知識圖譜的擴展攻擊圖生成方法,通過對多源途徑獲取的漏洞相關信息進行融合,實現了對漏洞更全面更精確的評估。但是,滲透測試要模擬攻擊者的行為,攻擊者在對目標進行攻擊時,更加注重對漏洞利用程序的評價,上述方法都忽略了漏洞利用程序評價在滲透測試過程中的重要性,使得結果的準確性出現偏差。

第二是面對大規模網絡時,生成路徑的效率不高。針對這個問題,文獻[2]構建了分層結構的雙層威脅滲透圖和主機資源知識圖譜,改善了攻擊圖狀態空間爆炸的問題。文獻[13]利用對目標環境的預處理和攻擊模式的實例化構建大規模網絡下的攻擊圖,實現了對多子網復雜網絡拓撲的攻擊圖構建。文獻[14]利用非關系型數據庫Neo4j存儲目標網絡的所有信息,并使用寬度優先算法生成攻擊路徑。該方法后期生成路徑的效率比較高,但是Neo4j數據庫在進行大數據寫入時性能較差,仍然影響方法整體的效率。大規模網絡下滲透測試路徑生成效率低的問題在上述方法中雖然得到了改善,但是仍然與現實需求存在一定的差距。

針對路徑規劃準確度不高和大規模網絡下生成路徑效率低的問題,本文提出一種基于漏洞利用程序評分的并行規劃算法,通過漏洞利用程序評分提升路徑規劃的準確性,利用并行化技術提高路徑的生成效率,解決了大規模網絡滲透測試路徑規劃耗時長、不夠準確的問題。

1 并行路徑規劃方法

規劃方法的整體框架如圖1所示。

規劃方法主要分為兩步。第一步利用目標網絡生成對應的連接關系圖,連接關系圖直觀反映了目標網絡節點間的連接關系,并通過有向邊的權值表示節點的脆弱性。第二步利用并行最短路徑搜索算法,搜索連接關系圖中攻擊節點到其他所有節點的最短路徑,即為滲透測試路徑。

1.1 連接關系圖生成

1.1.1有向圖構造

有向圖的構造方法是:將目標網絡中的實物節點抽象為有向圖中的頂點,若兩個節點可以直接訪問,則存在一條由訪問主機到被訪問主機的有向邊。

具體示例如圖2(a)所示,這個網絡由3個部分組成:互聯網主機、服務器和內網主機。互聯網主機可以訪問服務器,但不能訪問內網主機;服務器可以訪問內網主機;內網主機可以訪問服務器,但不能訪問外網。抽象后的有向圖如圖2(b)所示。

(a) 目標網絡 (b) 有向圖圖2 目標網絡和抽象后的有向圖示例

1.1.2邊權值計算

有向圖的邊權值計算是通過掃描獲取每條有向邊尾節點代表的網絡節點的漏洞信息,調用Metasploit查詢對應漏洞利用程序的評級,對評級進行量化得到漏洞利用程序的評分,選取最低的評分作為邊的權值。

Metasploit是一款常用的滲透測試工具,它集成了眾多的漏洞利用程序。對于每一個漏洞利用程序,Metasploit都基于它對目標系統的潛在影響和可利用性而標記了一個Rank字段。滲透測試人員在使用時可以基于該字段對漏洞利用程序是否易于使用進行判斷,同時也可以基于該字段對漏洞利用程序進行搜索、分類和排序。Metasploit的官方文檔[15]對Rank字段的解釋如表1所示。依據Rank值可以對漏洞利用程序評分,從而將網絡中每一個節點的脆弱性進行量化。

表1 Metasploit漏洞利用程序評級標準

通過對表1漏洞利用程序評級標準的分析可以將7個評級分為3個等級:Excellent Ranking、Great Ranking和Good Ranking為第一等級;Normal Ranking單獨為第二等級;Average Ranking、Low Ranking和Manual Ranking為第三等級。

由于規劃方法是基于最短路徑搜索的方法,在對評級進行量化的過程中,為了便于規劃算法的利用,規定:第一等級評分最低,第三等級評分最高;量化后的評分應保證規劃算法盡量選擇第一等級,所以第二等級的最低評分應該大于第一等級最高評分的2倍。同理,第三等級的最低評分應該大于第二等級最高評分的2倍;此外,為減少規劃路徑經過節點的數量,同一等級內部評分的最高分應當小于最低分的2倍。

通過建立模型實現對漏洞利用程序評級的量化評分。具體的定義及規則如下:

定義1將表1中的Rank值的評分依次設為r1、r2、r3、r4、r5、r6、r7。其中:r1對應Excellent Ranking;r7對應Manual Ranking;其他以此類推。

定義2存在3個集合L1、L2、L3表示3個等級,其中:L1={r1,r2,r3};L2={r4};L3={r5,r6,r7}。

規則1r1

規則2?ri∈Lp,rj∈Lq(p,q=1,2,3且p2ri。

規則3?ri,rj∈Lp(p=1,2,3)則ri

依照以上定義及規則,可以得到下面的不等式組:

(1)

該不等式組存在多組解,每組解均可滿足規劃方法的要求,任取其中一組解,令r1=3,則不等式組的解為:

(2)

所以,依照Metasploit漏洞利用程序評級對應的量化評分如表2所示。

表2 Metasploit漏洞利用程序評級標準量化評分

1.2 滲透測試路徑規劃

1.2.1并行最短路徑搜索算法

并行最短路徑搜索算法通過對Dijkstra算法的并行化實現。Dijkstra算法是圖論中解決最短路徑問題的典型算法,同時適用于有向圖和無向圖的最短路徑搜索。

Dijkstra算法并行化的思路是將有向圖的所有節點平均分到各處理器,每個處理器先求出各自負責節點中距離的最小值,然后相互比較求出全局最小值,最后將最小值進行廣播。

求全局最小值的方法是:基于二分法,每一輪,將處理器從1開始編號,1號處理器和2號處理器比較,3號處理器和4號處理器比較,以此類推,兩個處理器之間較小的值進入下一輪,若剩下單個處理器則直接進入下一輪比較,經過多個輪次,得到全局最小值。以5個處理器為例求最小值,具體流程如圖3所示。每個處理器收到廣播的最小值后,更新自己分配到的節點的距離,同時記錄最短路徑。

圖3 Dijkstra并行算法處理器合作求最小值示例

1.2.2并行算法效率分析和實現

并行算法主要基于消息傳遞接口(Message Passing Interface,MPI)實現。MPI主要用于實現網絡中連接的多臺計算機之間的進程間通信,構建大型分布式并行系統[16]。如算法1所示,設置0號進程負責讀取連接關系圖并進行任務分發,其他進程接收數據并進行最短路徑搜索。

算法1并行Dijkstra

輸入:圖鄰接矩陣a,總結點數n。

輸出:最短路徑。

1. function TaskDistribution(a,n)

2. if Processor==0 then

3. m=n/(ProcessorNumber-1)

4. for i=1 to ProcessorNumber do

5. MPISend(a[(i-1)*m],m)

6. end for

7. else

8. MPIRecv(a,m)

9. FindShortestPath(a,m)

10. end if

11. end function

12. function FindShortestPath(a,m)

13. for i=1 to n do

14. for j=1 to m do

15. if min>dist[j] then min=dist[j]

16. end if

17. end for

18. pn=ProcessorNumber

19. while pn>1 do

20. pn=pn/2

21. if ProcessorRank>pn then

22. MPISend(min)

23. else

24. temp=MPIRecv(min)

25. if min>temp then min=temp

26. end if

27. end if

28. end while

29. MPIBcast(min)

30. for j=1 to m do

31. if (min+a[j])

32. dist[j]=min+a[j]

33. end if

34. end for

35. end for

36. end function

2 實驗驗證與分析

為了驗證本文方法的有效性,基于虛擬化技術搭建了一個測試網絡環境,網絡拓撲如圖4所示。

圖4 測試網絡拓撲

這是一個典型的企業網絡,設置了互聯網、DMZ區、辦公內網和核心內網。防火墻策略是:同一網絡下的主機可以互相訪問;攻擊機可以訪問DMZ區服務器,但不能訪問辦公內網和核心內網;DMZ區服務器可以訪問辦公內網,但不能訪問核心內網;辦公內網的主機可以訪問DMZ區服務器,但不能訪問互聯網;主機2和主機3可以訪問核心內網中的主機4;核心內網主機不能訪問其他網絡。除攻擊機外,各主機編號、存在的漏洞、對應利用程序評級和量化評分如表3所示。其中攻擊機編號為0,防火墻通過軟件實現,非實物節點。

表3 測試網絡主機存在漏洞及利用程序評級

續表3

2.1 連接關系圖生成

依據量化方法對每一個漏洞利用程序進行量化評分,結果如表4所示。

表4 測試網絡主機漏洞利用程序量化評分

依照測試網絡的網絡拓撲,建立連接關系圖,如圖5所示。

圖5 測試網絡連接關系圖

2.2 滲透測試路徑規劃

基于圖5,通過并行Dijkstra算法得到的由攻擊機到網絡中各個節點的滲透測試路徑見表5。利用得到的路徑可以直接結合Metasploit中對應的漏洞利用程序,快速有效地對整個網絡進行滲透測試。

表5 各節點規劃滲透測試路徑

2.3 規劃算法準確性對比

通過查詢美國國家漏洞數據庫[17](National Vulnerability Database,NVD),得到測試網絡中漏洞對應的CVSS評級和評分,見表6。

表6 測試網絡漏洞CVSS評分

由于CVSS的評分為十分制,且分數越高表示漏洞評級越高,所以在進行對比實驗時要將表4中的漏洞利用程序評分標準化,本文采用Min-Max標準化方法,具體的標準化公式為:

(3)

式中:S為標準化的評分;S1為標準化前的評分;Min為評分標準化前的最小值;Max為評分標準化前的最大值。依照式(3)將漏洞利用程序評分標準化的結果見表7。漏洞及漏洞利用程序評級對比見表8。

表7 漏洞利用程序標準化評分

續表7

通過對比發現,漏洞CVE-2014-0476、CVE-2017-0199、CVE-2016-0189、CVE-2016-4997、CVE-2014-4114、CVE-2017-7494、CVE-2008-4250的CVSS評分與漏洞利用程序標準化評分較為接近。

對于漏洞CVE-2017-9805,CVSS的評分為6.8,漏洞利用程序標準化評分為10,CVSS評分遠小于漏洞利用程序標準化評分,該漏洞是針對Struts2的遠程代碼執行漏洞,能夠直接獲取目標主機的控制權限,因而該漏洞在滲透測試中的優先級比較高。

對于漏洞CVE-2013-1300,CVSS的評分為7.2,漏洞利用程序標準化評分為1.3,CVSS評分遠大于漏洞利用程序標準化評分,通過表8同樣可以發現這個結果。該漏洞是針對部分Windows系統的提權漏洞,該漏洞的觸發需要成功獲取主機的部分權限,因而在模擬攻擊者進行滲透測試時,該漏洞的優先級并不高。

實驗結果表明,基于漏洞利用程序的量化評分在進行滲透測試時更加符合實際需求,具有更高的準確性。

2.4 規劃算法效率對比

文獻[18]中提出了基于PANAG模型的攻擊路徑預測方法,該方法所要解決的問題與本文相似。

為了驗證規劃算法能夠快速實現滲透測試路徑規劃,設計實驗比較本文方法和文獻[18]方法的運算速度。實驗思路是在測試網絡中隨機增加主機節點和漏洞,并任意修改網絡拓撲,比較兩種方法生成滲透路徑的速度,其中,本文方法并行處理器個數為4。運行算法的實驗環境是一臺臺式機,處理器為四核四線程的Intel i5-6500,內存大小為16 GB,硬盤大小為1 TB,操作系統為Windows 7 SP3旗艦版,MPI程序版本為Microsoft MPI 10.1.12498.18。

經過測試,兩種算法計算不同規模網絡所耗費的時間繪制成如圖6所示折線圖。可以看出,隨著節點數的增加,本文方法的計算時間明顯少于文獻[18]方法的計算時間。

實驗結果說明,使用Dijkstra并行算法可以更加快速地完成滲透測試路徑規劃,極大地提高了滲透測試的效率。

圖6 攻擊路徑生成時間折線圖

3 結 語

滲透測試是評估網絡安全性的重要手段之一。為了解決大規模網絡滲透測試路徑規劃速度慢、執行效率低的問題,本文提出一種并行條件下基于漏洞利用程序評級的路徑規劃算法,該算法通過對漏洞利用程序的量化評分和Dijkstra算法的并行化,實現了路徑的快速規劃和滲透測試的高效執行。實驗結果表明,該規劃算法能夠快速規劃出準確有效的滲透測試路徑,提高滲透測試的效率。

本文算法主要應用于完全條件下大規模網絡的滲透測試攻擊規劃。下一步研究的主要方向為非完全條件下大規模網絡的滲透測試路徑規劃。

猜你喜歡
程序規劃利用
利用min{a,b}的積分表示解決一類絕對值不等式
中等數學(2022年2期)2022-06-05 07:10:50
利用一半進行移多補少
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
利用數的分解來思考
Roommate is necessary when far away from home
規劃引領把握未來
“程序猿”的生活什么樣
快遞業十三五規劃發布
商周刊(2017年5期)2017-08-22 03:35:26
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
多管齊下落實規劃
中國衛生(2016年2期)2016-11-12 13:22:16
主站蜘蛛池模板: 永久免费AⅤ无码网站在线观看| 毛片基地视频| 97国产在线播放| 尤物特级无码毛片免费| 亚洲人成色在线观看| 国产精品自拍露脸视频| 精品剧情v国产在线观看| 国产在线第二页| 少妇高潮惨叫久久久久久| 毛片a级毛片免费观看免下载| 国产男女免费视频| 三级毛片在线播放| 国产欧美视频综合二区| 国产午夜无码专区喷水| 伊人久久精品无码麻豆精品 | 久草视频精品| 欧美三級片黃色三級片黃色1| 久草中文网| 久久一日本道色综合久久| 91久久国产综合精品女同我| 亚洲欧美精品在线| 国产成人AV男人的天堂| 国产一区二区色淫影院| 亚洲人成高清| 国产乱子伦无码精品小说| 99re热精品视频国产免费| 97亚洲色综久久精品| 国产麻豆永久视频| av一区二区三区高清久久| 国产色偷丝袜婷婷无码麻豆制服| 天天躁日日躁狠狠躁中文字幕| 久久精品这里只有国产中文精品 | 丁香婷婷激情综合激情| 麻豆精品在线| 国产欧美在线观看一区| 国产免费久久精品99re丫丫一| 国产69精品久久久久妇女| 国产成人综合日韩精品无码首页 | 无码电影在线观看| 国产成人综合网| 亚洲精品国产自在现线最新| 999精品视频在线| 亚洲成人黄色在线| 国产主播喷水| 欧美日韩精品在线播放| 亚洲高清资源| 国产精品福利尤物youwu| 国产午夜不卡| 男女性色大片免费网站| 久久96热在精品国产高清| 国产激情无码一区二区免费| 国产高清精品在线91| 亚洲国产日韩欧美在线| 91青草视频| 九色在线观看视频| 亚洲 日韩 激情 无码 中出| 4虎影视国产在线观看精品| 精品少妇三级亚洲| 国产一级在线观看www色| 免费中文字幕一级毛片| 呦女精品网站| 中文字幕首页系列人妻| 色婷婷成人网| 国产精品入口麻豆| 青青青视频91在线 | 毛片网站免费在线观看| 欧美a在线| 亚洲资源在线视频| 亚洲国产成人自拍| 成人伊人色一区二区三区| 免费a级毛片18以上观看精品| 97久久精品人人| 中文毛片无遮挡播放免费| 午夜性刺激在线观看免费| 福利在线免费视频| 亚洲中文精品久久久久久不卡| 特级毛片免费视频| aⅴ免费在线观看| 国产草草影院18成年视频| 欧美日本不卡| 国产精品亚洲专区一区| 一区二区三区国产精品视频|