国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Actor-Critic框架的滲透測試路徑技術(shù)研究

2022-10-30 03:03陸燕楊秋芬
科技資訊 2022年21期
關(guān)鍵詞:分層算法測試

陸燕 楊秋芬

(湖南開放大學(xué) 湖南長沙 410004)

滲透測試是一種主要依靠人工操作的網(wǎng)絡(luò)安全測試和評(píng)估方法,自動(dòng)滲透測試可以通過對(duì)目標(biāo)網(wǎng)絡(luò)和主機(jī)的自動(dòng)分析來檢測目標(biāo)網(wǎng)絡(luò)和主機(jī)的潛在漏洞,并調(diào)用攻擊負(fù)載來檢查漏洞,消除隱患,提高系統(tǒng)安全性。

分層強(qiáng)化訓(xùn)練是一種將復(fù)雜的強(qiáng)化訓(xùn)練問題分解為一些易于求解的子問題,并通過相應(yīng)地求解這些子問題最終解決初始強(qiáng)化學(xué)問題的方法。這項(xiàng)工作將分層強(qiáng)化學(xué)習(xí)與透明度測試相結(jié)合,將透明度測試過程建模為半弧的決策模型,訓(xùn)練代理在模擬網(wǎng)絡(luò)環(huán)境中發(fā)現(xiàn)透明度測試的路徑,并提出了一種基于Actor-Critic 框架改進(jìn)的自動(dòng)分層記憶AHM-DQN 算法(Automatic Hierarchical Memory Deep Q Networks,AHM-DQN)。采用AHM-DQN 算法自動(dòng)尋找滲透測試路徑,解決了滲透測試主要依靠人工進(jìn)行的問題,節(jié)省了時(shí)間和人力的成本,具有一定的研究和實(shí)際意義。

1 分層強(qiáng)化學(xué)習(xí)和滲透測試國內(nèi)外研究現(xiàn)狀

1.1 分層強(qiáng)化學(xué)習(xí)的國內(nèi)外研究現(xiàn)狀分析

分層強(qiáng)化訓(xùn)練算法是強(qiáng)化訓(xùn)練的一個(gè)重要分支,在強(qiáng)化訓(xùn)練面臨復(fù)雜任務(wù)和多維災(zāi)難時(shí)非常有效。然而,如果一個(gè)Agent 的范圍很復(fù)雜,它就無法取得好的效果,這就是為什么強(qiáng)化訓(xùn)練的發(fā)展再次遇到瓶頸的原因。國內(nèi)外許多研究人員提出了多種層次強(qiáng)化學(xué)習(xí)算法,主要從兩個(gè)方面進(jìn)行描述:第一,層次強(qiáng)化學(xué)習(xí)的經(jīng)典算法主要包括基于選項(xiàng)Option 的分層強(qiáng)化學(xué)習(xí)、基于MAXQ 值函數(shù)分解的分層強(qiáng)分化學(xué)習(xí);第二,最新的分層強(qiáng)化學(xué)習(xí)算法主要包括無監(jiān)督層方法、子策略分層方法、自動(dòng)分層方法和多層結(jié)構(gòu)分層方法。

1.1.1 經(jīng)典分層強(qiáng)化學(xué)習(xí)算法

SUTTON R S 等人[1]提出,SMDP 原則上是一種固定選項(xiàng)MDP。選項(xiàng)是時(shí)間序列的一個(gè)有意義的決策過程,也可以理解為在一定時(shí)間段內(nèi)發(fā)生的行動(dòng)。BACON P L 等人[2]將此選項(xiàng)與Actor-Critic 相結(jié)合,并提出了Option-Critic 框架;PARR R 等人[3]提出了一種分層MDP策略,稱為HAMs分層抽象機(jī),它通過限制應(yīng)用的策略類別來簡化復(fù)雜的MDP;DIETTERICH T G[4]提出了一種新的分層強(qiáng)化學(xué)習(xí)方法,該方法將目標(biāo)MDP 分解為更小的MDP 值函數(shù)組合。雖然這3 種方法相對(duì)獨(dú)立,但它們是相同的觀點(diǎn),為SMDP提供了理論基礎(chǔ)。經(jīng)典分層強(qiáng)化學(xué)習(xí)算法匯總?cè)绫?所示。

表1 經(jīng)典分層強(qiáng)化學(xué)習(xí)算法匯總

1.1.2 最新分層強(qiáng)化學(xué)習(xí)算法

ANDREAS J 等人[5]提出了基于策略草圖的多任務(wù)深度強(qiáng)化框架的建立,并建立了將每個(gè)子任務(wù)與模塊化子策略相結(jié)合的模型。子策略培訓(xùn)采用AC方法,通過約束子策略的參數(shù),最大限度地發(fā)揮整體任務(wù)特定策略的優(yōu)勢;RAFATI J 等人[6]提出了一種新的無模型子目標(biāo)檢測的分層增強(qiáng)方法,使用額外的無監(jiān)督學(xué)習(xí)來創(chuàng)建符合Agent 最近軌跡的適當(dāng)子目標(biāo)。Levy 提出了一個(gè)三級(jí)遞階強(qiáng)化學(xué)習(xí)框架,即層次角色批評(píng)HAC。在這個(gè)層次結(jié)構(gòu)框架中,在常見的多層層次上克服了Agent的穩(wěn)定性問題,同時(shí)它也是第一個(gè)成功學(xué)習(xí)三層層次結(jié)構(gòu)與任務(wù)的連續(xù)狀態(tài)和操作空間并行的框架;OpenAI 實(shí)驗(yàn)室的Frans 提出了端到端算法MLSH,該算法實(shí)現(xiàn)了自動(dòng)分層結(jié)構(gòu),無需太多手動(dòng)配置即可與環(huán)境通信,并且能夠快速學(xué)習(xí)未知任務(wù)的子策略。最新的分層強(qiáng)化算法如表2所示。

表2 最新分層強(qiáng)化學(xué)習(xí)算法匯總

表3 算法參數(shù)設(shè)置

在總結(jié)了經(jīng)典和最新的分層強(qiáng)化學(xué)習(xí)算法的優(yōu)缺點(diǎn)后,不難發(fā)現(xiàn),當(dāng)不同的算法面臨大規(guī)模復(fù)雜環(huán)境和低成本問題時(shí),Agent 面臨學(xué)習(xí)效率、算法穩(wěn)定性和收斂速度等問題。目前,分層強(qiáng)化學(xué)習(xí)的主要算法通常采用兩層結(jié)構(gòu),一層為頂層結(jié)構(gòu),另一層為底層結(jié)構(gòu)。例如:KULKARNI T D等人[7]提出了一種h-DQN算法。

1.2 國內(nèi)外自動(dòng)滲透測試的現(xiàn)狀分析

滲透測試通過對(duì)目標(biāo)網(wǎng)絡(luò)環(huán)境的智能分析,將找到攻擊路徑和測試手段,滲透計(jì)劃執(zhí)行目標(biāo)網(wǎng)絡(luò)漏洞測試。目前,自動(dòng)突破測試路徑檢測的研究主要集中在以下兩個(gè)方面。

1.2.1 層強(qiáng)化學(xué)習(xí)是自動(dòng)化滲透測試路徑檢測的主要研究領(lǐng)域

王海紅等人[8]總結(jié)了當(dāng)前自動(dòng)化滲透測試攻擊路徑檢測的研究現(xiàn)狀,提出了一種基于網(wǎng)絡(luò)信息增益的攻擊路徑規(guī)劃算法,該算法將滲透測試形式化為馬爾可夫決策過程,利用網(wǎng)絡(luò)信息進(jìn)行獎(jiǎng)勵(lì),并指導(dǎo)Agent選擇最佳響應(yīng)動(dòng)作。LI T 等人[9]提出了一種基于QLearning 的最優(yōu)攻擊路徑生成方法,該方法受Agent 需要事先獲取網(wǎng)絡(luò)拓?fù)涞南拗啤榱诉m用于大規(guī)模的網(wǎng)絡(luò)場景,將分層強(qiáng)化學(xué)習(xí)應(yīng)用到智能體的訓(xùn)練中,目標(biāo)和措施的選擇可以分層,以提高訓(xùn)練的有效性。基于強(qiáng)化學(xué)習(xí)的方法是基于馬爾可夫決策模型的。這項(xiàng)研究只在簡單網(wǎng)絡(luò)場景的實(shí)驗(yàn)中得到了驗(yàn)證,算法的速度和可擴(kuò)展性還有很長的路要走。

1.2.2 處理稀疏值獎(jiǎng)勵(lì)問題的處理可以促進(jìn)自動(dòng)化滲透測試路徑發(fā)現(xiàn)的實(shí)際應(yīng)用與落地

在自動(dòng)化滲透測試路徑發(fā)現(xiàn)任務(wù)中,稀疏獎(jiǎng)勵(lì)問題是分層強(qiáng)化學(xué)習(xí)的核心問題,解決稀疏獎(jiǎng)勵(lì)問題有利于提升樣本使用效率和優(yōu)化策略水平。楊惟軼等人[10]介紹了稀疏獎(jiǎng)勵(lì)問題的5種解決方案,包括經(jīng)驗(yàn)回放機(jī)制、獎(jiǎng)勵(lì)設(shè)計(jì)與學(xué)習(xí)、多目標(biāo)學(xué)習(xí)、探索與利用和輔助任務(wù)。楊瑞等人[11]發(fā)現(xiàn),使用外部引導(dǎo)信息的算法平均性能優(yōu)于無外部引導(dǎo)信息的算法,但后者對(duì)數(shù)據(jù)的依賴性較小。

2 算法設(shè)計(jì)

AHM-DQN 算法是對(duì)h-DQN 算法進(jìn)行改進(jìn)和優(yōu)化,按照分層強(qiáng)化學(xué)習(xí)的思想將更復(fù)雜的任務(wù)分解,自動(dòng)將大問題分解為更簡單的子任務(wù),并首先得到子任務(wù)的求解策略,得到求解總體任務(wù)的優(yōu)化策略,提高Agent 訓(xùn)練的效率;融入記憶因子,解決獎(jiǎng)勵(lì)值稀疏問題,加快了算法收斂速度;根據(jù)Q 函數(shù)的最優(yōu)值,找到滲透測試的最優(yōu)路徑。

其研究內(nèi)容包括網(wǎng)絡(luò)安全、滲透測試、分層強(qiáng)化學(xué)習(xí)等學(xué)科,具有一定的理論和應(yīng)用價(jià)值,具體研究內(nèi)容如下。

2.1 任務(wù)會(huì)自動(dòng)分層,以提高Agent的訓(xùn)練效率

當(dāng)前的分層強(qiáng)化學(xué)習(xí)中,分層劃分和任務(wù)配置通常在相對(duì)復(fù)雜的環(huán)境中手動(dòng)進(jìn)行,這使算法面臨不穩(wěn)定性和附加超參數(shù)等挑戰(zhàn)。例如:h-DQN算法采用手動(dòng)預(yù)置的雙層網(wǎng)絡(luò)結(jié)構(gòu),如圖1 所示。Controller 層級(jí)設(shè)置了一個(gè)可以通過預(yù)定義的外部獎(jiǎng)勵(lì)實(shí)現(xiàn)的小目標(biāo),Controller 層級(jí)根據(jù)預(yù)定義的內(nèi)部獎(jiǎng)勵(lì)進(jìn)行action。隨著環(huán)境規(guī)模的擴(kuò)大,Meta Controller 層級(jí)創(chuàng)建了無數(shù)子目標(biāo),h-DQN 算法的效率降低。換句話說,只有當(dāng)所有狀態(tài)都是離散的、有限的和已知時(shí),該算法才適用。因此,在自動(dòng)分層的基礎(chǔ)上,按照半馬爾科夫決策過程進(jìn)行自動(dòng)分層,通過Agent 與網(wǎng)絡(luò)環(huán)境的交互,根據(jù)任務(wù)目標(biāo)和措施的選擇,減少勞動(dòng)力,使Agent 具有更好的自主學(xué)習(xí)能力,提高Agent訓(xùn)練的效率。

圖1 h-DQN分層結(jié)構(gòu)圖

2.2 融入記憶因子,增強(qiáng)解決稀疏獎(jiǎng)勵(lì)問題的能力

在稀疏獎(jiǎng)勵(lì)環(huán)境中,Agent很難學(xué)習(xí)獲得獎(jiǎng)勵(lì)所要的動(dòng)作,因此在計(jì)算獎(jiǎng)勵(lì)值時(shí),融入遺忘系數(shù)λ和折扣因子γ模型定義為公式(1),表示初始訓(xùn)練狀態(tài)下的記憶因子為0;如果相應(yīng)的行為系數(shù)為1,在其他情況下,當(dāng)在某種狀態(tài)下做出的決定的影響隨著時(shí)間的推移繼續(xù)減弱時(shí),記憶會(huì)以指數(shù)形式逐漸分解為零。記憶因子可以幫助Agent 有效地記憶和學(xué)習(xí),提高Agent 的學(xué)習(xí)效率。

在h-DQN算法中,Controller層級(jí)負(fù)責(zé)接收子任務(wù)和Meta Controller 層級(jí)的當(dāng)前狀態(tài),然后選擇可能操作,其目的是最大化人工預(yù)設(shè)的內(nèi)部獎(jiǎng)勵(lì)之和,如公式2所示,通過計(jì)算Q函數(shù)的值來連續(xù)逼近最佳值。

Meta Controller 層級(jí)負(fù)責(zé)獲取當(dāng)前狀態(tài),然后從Meta Controller 層級(jí)執(zhí)行的任何子任務(wù)中選擇子任務(wù)。其目的是最大限度地增加實(shí)際的外部獎(jiǎng)勵(lì)之和。在迭代過程中,通過計(jì)算Q 函數(shù)值,不斷逼近最優(yōu)值,如公式(3)。

雖然h-DQN算法是一種較好的無監(jiān)督學(xué)習(xí)方法,但當(dāng)獎(jiǎng)勵(lì)值稀疏時(shí),存在著收斂速度較慢的問題,當(dāng)融入記憶因子時(shí),每次達(dá)到最優(yōu)Q函數(shù)值時(shí),存儲(chǔ)相應(yīng)的狀態(tài)信息,并為存儲(chǔ)的信息提供一個(gè)記憶因子。最后,選擇獎(jiǎng)勵(lì)值較大的那條鏈路作為較優(yōu)鏈路,路徑代價(jià)與獎(jiǎng)勵(lì)值成反比,算法能夠調(diào)整學(xué)習(xí)程度,更好地平衡當(dāng)前和未來收益,使算法能夠更快地收斂,進(jìn)一步縮短計(jì)算時(shí)間。

2.3 根據(jù)最優(yōu)Q值,發(fā)現(xiàn)最優(yōu)滲透測試路徑

在大規(guī)模網(wǎng)絡(luò)環(huán)境下,實(shí)驗(yàn)比較了h-DQN算法和本項(xiàng)目優(yōu)化的分層強(qiáng)化學(xué)習(xí)算法的性能,再改變網(wǎng)絡(luò)規(guī)模,比較算法在不同網(wǎng)絡(luò)場景下的學(xué)習(xí)效率和收斂速度。這意味著,在滲透測試時(shí)選擇漏洞的過程變成了選擇分層強(qiáng)化學(xué)習(xí)的動(dòng)作。該算法不需要利用攻擊圖生成狀態(tài)-漏洞信息,而是通過分層強(qiáng)化訓(xùn)練,使Agent 通過多次使用、探索與獎(jiǎng)勵(lì)輪次形成完整的狀態(tài)-漏洞,這樣訓(xùn)練完成后,可以根據(jù)每個(gè)狀態(tài)選擇相應(yīng)的最佳漏洞,并根據(jù)該算法獲得最佳Q值,達(dá)到推薦最佳滲透路徑的效果。

3 實(shí)驗(yàn)

該項(xiàng)目采用了pytorch算法框架,由于現(xiàn)實(shí)世界中Agent交互和訓(xùn)練的成本較高,模擬了大中型網(wǎng)絡(luò)和局域網(wǎng)網(wǎng)絡(luò)環(huán)境,并控制了所提出的深度強(qiáng)化算法的總體效率。

3.1 實(shí)驗(yàn)場景

該項(xiàng)目實(shí)驗(yàn)場景如圖2所示,它由核心層、聚合層和接入層三層網(wǎng)絡(luò)結(jié)構(gòu)組成,即由核心層交換機(jī)、匯聚層交換機(jī)、接入層交換機(jī)設(shè)備組成。兩個(gè)核心層交換機(jī)是匯聚層交換機(jī)上行鏈路設(shè)備,采用快速收斂路由協(xié)議來實(shí)現(xiàn)故障切換和負(fù)載均衡。如果鏈接意外,也可以從備份鏈接合并該鏈接。每個(gè)匯聚層交換機(jī)應(yīng)放置在一層的設(shè)備間,上部應(yīng)設(shè)置兩個(gè)核心交換機(jī),下部應(yīng)設(shè)置接入層交換機(jī)。接入層交換機(jī)應(yīng)放置在各層的管理空間內(nèi),要求最上面一行是匯聚交換機(jī),最下面一行是每個(gè)接入層交換機(jī)。

圖2 滲透測試路徑模擬環(huán)境拓?fù)鋱D

3.2 實(shí)驗(yàn)設(shè)置

該文設(shè)定Agent 在訓(xùn)練與事實(shí)過程中不斷地掌握網(wǎng)絡(luò)拓?fù)湫畔⒁约熬W(wǎng)絡(luò)路由轉(zhuǎn)發(fā)信息。為了對(duì)該文所提出的AHM-DQN 算法進(jìn)行評(píng)價(jià),選擇h-DQN算法和MLSH算法對(duì)該文提出的算法學(xué)習(xí)效率和收斂速度進(jìn)行了檢驗(yàn),可以有效降低導(dǎo)航策略的學(xué)習(xí)難度。同時(shí),設(shè)置合適的算法參數(shù)。

3.3 實(shí)驗(yàn)結(jié)果

Agent可以快速學(xué)習(xí)未知任務(wù)的子策略,訓(xùn)練主策略以自動(dòng)找到合適的子策略,克服手動(dòng)設(shè)置限制,并允許他們獨(dú)立學(xué)習(xí)。在添加記憶因子后,算法具有一定的記憶,關(guān)于某個(gè)狀態(tài)的未來決策會(huì)影響當(dāng)前。每次達(dá)到Q函數(shù)的最優(yōu)值時(shí),都會(huì)記錄相應(yīng)的狀態(tài)信息,并為記錄的信息提供一個(gè)記憶因子。最后,通過訓(xùn)練選擇一個(gè)較優(yōu)鏈路作為更好的環(huán)節(jié),可以進(jìn)一步縮短計(jì)算時(shí)間,加快稀疏值獎(jiǎng)勵(lì)問題的處理速度。

在圖3中,我們可以看到使用不同方法的Agent在復(fù)雜的在線環(huán)境中學(xué)習(xí)滲透路徑策略,例如:h-DQN算法和MLSH算法的訓(xùn)練曲線增長緩慢,表明Agent在復(fù)雜的網(wǎng)絡(luò)環(huán)境中難以學(xué)習(xí)和接受滲透測試路徑,但AHM-DQN算法的訓(xùn)練曲線在整個(gè)學(xué)習(xí)和訓(xùn)練階段不斷增加。在訓(xùn)練的初始時(shí)刻,由于行為選擇模型沒有學(xué)習(xí)到有效的行為選擇策略,Agent積累的內(nèi)部和外部獎(jiǎng)勵(lì)值沒有助于找到最佳滲透測試策略。隨著訓(xùn)練的進(jìn)行,AHM-DQN 算法行為選擇算法逐漸學(xué)習(xí)到一種有效的采樣策略,因此該算法滲透測試的路徑檢測成功率在最高水平上非常穩(wěn)定,明顯優(yōu)于其他方法。以上結(jié)果表明,該文提出的AHM-DQN 算法可以有效降低復(fù)雜網(wǎng)絡(luò)環(huán)境下入侵檢測策略學(xué)習(xí)的難度,讓Agent更好地學(xué)習(xí)滲透測試路徑發(fā)現(xiàn)策略。該算法在學(xué)習(xí)效率和收斂速度方面優(yōu)于其他分層強(qiáng)化學(xué)習(xí)算法,解決了滲透測試主要依賴于人工的問題。

圖3 任務(wù)的平均成功率

4 結(jié)論

AHM-DQN算法是將分層強(qiáng)化學(xué)習(xí)與自動(dòng)化滲透測試相結(jié)合,優(yōu)化和改進(jìn)了h-DQN算法,提高Agent的訓(xùn)練效率,加快算法的收斂速度,適應(yīng)動(dòng)態(tài)網(wǎng)絡(luò)環(huán)境的變化。(1)根據(jù)半馬爾科夫決策過程,通過Agent與網(wǎng)絡(luò)環(huán)境的交互,自動(dòng)放置任務(wù)目標(biāo)和動(dòng)作的選擇,以提高算法的效率;(2)融入記憶因子,幫助Agent有效記憶和學(xué)習(xí),解決獎(jiǎng)勵(lì)值稀疏性問題,提升算法的準(zhǔn)確定;(3)在較大的網(wǎng)絡(luò)環(huán)境下測試算法的效率和收斂性,并找到最優(yōu)滲透測試路徑。該文尚未解決復(fù)雜的真實(shí)網(wǎng)絡(luò)測試環(huán)境的問題,并將在將來對(duì)其進(jìn)行探索和改進(jìn)。

猜你喜歡
分層算法測試
基于分層教學(xué)下的高中數(shù)學(xué)“讓學(xué)”策略
哪種算法簡便
高中語文分層教學(xué)的有效性探索
高中分層走班教學(xué)模式探究
Travellng thg World Full—time for Rree
心理測試
算法框圖的補(bǔ)全
算法初步知識(shí)盤點(diǎn)
心理小測試
測試
鹤山市| 平山县| 盱眙县| 资阳市| 大同县| 平塘县| 乡城县| 樟树市| 深州市| 格尔木市| 北流市| 丰县| 安龙县| 巴林左旗| 灌阳县| 神木县| 丹东市| 青阳县| 泗水县| 高密市| 交口县| 稷山县| 苏尼特左旗| 湄潭县| 荣昌县| 阳新县| 莱西市| 新河县| 永胜县| 枝江市| 睢宁县| 榆中县| 上饶县| 宜兰市| 思茅市| 潞城市| 黄山市| 恩施市| 边坝县| 滦南县| 陕西省|