System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術屬于計算機安全檢測,具體涉及一種基于狀態反饋的網絡滲透測試方法和系統。
技術介紹
1、在我國邁入“網絡安全新時代”的同時,也面臨了更加嚴峻的安全風險。隨著互聯網技術發展,全球網絡安全事件頻發,數據泄露、業務中斷、工廠停工等時有發生,網絡安全形勢依然嚴峻,甚至愈加錯綜復雜。
2、安全源自未雨綢繆,滲透測試技術作為主動探測網絡漏洞、實現防范網絡攻擊的重要手段,可及時發現目標網絡系統的脆弱性并針對性修復加固。當前滲透測試主要依靠人工,對測試人員的技術要求很高且花銷巨大。已有滲透測試方法實現技術路線有兩種。一是采用工作流引擎技術進行自動化過程的串聯。這種方式主要通過工作流引擎設置滲透測試的任務模板,面向測試環境設計針對性用例,以此驅動自動化滲透測試全過程按照預設模板進行。這種測試方式針對不同類型的測試目標需要設計大量的測試用例。二是采用固定化流程和特征匹配的方式進行自動化滲透測試。這種方式主要是通過固化測試流程和定義測試動作,將測試過程中回傳的數據與預先設定的測試腳本庫進行匹配,并執行匹配成功的對應腳本,如沒有對應腳本,則進入下一個環節,直至測試流程全部結束。這種技術測試流程已預先固化,測試適用性受限。
技術實現思路
1、為了解決現有測試方式針對不同類型的測試目標需要設計大量的測試用例及現有測試流程已預先固化,測試適用性受限的問題,本專利技術提供了一種基于狀態反饋的網絡滲透測試方法。
2、為了實現上述目的,本專利技術提供如下技術方案:
3、一種
4、從搜索引擎和公開資料中收集漏洞信息,并構建漏洞數據庫;
5、根據漏洞數據庫進行漏洞屬性識別,基于漏洞屬性識別結果匹配滲透測試條件;
6、通過大語言模型llm將滲透測試條件與預設的用于目標環境的滲透測試條件模板進行匹配,如果匹配成功,判斷目標環境滿足漏洞利用條件,則選擇滿足該漏洞的測試條件并啟動相應的滲透測試流程;輸出漏洞屬性與測試條件的匹配結果,為滲透測試生成具體的測試計劃;利用狀態機根據生成的測試計劃執行滲透測試,并通過反饋機制判斷測試的效果和狀態轉換的準確性;
7、根據測試反饋,進一步優化匹配過程中的規則或條件模板。
8、優選地,所述從搜索引擎和公開資料中收集漏洞信息,并構建漏洞數據庫,具體為:
9、根據搜索引擎與漏洞知識庫本體之間的對應關系進行知識提取,提取的知識以rdf形式存儲在圖數據庫中;
10、借助大語言模型llm在自然語言處理nlp子任務之一的命名實體識別ner任務上的表現,從漏洞描述這一非結構化數據中提取脆弱點描述的命名實體,并將命名實體與圖數據庫中的知識提取部分進行內容對齊,最終形成漏洞知識庫。
11、優選地,所述根據漏洞數據庫進行漏洞屬性識別,基于漏洞屬性識別結果匹配滲透測試條件,具體為:
12、針對每個漏洞的具體信息,執行漏洞屬性識別,分析出漏洞的關鍵特征;將識別出的漏洞屬性進行標記和分類,根據分類結果匹配滲透測試條件。
13、優選地,所述漏洞的關鍵特征包括漏洞類型、利用條件、漏洞所影響的系統組件或服務、漏洞利用的復雜性以及可能導致的后果;匹配是將識別出的漏洞屬性與滲透測試條件進行對比,以確定是否滿足執行滲透測試的要求。
14、優選地,還包括在滲透測試系統中建立不同條件的測試模板,每個模板與特定漏洞類型或屬性匹配。
15、優選地,所述利用狀態機根據生成的測試計劃執行滲透測試,并通過反饋機制判斷測試的效果和狀態轉換的準確性,具體為:
16、通過大語言模型判斷當前目標場景的狀態,根據狀態進行滲透路徑規劃,將滲透測試任務劃分為多個子任務,并為系統設置多個子狀態;
17、利用狀態機將每一個滲透測試完成后的場景作為一個狀態,每一次執行滲透測試步驟就是一次狀態之間的轉換;每一狀態轉換以后來判斷當前轉換是否正確,如果轉換到了一個不正確的狀態,則通過反饋機制進行狀態的回退,并且決策一個更恰當的步驟來引導當前狀態轉換到正確的狀態。
18、優選地,所述利用狀態機將每一個滲透測試完成后的場景作為一個狀態,每一次執行滲透測試步驟就是一次狀態之間的轉換;每一狀態轉換以后來判斷當前轉換是否正確,如果轉換到了一個不正確的狀態,則通過反饋機制進行狀態的回退,并且決策一個更恰當的步驟來引導當前狀態轉換到正確的狀態,具體包括:
19、構建滲透測試任務的狀態機:依據自動機原理,將滲透測試任務拆解為若干子任務,并構建狀態機;每個子任務為狀態機中的一個系統狀態,根據滲透測試的需求對這些狀態進行定義與組織;
20、系統狀態基于大語言模型llm生成,llm將滲透測試任務理解為多個子任務,構建多個系統狀態;
21、構建狀態轉換事件與函數:定義系統狀態間的轉換,通過一系列操作構建狀態轉換事件;每個轉換事件是從一種狀態變換到另一種狀態的觸發因素,表示系統進行的操作或執行的命令;
22、通過能力決策和意圖匹配為每個子任務篩選合適的操作,定義并構造狀態轉換函數f:s×a→s,即:當系統處于狀態si并執行動作a時,系統轉換為狀態sj;
23、系統將執行的動作集合{op_1,op_2,…,op_n}反饋給llm,llm根據結果判斷系統狀態的轉換方式,并調整后續操作;
24、構建與模擬并滲透路徑:依據狀態機的狀態轉換,構建從初始狀態到終止狀態的完整動作集合,形成滲透路徑;
25、在滲透路徑構建的基礎上,模擬不同路徑的安全防護強度、滲透成功概率和預期效果,選擇風險高且可行性強的路徑;
26、根據不同的滲透路徑,構建針對性的測試策略;每一步操作包括攻擊手法、工具、腳本及觸發條件;
27、動作集合的執行與結果反饋:利用生成的動作集合自動執行滲透測試路徑中的操作,并將系統響應結果反饋給llm;
28、llm對系統的響應進行分析,更新當前狀態并調整后續路徑和操作,以達到最優的滲透測試效果。
29、優選地,當目標環境存在多個漏洞時,針對多個漏洞構造漏洞利用狀態機進行脆弱點發現和風險評估,具體為:
30、針對多個脆弱場景描述,滲透測試利用狀態機進一步為存在多個脆弱點的場景構建一個復合利用狀態機esm;假設有兩個esm來自兩個漏洞,其中esm1=<s1,a1,f1,s01,se1>,esm2=<s2,a2,f2,s02,se2>;對于每個狀態轉換fij2:(si,a)→sj在esm2中,如果si和sj在s1中是新的,則將它們添加到s1中;否則,將a加到a1;最后,在f1中增加一個表項fij1:(si,a)→sj,以連接esm1中的si和sj,通過狀態機的多層次轉移模擬,對目標系統的深層次脆弱點進行挖掘;
31、其中,s1表示esm1中的狀態集合,s2表示esm2中的狀態集合,a1表示esm1中的動作集合本文檔來自技高網...
【技術保護點】
1.一種基于狀態反饋的網絡滲透測試方法,其特征在于,包括:
2.根據權利要求1所述的基于狀態反饋的網絡滲透測試方法,其特征在于,所述從搜索引擎和公開資料中收集漏洞信息,并構建漏洞數據庫,具體為:
3.根據權利要求2所述的基于狀態反饋的網絡滲透測試方法,其特征在于,所述根據漏洞數據庫進行漏洞屬性識別,基于漏洞屬性識別結果匹配滲透測試條件,具體為:
4.根據權利要求3所述的基于狀態反饋的網絡滲透測試方法,其特征在于,所述漏洞的關鍵特征包括漏洞類型、利用條件、漏洞所影響的系統組件或服務、漏洞利用的復雜性以及可能導致的后果;匹配是將識別出的漏洞屬性與滲透測試條件進行對比,以確定是否滿足執行滲透測試的要求。
5.根據權利要求1所述的基于狀態反饋的網絡滲透測試方法,其特征在于,還包括在滲透測試系統中建立不同條件的測試模板,每個模板與特定漏洞類型或屬性匹配。
6.根據權利要求3所述的基于狀態反饋的網絡滲透測試方法,其特征在于,所述利用狀態機根據生成的測試計劃執行滲透測試,并通過反饋機制判斷測試的效果和狀態轉換的準確性,具體為:
...【技術特征摘要】
1.一種基于狀態反饋的網絡滲透測試方法,其特征在于,包括:
2.根據權利要求1所述的基于狀態反饋的網絡滲透測試方法,其特征在于,所述從搜索引擎和公開資料中收集漏洞信息,并構建漏洞數據庫,具體為:
3.根據權利要求2所述的基于狀態反饋的網絡滲透測試方法,其特征在于,所述根據漏洞數據庫進行漏洞屬性識別,基于漏洞屬性識別結果匹配滲透測試條件,具體為:
4.根據權利要求3所述的基于狀態反饋的網絡滲透測試方法,其特征在于,所述漏洞的關鍵特征包括漏洞類型、利用條件、漏洞所影響的系統組件或服務、漏洞利用的復雜性以及可能導致的后果;匹配是將識別出的漏洞屬性與滲透測試條件進行對比,以確定是否滿足執行滲透測試的要求。
5.根據權利要求1所述的基于狀態反饋的網絡滲透測試方法,其特征在于,還包括在滲透測試系統中建立不同條件的測試模板,每個模板與特定漏洞類型或屬性匹配。
6.根據權利要求3所述的基于狀態反饋的網絡滲透測試...
【專利技術屬性】
技術研發人員:閆琦文,付才,楊婷婷,鄶祎純,馬銘芮,嚴灝,王子豪,李文科,張益翔,陳嘉赫,韓蘭勝,
申請(專利權)人:華中科技大學,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。