◆邵曉 劉曼琳
基于強化學(xué)習(xí)的網(wǎng)絡(luò)欺騙防御動態(tài)部署研究
◆邵曉 劉曼琳
(海軍士官學(xué)校 安徽 233012)
網(wǎng)絡(luò)欺騙通過在系統(tǒng)內(nèi)部署虛假的安全弱點,將入侵者引入錯誤資源達(dá)到讓其產(chǎn)生錯誤感知,減少網(wǎng)絡(luò)安全風(fēng)險的目的。但傳統(tǒng)的網(wǎng)絡(luò)欺騙防御資源為靜態(tài)部署,存在著數(shù)據(jù)收集面較窄、難以適應(yīng)攻擊者的變化等缺陷。本文通過研究基于強化學(xué)習(xí)的網(wǎng)絡(luò)欺騙防御動態(tài)部署,使用DQN算法找尋網(wǎng)絡(luò)欺騙防御動態(tài)部署的最優(yōu)策略,實現(xiàn)針對網(wǎng)絡(luò)滲透攻擊者的最佳防御效果。
強化學(xué)習(xí);欺騙防御;動態(tài)部署
隨著信息化和大數(shù)據(jù)時代的到來,網(wǎng)絡(luò)空間的博弈也日趨激烈,網(wǎng)絡(luò)空間安全形勢整體比較嚴(yán)峻,網(wǎng)絡(luò)安全事件頻發(fā),網(wǎng)絡(luò)攻擊者的攻擊態(tài)勢也呈現(xiàn)出手段更加先進(jìn)、方式更加隱蔽、目標(biāo)更加具體、組織更加嚴(yán)密等諸多變化,配合高技術(shù)手段和自動化的攻擊裝備,導(dǎo)致傳統(tǒng)的安全防御手段難以滿足現(xiàn)在復(fù)雜的網(wǎng)絡(luò)安全形勢。網(wǎng)絡(luò)欺騙防御通過在網(wǎng)絡(luò)中部署各種欺騙資源,可以達(dá)到干擾網(wǎng)絡(luò)攻擊者的攻擊,掩蓋網(wǎng)絡(luò)中的重要目標(biāo),識別網(wǎng)絡(luò)攻擊者的攻擊手段,延緩攻擊者的攻擊效果,為最終誘捕提供環(huán)境創(chuàng)設(shè)條件。人工智能中的強化學(xué)習(xí)和網(wǎng)絡(luò)安全防御的結(jié)合,為更加有效地防御網(wǎng)絡(luò)進(jìn)攻提供了新的方法和途徑[1-2]。文獻(xiàn)[3]利用強化學(xué)習(xí)幫助網(wǎng)絡(luò)防御有效部署IDS設(shè)備。文獻(xiàn)[4]基于強化模型辨別攻擊者的攻擊路徑并以此進(jìn)行網(wǎng)絡(luò)漏洞分析。文獻(xiàn)[5]將在引入強化學(xué)習(xí)算法的同時,將攻擊圖融入攻防博弈模型,設(shè)計了一種網(wǎng)絡(luò)主動防御策略生成方法。本文通過將強化學(xué)習(xí)模型算法融入網(wǎng)絡(luò)欺騙防御中,形成網(wǎng)絡(luò)欺騙防御的智能動態(tài)部署中,提高網(wǎng)絡(luò)防御效果。
網(wǎng)絡(luò)欺騙防御(Deception)是網(wǎng)絡(luò)防御者通過觀察攻擊者的網(wǎng)絡(luò)攻擊行為,誘騙攻擊者或惡意應(yīng)用暴露自身攻擊意圖和攻擊手段,以便防御者能據(jù)此采取更加有效的防護(hù)措施。網(wǎng)絡(luò)欺騙防御并不等同于傳統(tǒng)的蜜罐(Honey Pot)或蜜網(wǎng)技術(shù),除了需要具備與攻擊者交互布放誘餌的能力,網(wǎng)絡(luò)欺騙防御更重要的在于通過偽裝和混淆,使用誤導(dǎo)、錯誤響應(yīng)或其他手段將攻擊者誘導(dǎo)至蜜罐中,使其遠(yuǎn)離重要保護(hù)目標(biāo),增加攻擊者的攻擊難度和攻擊成本。因此網(wǎng)絡(luò)防御需要有一個集中管理控制的策略,來創(chuàng)建、分發(fā)和管理欺騙資源,如服務(wù)器、網(wǎng)絡(luò)設(shè)備、網(wǎng)絡(luò)應(yīng)用、網(wǎng)絡(luò)服務(wù)、協(xié)議、數(shù)據(jù)、用戶等元素,通過這些元素來誘導(dǎo)吸引攻擊者。新的AI技術(shù),特別是基于深度學(xué)習(xí)的強化學(xué)習(xí)技術(shù),可以讓網(wǎng)絡(luò)欺騙防御產(chǎn)生與生產(chǎn)環(huán)境相匹配的誘餌和欺騙憑證,并能實時自動生成、部署和維持欺騙的進(jìn)行以及真實性維持,是未來主動防御技術(shù)的一個重要的發(fā)展方向。
強化學(xué)習(xí)是機器學(xué)習(xí)的一個領(lǐng)域,強調(diào)如何基于環(huán)境進(jìn)行行動從而得到最大化的預(yù)期利益。通過給定一個馬爾科夫決策過程,強化學(xué)習(xí)尋找一個最優(yōu)策略,策略就是狀態(tài)到動作的映射,使得最終的累計回報最大。以單智能體-環(huán)境模型為例,單個智能個體和環(huán)境之間進(jìn)行交互,通過操作個體進(jìn)行決策,來選擇相應(yīng)的操作,操作后環(huán)境狀態(tài)會改變,得到采取動作后的獎勵值,如此循環(huán)往復(fù),在某個時刻個體采取動作的策略的概率表示為:(|)=(A=|S=),其中表示環(huán)境狀態(tài),是一個有限的狀態(tài)集合,S表示在時刻環(huán)境的狀態(tài),表示個體動作,是一個有限的動作集合,A表示時刻個體采取的行動。當(dāng)出現(xiàn)某個行動后,下一個出現(xiàn)行動的概率為:
在策略和狀態(tài)時,采取價值函數(shù)V()表示為:
()=E(+1+γR+2+2+3+...|t=)
其中為衰減因子或折中因子,一般取[0,1]之間,當(dāng)取0時,表示為貪婪法,當(dāng)取0至1之間的數(shù)值則表示當(dāng)前延時獎勵的權(quán)重比后續(xù)獎勵的權(quán)重大。
其中為獎勵函數(shù)表示的是一個期望,環(huán)境狀態(tài)下行動的獎勵函數(shù)表示為:
根據(jù)這個模型表示,整個強化學(xué)習(xí)的馬爾科夫決策過程為:
(1)在t=0時刻,隨機初始化狀態(tài)0~P(0)
(2)智能體根據(jù)當(dāng)前環(huán)境狀態(tài)t選擇行動方案t
(3)智能體采取行動后環(huán)境給出獎勵rt~R(|St,At)
(4)環(huán)境給出下一時刻的狀態(tài)St+1=P(|t,t)
(5)智能體接收新的獎勵Rt以及環(huán)境狀態(tài)t+1
由于網(wǎng)絡(luò)攻擊的狀態(tài)隨時變化,因此網(wǎng)絡(luò)欺騙防御的部署需要根據(jù)當(dāng)前網(wǎng)絡(luò)安全狀態(tài)變化進(jìn)行智能化調(diào)整,在保證網(wǎng)絡(luò)欺騙防御部署穩(wěn)定的同時,防止由于攻擊者識破欺騙防御資源節(jié)點導(dǎo)致部署效能的降低。根據(jù)強化學(xué)習(xí)及其模型表示,將網(wǎng)絡(luò)防御者看做智能體,當(dāng)前網(wǎng)絡(luò)及攻擊者看做環(huán)境t,實施網(wǎng)絡(luò)欺騙防御部署動作為,防御動作作用于環(huán)境后引起網(wǎng)絡(luò)攻防態(tài)勢轉(zhuǎn)換將環(huán)境轉(zhuǎn)變?yōu)閠+1,同時防御者會得到反饋獎勵t,如此反復(fù)學(xué)習(xí)后,最終將得到一個最優(yōu)策略π,依據(jù)該策略,防御者可以最大可能提高網(wǎng)絡(luò)欺騙防御效能并對攻擊者進(jìn)行誘捕。在這個過程中,從防御者的角度分析,攻擊者的攻擊方式主要存在以下兩種不確定性,一是網(wǎng)絡(luò)防御系統(tǒng)的誤警或漏警導(dǎo)致對攻擊者攻擊路徑推斷的不確定性;二是攻擊者對攻擊目標(biāo)的興趣分布和入侵成功率的不確定性,這兩種不確定性也是導(dǎo)致環(huán)境狀態(tài)變化的因素,并且能夠在網(wǎng)絡(luò)欺騙防御網(wǎng)絡(luò)中進(jìn)行傳導(dǎo)。
按照強化學(xué)習(xí)的模型表示以及其決策過程,針對網(wǎng)絡(luò)環(huán)境中的諸多不確定因素,需要通過強化學(xué)習(xí)來動態(tài)部署網(wǎng)絡(luò)欺騙防御資源,智能選擇部署模型,通過強化學(xué)習(xí)讓網(wǎng)絡(luò)欺騙防御部署策略隨著網(wǎng)絡(luò)環(huán)境狀態(tài)的變化而變化,據(jù)此可以將策略表示為:
可見累計值越大,策略越優(yōu)即:
雖然在網(wǎng)絡(luò)欺騙防御部署場景分析中知道,網(wǎng)絡(luò)防御系統(tǒng)對入侵檢測具有一定的漏警或誤警,但考慮到在實際網(wǎng)絡(luò)攻防環(huán)境中遭受的攻擊均能為模型的強化學(xué)習(xí)提供相應(yīng)的數(shù)據(jù),因此通過將多次行動的累計獎勵平均值近似為累計獎勵的期望值。在網(wǎng)絡(luò)規(guī)模不大,且狀態(tài)和動作空間離散、維度不高的情況下,可以使用傳統(tǒng)的Q-Learning算法進(jìn)行求解。但真實的網(wǎng)絡(luò)環(huán)境復(fù)雜多變,為了讓策略求解的泛化性能更好,DeepMind將深度學(xué)習(xí)技術(shù)和強化學(xué)習(xí)結(jié)合,使用DQN深度卷積網(wǎng)絡(luò)CNN來逼近值函數(shù),并且利用經(jīng)驗回放訓(xùn)練強化學(xué)習(xí)的學(xué)習(xí)過程,通過獨立設(shè)置了目標(biāo)網(wǎng)絡(luò)來單獨處理時序差分中的偏差,使得DQN在高位連續(xù)的狀態(tài)和動作空間有較好的應(yīng)用。該算法主要包括以下步驟:
(1)輸入狀態(tài)空間和動作空間,分別用和,衰減因子γ,并設(shè)置學(xué)習(xí)率α;
(2)初始化經(jīng)驗池D,容量為N;
(3)隨機初始化Q網(wǎng)絡(luò)參數(shù)Ψ及Ψ′;
(4)repeat:初始化網(wǎng)絡(luò)起始狀態(tài)s0;
(5)repeat:在狀態(tài)s0選擇動作a=πε;
(6)執(zhí)行動作a,觀察網(wǎng)絡(luò)環(huán)境后得到當(dāng)前動作的獎勵r以及新的環(huán)境該狀態(tài)s′;
(7)將s,a,r,s′放入經(jīng)驗池D中進(jìn)行采樣st,at,rt,st+1;
(9)until:s為終止?fàn)顟B(tài),返回步驟(5);
如果只從已知信息中獲得最大化獎勵而不是從全局的角度出發(fā)挖掘環(huán)境信息,難以求得最終結(jié)果,因此使用ε?greedy策略融合探索和利用,以1-ε為概率從所有行動中隨機抽取at=maxa Q(St,a)。
為驗證策略的有效性,搭建實驗拓?fù)淙鐖D1所示。攻擊者可以通過外部網(wǎng)絡(luò)進(jìn)入本網(wǎng)絡(luò)區(qū)域,整個內(nèi)部網(wǎng)絡(luò)分為3個部分,分別為DMZ區(qū)域、核心服務(wù)區(qū)域以及客戶終端區(qū)域,其中DMZ區(qū)域主要有一臺Web服務(wù)器S1提供Web服務(wù),核心服務(wù)器有3臺服務(wù)器,分別是文件服務(wù)器S2、數(shù)據(jù)庫服務(wù)器S3、郵件服務(wù)器S4,客戶終端區(qū)域主要有客戶終端H1至H5,其中客戶終端H1是被網(wǎng)絡(luò)隔離的。
圖1 實驗環(huán)境拓?fù)鋱D
根據(jù)實驗拓?fù)浣Y(jié)構(gòu)分析,除終端H1外,網(wǎng)絡(luò)中可以有8個有效的欺騙資源部署位置,網(wǎng)絡(luò)初始狀態(tài)s0=[0 0 0 0 0 0 0 0],網(wǎng)絡(luò)攻擊者的攻擊目標(biāo)為文件服務(wù)器S2,攻擊者在內(nèi)部網(wǎng)絡(luò)橫向移動,網(wǎng)絡(luò)內(nèi)部防御中的漏警、誤警使用偽隨機數(shù)生成,模型的訓(xùn)練過程依靠告警數(shù)據(jù),與真實網(wǎng)絡(luò)攻防特點相符,實現(xiàn)對未知網(wǎng)絡(luò)攻防環(huán)境的有效模擬。
在實驗中,使用策略πd部署網(wǎng)絡(luò)欺騙資源,整體防御成功率ps(πd)=(num/sum)*100%,其中num表示能成功防御網(wǎng)絡(luò)攻擊的次數(shù),sum為模擬攻防的總次數(shù)。
(1)網(wǎng)絡(luò)欺騙防御靜態(tài)部署
網(wǎng)絡(luò)欺騙防御靜態(tài)部署的實驗結(jié)果差異性較大,如圖2所示,不同部署位置、不同的漏警率和誤警率下最終的防御成功率ps差異較大,最高能達(dá)到71.8%。但在實際網(wǎng)絡(luò)攻防過程中,靜態(tài)部署策略結(jié)果受到攻擊者攻擊方式影響較大,難以獲得最優(yōu)的防御策略,導(dǎo)致防御效果很難保持穩(wěn)定,如果靜態(tài)部署策略被攻擊者識別或偵破,則很難起到網(wǎng)絡(luò)防御的真正效果。
(2)基于強化學(xué)習(xí)的網(wǎng)絡(luò)欺騙防御動態(tài)部署
通過強化學(xué)習(xí)的網(wǎng)絡(luò)欺騙防御部署,隨著強化學(xué)習(xí)的輪數(shù)提升,防御成功率ps逐漸提升,最終穩(wěn)定到80%以上,且在不同的漏警率和誤報率下,其ps保持相對的穩(wěn)定,能夠較好地滿足不用場合下對網(wǎng)絡(luò)欺騙防御的部署要求。
圖2 網(wǎng)絡(luò)欺騙防御靜態(tài)部署實驗結(jié)果
圖3 基于強化學(xué)習(xí)的網(wǎng)絡(luò)欺騙防御動態(tài)部署實驗結(jié)果
本文基于強化學(xué)習(xí)的網(wǎng)絡(luò)欺騙防御動態(tài)部署,根據(jù)強化學(xué)習(xí)模型對網(wǎng)絡(luò)欺騙防御中的深度學(xué)習(xí)的場景進(jìn)行了分析,提出了在強化學(xué)習(xí)下網(wǎng)絡(luò)欺騙防御模型算法的實用性,并給出了相應(yīng)的求解步驟,最后通過仿真實驗對策略的有效性進(jìn)行的驗證,理論分析和實驗結(jié)果均表明,該方法能有效提高網(wǎng)絡(luò)欺騙防御的成功率,最大可能實現(xiàn)對入侵者的干擾。
[1]王碩.面向多階段滲透攻擊的網(wǎng)絡(luò)欺騙防御方法研究[D].戰(zhàn)略支援部隊信息工程大學(xué),2020.
[2]王率.網(wǎng)絡(luò)欺騙和嗅探技術(shù)研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2013.
[3]Venkatesan S,Albanese M,el.al.Detecting stealthy bontnets in a resource-constrained environment using reinforcement learning[C].Proceddings of 4thACM Workshop on Moving Target Defense.AVM,2017.
[4]Yan J,He H,et al.Q_learning-based vulnerability analysis of smart grid against sequential topology attacks[J].IEEE Transactions on Information Forensics & Security,2017.
[5]金志剛,王新建,李根.融合攻擊圖和博弈模型的網(wǎng)絡(luò)防御策略生成方法[J].信息網(wǎng)絡(luò)安全,2021.