System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實現(xiàn)步驟摘要】
本專利技術(shù)涉及網(wǎng)絡(luò)安全,具體涉及一種基于深度強化學(xué)習(xí)的自動化滲透測試方法、系統(tǒng)、設(shè)備及介質(zhì)。
技術(shù)介紹
1、計算機技術(shù)和互聯(lián)網(wǎng)技術(shù)持續(xù)高速發(fā)展為人們提供了諸多便利,同時也產(chǎn)生了許多網(wǎng)絡(luò)安全問題。一方面,網(wǎng)絡(luò)應(yīng)用和操作系統(tǒng)日趨復(fù)雜,在設(shè)計或配置時產(chǎn)生的漏洞層出不窮。另一方面,互聯(lián)程度與傳輸速度的提升給網(wǎng)絡(luò)攻擊提供了更豐富的攻擊入口和利用條件,導(dǎo)致網(wǎng)絡(luò)攻擊數(shù)量大幅上升。并且網(wǎng)絡(luò)攻擊行為不再是一個個孤立的事件,而是呈現(xiàn)出多階段的特性。攻擊者往往通過隱蔽的手段潛伏進目標網(wǎng)絡(luò),利用網(wǎng)絡(luò)中的業(yè)務(wù)流程和漏洞之間的因果關(guān)系,以不同的設(shè)備作為跳板,最終達成信息竊取和設(shè)備破環(huán)等目標。面對此類復(fù)雜隱蔽、更加專業(yè)的有組織的網(wǎng)絡(luò)攻擊,以及持續(xù)更新的高級威脅,安全人員往往使用滲透測試的方法提升網(wǎng)絡(luò)安全能力。滲透測試是一種主動的安全評估方法,它模擬惡意黑客的攻擊行為,以評估計算機網(wǎng)絡(luò)系統(tǒng)的安全性。滲透測試對系統(tǒng)的弱點、技術(shù)缺陷或漏洞進行深入分析,目的是從一個潛在攻擊者的角度出發(fā),發(fā)現(xiàn)并利用這些漏洞,以驗證系統(tǒng)的安全性,處理和規(guī)避潛在的安全漏洞和風(fēng)險。
2、滲透測試需要大量的專業(yè)知識,較難形式化。因此現(xiàn)有的滲透測試通常是由專業(yè)的測試人員根據(jù)一定的滲透測試策略手工執(zhí)行的。具體的測試步驟包括:1、確定滲透測試的目標與范圍:和測試組織者確定目標系統(tǒng)的ip地址范圍、域名、應(yīng)用程序、系統(tǒng)與服務(wù)等;2、信息收集與威脅建模:使用公開的信息源和掃描工具對目標信息進行收集,對收集到的信息進行分析,確定攻擊者的興趣點,創(chuàng)建攻擊者模型,尋找攻擊路徑;3、漏洞分析:使用測
3、上述流程構(gòu)成了一次完整的滲透測試。滲透測試是一項費力耗時的復(fù)雜任務(wù),高度依賴于操作人員的技能,測試的準確性和可靠性無法保證。操作的過程中所有策略的配置、執(zhí)行、監(jiān)控和維護都需要人工進行,滲透測試的效率較低,無法滿足攻擊實效性要求。此外,現(xiàn)在的網(wǎng)絡(luò)規(guī)模日益增長,網(wǎng)絡(luò)拓撲結(jié)構(gòu)越來越復(fù)雜。在這種情況下,對所有的滲透路徑進行枚舉并一一測試需要耗費大量的資源和時間,僅通過人力或一些簡單的自動化測試腳本將很難完成。
4、基于上述的缺陷,目前行業(yè)內(nèi)亟需一種能夠智能生成滲透測試策略的方法,快速準確地對信息系統(tǒng)進行自動化滲透測試。本專利技術(shù)提出了一種基于深度強化學(xué)習(xí)的自動化滲透測試方法及系統(tǒng)。
技術(shù)實現(xiàn)思路
1、本專利技術(shù)的目的是提供一種基于深度強化學(xué)習(xí)的自動化滲透測試方法、系統(tǒng)、設(shè)備及介質(zhì),能夠根據(jù)系統(tǒng)的脆弱性智能生成滲透測試方案,實現(xiàn)自動化的滲透測試,大幅提高網(wǎng)絡(luò)安全評估的精度和效率。
2、為實現(xiàn)上述目的,本專利技術(shù)提供的技術(shù)方案是:
3、本申請的第一方面提供了一種基于深度強化學(xué)習(xí)的自動化滲透測試方法,包括以下步驟:
4、確定滲透測試的網(wǎng)絡(luò)、操作系統(tǒng)、應(yīng)用信息范圍,使用漏洞掃描和基線核查工具對確定范圍內(nèi)的所有設(shè)備進行漏洞掃描和基線核查,獲取被測系統(tǒng)的脆弱性信息;
5、根據(jù)獲取的脆弱性信息生成攻擊圖,根據(jù)脆弱性信息確定漏洞利用概率,對攻擊圖的邊進行賦值,得到貝葉斯攻擊圖;
6、在生成的貝葉斯攻擊圖上設(shè)計攻擊者目標節(jié)點獎勵值,模擬攻擊者的可能攻擊行為,使用深度強化學(xué)習(xí)方法計算攻擊者的攻擊策略;
7、根據(jù)攻擊策略在攻擊圖中模擬攻擊者的潛在攻擊行為,生成攻擊者最可能采用的滲透攻擊路徑;
8、在滲透測試試驗環(huán)境內(nèi),按照攻擊者最可能采用的滲透攻擊路徑對測試對象進行自動化滲透測試,生成滲透測試報告。
9、為優(yōu)化上述技術(shù)方案,采取的具體措施還包括:
10、建立含形式化的網(wǎng)絡(luò)安全元素的攻擊網(wǎng)絡(luò)模型,所述的網(wǎng)絡(luò)安全要素包括主機信息、網(wǎng)絡(luò)拓撲和網(wǎng)絡(luò)漏洞信息;所述的主機信息用三元組<host,services,vuls>表示,其中host是主機的唯一標識;services是主機上運行的軟件和服務(wù)信息;vul指該主機的脆弱性信息;所述的網(wǎng)絡(luò)拓撲用無向圖g<n,e>表示,其中n表示網(wǎng)絡(luò)中所有物理主機的集合;e表示主機之間存在的物理連接,每一條邊都由一個四元組<start,destination,protocol,port>組成,start、destination、protocol、port分別表示連接的源主機、目的主機、協(xié)議和端口號;所述的網(wǎng)絡(luò)漏洞信息用五元組<id,ip,probability,complex,impact>來表示,其中id是漏洞庫中該漏洞的唯一對應(yīng)編號;ip是存在該漏洞的主機地址;probability是漏洞被攻擊者利用的概率,取值范圍為(0,1);complex是漏洞的復(fù)雜程度,取值范圍為(0,1);impact是漏洞被利用后造成的危害嚴重程度,使用cvss提供的漏洞分數(shù)計算公式來進行計算,分數(shù)范圍為(0,10),得分越高漏洞危害性越大;根據(jù)形式化的網(wǎng)絡(luò)安全要素可以生成相應(yīng)的貝葉斯攻擊圖,用四元組bag(n)=<s,a,e,pa>表示,其s是狀態(tài)節(jié)點;a是可供攻擊者使用的攻擊動作集合;e是有向邊;pa是非零概率值,表示攻擊動作a成功的概率。
11、對獲得的貝葉斯攻擊圖進行如下處理:刪除攻擊圖中的漏洞信息,只保留狀態(tài)節(jié)點和轉(zhuǎn)移方向;根據(jù)單調(diào)性原則對安全狀態(tài)進行刪減,使攻擊者在已獲取過安全狀態(tài)后不會再次獲取安全狀態(tài),以避免出現(xiàn)重復(fù)的攻擊路徑;通過有向“超邊”使攻擊形式化,關(guān)注攻擊動作所鏈接的安全狀態(tài)。
12、將滲透測試過程轉(zhuǎn)化為馬爾可夫決策過程,將攻擊者對應(yīng)于智能體,將攻擊策略的訓(xùn)練抽象為智能體在與環(huán)境的交互中學(xué)習(xí)改進自身策略的問題,攻擊策略對應(yīng)于智能體在不同狀態(tài)下選擇下一步行動的概率分布;
13、所述的馬爾可夫決策mdp由四元組<s,a,p,r>構(gòu)成,其中s是狀態(tài)空間,由貝葉斯攻擊圖中不同時刻的攻擊圖構(gòu)成;a是動作空間,代表滲透測試人員利用bag中的脆弱性激活目標節(jié)點;p是轉(zhuǎn)移概率,代表采用貝葉斯攻擊圖中不同邊的概率;r是獎勵,在智能體激活目標節(jié)點后獲得獎勵,且為了防止智能體無限重復(fù)同一動作,每行動一次智能體將會獲得一個值為負的獎勵作為采取行動的代價。
14、進一步地,攻擊者的攻擊策略使用深度強化學(xué)習(xí)方法來訓(xùn)練,根據(jù)時序差分函數(shù)定義攻擊者的最優(yōu)動作價值函數(shù),以此作為優(yōu)化目標:
15、
16、其中,q*(st,at)表示擊者的最優(yōu)動作價值函數(shù);表示采取攻擊動作后,下一個狀態(tài)獲得獎勵的期望值;rt表示t時刻攻擊者采取行動后所獲得的獎勵;γ表示學(xué)習(xí)的折扣率,對于越久遠的未來折扣本文檔來自技高網(wǎng)...
【技術(shù)保護點】
1.一種基于深度強化學(xué)習(xí)的自動化滲透測試方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的基于深度強化學(xué)習(xí)的自動化滲透測試方法,其特征在于:建立含形式化的網(wǎng)絡(luò)安全元素的攻擊網(wǎng)絡(luò)模型,所述的網(wǎng)絡(luò)安全要素包括主機信息、網(wǎng)絡(luò)拓撲和網(wǎng)絡(luò)漏洞信息;所述的主機信息用三元組<Host,Services,Vuls>表示,其中Host是主機的唯一標識;Services是主機上運行的軟件和服務(wù)信息;Vul指該主機的脆弱性信息;所述的網(wǎng)絡(luò)拓撲用無向圖G<N,E>表示,其中N表示網(wǎng)絡(luò)中所有物理主機的集合;E表示主機之間存在的物理連接,每一條邊都由一個四元組<Start,Destination,Protocol,Port>組成,Start、Destination、Protocol、Port分別表示連接的源主機、目的主機、協(xié)議和端口號;所述的網(wǎng)絡(luò)漏洞信息用五元組<ID,IP,Probability,Complex,Impact>來表示,其中ID是漏洞庫中該漏洞的唯一對應(yīng)編號;IP是存在該漏洞的主機地址;Probability是漏洞被攻擊者利
3.根據(jù)權(quán)利要求1所述的基于深度強化學(xué)習(xí)的自動化滲透測試方法,其特征在于:對獲得的貝葉斯攻擊圖進行如下處理:刪除攻擊圖中的漏洞信息,只保留狀態(tài)節(jié)點和轉(zhuǎn)移方向;根據(jù)單調(diào)性原則對安全狀態(tài)進行刪減,使攻擊者在已獲取過安全狀態(tài)后不會再次獲取安全狀態(tài),以避免出現(xiàn)重復(fù)的攻擊路徑;通過有向“超邊”使攻擊形式化,關(guān)注攻擊動作所鏈接的安全狀態(tài)。
4.根據(jù)權(quán)利要求1所述的基于深度強化學(xué)習(xí)的自動化滲透測試方法,其特征在于:將滲透測試過程轉(zhuǎn)化為馬爾可夫決策過程,將攻擊者對應(yīng)于智能體,將攻擊策略的訓(xùn)練抽象為智能體在與環(huán)境的交互中學(xué)習(xí)改進自身策略的問題,攻擊策略對應(yīng)于智能體在不同狀態(tài)下選擇下一步行動的概率分布;
5.根據(jù)權(quán)利要求4所述的基于深度強化學(xué)習(xí)的自動化滲透測試方法,其特征在于:攻擊者的攻擊策略使用深度強化學(xué)習(xí)方法來訓(xùn)練,根據(jù)時序差分函數(shù)定義攻擊者的最優(yōu)動作價值函數(shù),以此作為優(yōu)化目標:
6.根據(jù)權(quán)利要求5所述的基于深度強化學(xué)習(xí)的自動化滲透測試方法,其特征在于:攻擊策略訓(xùn)練采用深度神經(jīng)網(wǎng)絡(luò)Q(st,at;θ),其中,θ為深度神經(jīng)網(wǎng)絡(luò)的參數(shù);所述的深度神經(jīng)網(wǎng)絡(luò)Q(st,at;θ)由輸入層、隱藏層、softmax層和輸出層構(gòu)成,輸入層輸入智能體當(dāng)前觀察到的所有狀態(tài),包括所有的節(jié)點狀態(tài)和已經(jīng)成功的攻擊動作,隱藏層由兩個全連接層組成,激活函數(shù)為ReLU;softamax層在輸出層之前,負責(zé)將結(jié)果轉(zhuǎn)化為一組概率分布;輸出層包括所有的動作和一個null節(jié)點,null節(jié)點表示在本回合中攻擊者不采取任何行動,目的時為了防止攻擊者在沒有合適的攻擊目標時隨意執(zhí)行動作。
7.根據(jù)權(quán)利要求6所述的基于深度強化學(xué)習(xí)的自動化滲透測試方法,其特征在于:所述的使用深度強化學(xué)習(xí)方法計算攻擊者的攻擊策略,過程如下:
8.一種基于深度強化學(xué)習(xí)的自動化滲透測試系統(tǒng),其特征在于,包括:
9.一種電子設(shè)備,其特征在于,包括:存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執(zhí)行計算機程序時,實現(xiàn)如權(quán)利要求1-7任一項所述的基于深度強化學(xué)習(xí)的自動化滲透測試方法。
10.一種計算機可讀存儲介質(zhì),存儲有計算機程序,所述計算機程序使計算機執(zhí)行如權(quán)利要求1-7任一項所述的基于深度強化學(xué)習(xí)的自動化滲透測試方法。
...【技術(shù)特征摘要】
1.一種基于深度強化學(xué)習(xí)的自動化滲透測試方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的基于深度強化學(xué)習(xí)的自動化滲透測試方法,其特征在于:建立含形式化的網(wǎng)絡(luò)安全元素的攻擊網(wǎng)絡(luò)模型,所述的網(wǎng)絡(luò)安全要素包括主機信息、網(wǎng)絡(luò)拓撲和網(wǎng)絡(luò)漏洞信息;所述的主機信息用三元組<host,services,vuls>表示,其中host是主機的唯一標識;services是主機上運行的軟件和服務(wù)信息;vul指該主機的脆弱性信息;所述的網(wǎng)絡(luò)拓撲用無向圖g<n,e>表示,其中n表示網(wǎng)絡(luò)中所有物理主機的集合;e表示主機之間存在的物理連接,每一條邊都由一個四元組<start,destination,protocol,port>組成,start、destination、protocol、port分別表示連接的源主機、目的主機、協(xié)議和端口號;所述的網(wǎng)絡(luò)漏洞信息用五元組<id,ip,probability,complex,impact>來表示,其中id是漏洞庫中該漏洞的唯一對應(yīng)編號;ip是存在該漏洞的主機地址;probability是漏洞被攻擊者利用的概率,取值范圍為(0,1);complex是漏洞的復(fù)雜程度,取值范圍為(0,1);impact是漏洞被利用后造成的危害嚴重程度,使用cvss提供的漏洞分數(shù)計算公式來進行計算,分數(shù)范圍為(0,10),得分越高漏洞危害性越大;根據(jù)形式化的網(wǎng)絡(luò)安全要素可以生成相應(yīng)的貝葉斯攻擊圖,用四元組bag(n)=<s,a,e,pa>表示,其s是狀態(tài)節(jié)點;a是可供攻擊者使用的攻擊動作集合;e是有向邊;pa是非零概率值,表示攻擊動作a成功的概率。
3.根據(jù)權(quán)利要求1所述的基于深度強化學(xué)習(xí)的自動化滲透測試方法,其特征在于:對獲得的貝葉斯攻擊圖進行如下處理:刪除攻擊圖中的漏洞信息,只保留狀態(tài)節(jié)點和轉(zhuǎn)移方向;根據(jù)單調(diào)性原則對安全狀態(tài)進行刪減,使攻擊者在已獲取過安全狀態(tài)后不會再次獲取安全狀態(tài),以避免出現(xiàn)重復(fù)的攻...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:張元天,薛金輝,徐超,王軍,
申請(專利權(quán))人:中電信數(shù)智科技有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。