
大家读完觉得有帮助记得关注和点赞摘要——使用强化学习RL训练的自主网络防御代理正越来越多地被用于防御企业计算机网络。然而随着攻击者能力演变并催生新的攻击策略现有方法可能变得脆弱。在本工作中我们研究将CAGE挑战场景2CC2——一个基准企业网络防御场景——中学习到的防御者策略适应到扩展网络场景的问题该扩展场景具有由新攻击者动作表示的新攻击者能力。利用新动作的有效攻击策略最初是未知的因此必须先学习攻击者策略然后才能进行防御者适应。为应对这一挑战我们开发了带行为树的对抗强化学习ARLBT它使用奖励行为树RBT定义基于进展的奖励函数并将攻击者策略条件化于RBT执行。所提出的RBT将新攻击者动作纳入结构化攻击策略同时利用并行执行在多个网络节点上同时生成奖励。我们在具有不同新攻击者动作集的网络场景中针对两个基线防御者策略评估ARLBT学习攻击者策略的效果并与多个攻击者基线进行比较。结果表明与使用原始CC2奖励函数的ARL相比ARLBT提高了攻击者成功率并且将策略条件化于RBT执行可以提高样本效率。我们进一步表明防御者策略可以针对学习到的攻击者进行适应从而提高对利用新攻击者动作的攻击的鲁棒性。关键词网络安全 · 神经符号AI · 强化学习 · 行为树1 引言使用强化学习RL训练的计算机网络自主网络防御代理通过持续监控网络并实时响应攻击减少了网络操作员的人工工作。近期工作已证明RL代理可以为复杂的企业级网络环境学习有效的防御者策略[8,15]。然而网络环境本质上是非平稳的。网络拓扑、攻击者策略或攻击者能力的变化可能引入防御者训练条件与其部署期间必须防御的威胁之间的不匹配[12]。随着攻击者能力演变并催生新的破坏、规避和横向移动策略针对固定攻击者能力训练的防御者策略的有效性可能会下降。先前工作已探索使防御者策略适应变化的攻击者行为和网络结构。现有方法考虑了响应变化的固定攻击者策略在防御者策略之间切换[16,18]、跨不同网络拓扑的泛化[8,15]以及通过对抗强化学习ARL联合训练攻击者和防御者其中攻击者和防御者策略相互对抗训练以改进各自策略[9,11]。然而这些特定方法假设攻击者能力保持固定。在实践中攻击者能力可能演变并催生防御者训练期间未表示的新攻击策略。因此现有方法既未解决如何学习能够利用新能力的攻击者也未解决如何随后针对由此产生的攻击者行为调整防御者策略。在本工作中我们考虑将防御者策略从原始网络场景适应到具有由新攻击者动作表示的新攻击者能力的扩展网络场景的问题。具体而言我们研究CAGE挑战场景2[7]CC2其中防御者策略最初针对在企业网络环境中使用原始攻击者动作集操作的固定攻击者进行训练。攻击者的目标是攻陷并持续影响操作服务器而防御者的目标是减轻攻击者的进展并最小化服务质量中断。我们用新的攻击者动作扩展该场景这些动作支持额外的破坏和规避能力例如拒绝服务攻击和隐蔽利用。因此利用新动作的有效攻击者策略必须首先被学习然后才能进行防御者策略适应。为新攻击者动作学习攻击者策略带来若干挑战。随着攻击者动作集的扩展有效攻击策略可能需要在长时间范围内经过多个协调阶段推进。例如拒绝服务可用于在向攻击者目标推进之前制造转移。这些长时程依赖产生延迟和稀疏的奖励信号降低样本效率突显了攻击者训练中奖励塑形的重要性[1,10,21]。然而CC2的奖励函数关于攻击者进展提供有限反馈。先前工作已探索使用有限状态机作为基于进展的奖励函数奖励机器并将攻击者策略条件化于攻击者进展[10]而更近期的工作引入了奖励行为树作为组合机器人任务的基于进展的奖励函数[17]。为应对这些挑战我们开发了带行为树的对抗强化学习ARLBT用于为新攻击者动作学习攻击者策略并随后适应防御者策略。我们使用奖励行为树RBT定义基于进展的奖励函数并将攻击者策略条件化于攻击进展。RBT将新攻击者动作集成到结构化攻击进展中同时并行执行支持跨多个网络节点同时生成奖励。学习到的攻击者策略针对防御者策略训练并随后用于在扩展网络场景中适应防御者策略。本工作的技术是一种通过将RL策略条件化于不相交的RBT行为集从而将策略条件化于RBT执行的方法。一个用于扩展网络场景中攻击者训练的奖励行为树RBT它纳入新攻击者动作并使用并行执行。带行为树的对抗强化学习ARLBT一种使用RBT条件化策略和RBT来学习新攻击者动作的攻击者策略并随后在扩展网络场景中适应防御者策略的对抗RL算法。在具有不同新攻击者动作集的网络场景中进行的、带代码¹的评估其中ARLBT攻击者策略针对两个基线防御者策略训练和评估并与多个攻击者基线比较。结果表明与使用原始CC2奖励函数的ARL相比ARLBT提高了攻击者成功率并且将策略条件化于RBT可以提高样本效率。我们还表明防御者策略可以针对学习到的攻击者进行适应显著提高防御者奖励并降低攻击者成功率同时保持对原始固定攻击者的鲁棒性。2 相关工作RL已越来越多地应用于自主计算机网络防御。然而在网络防御中部署RL代理引入了若干重大挑战。McFadden等人2026的近期综述强调了若干陷阱包括训练与部署环境之间的不匹配以及由攻击者策略或网络拓扑变化引起的非平稳性[12]。先前工作已探索使防御者代理适应变化的攻击者策略和网络条件。Potteiger等人2024和Samaddar等人2025使用带学习行为的行为树在CC2中响应攻击者行为变化动态切换防御策略[16,18]。Wolk等人2022进一步表明即使对网络进行微小修改例如节点顺序或边连接的变化也可能显著降低防御者策略性能[22]。为提高泛化能力Molina-Markham等人2025在FARLAND[14]——一个用于训练防御者的RL仿真和仿真环境——中使用课程学习跨越来越困难的固定攻击者策略和网络规模训练防御者策略[15]。King等人2026使用归纳图神经网络方法泛化到更大的网络拓扑同时保持防御者策略性能[8]。尽管这些工作考虑了网络拓扑演变但它们未涉及适应新攻击者动作或学习攻击者策略。先前工作已探索用于联合学习攻击者和防御者策略的对抗RL。Hicks等人2026认为针对固定攻击者策略训练可能产生脆弱的防御者策略并建议共同演化攻击者和防御者以提高鲁棒性[5]。Kunz等人2022扩展了CyberBattleSim[13]——一个用于攻击者训练的RL训练环境——以支持联合防御者和攻击者策略学习[9]。他们证明学习到的防御者策略可以适应并显著减少攻击者进展。类似地Makarem等人2026在攻击图环境中使用Q学习和DQN联合训练防御者和攻击者代理[11]。在这些工作中可用攻击者动作集保持固定当攻击者在引入新动作时演变策略时这可能限制适用性。奖励塑形仍然是网络安全RL中高效训练防御者和攻击者的主要挑战。Bates等人2023表明CC2中奖励幅度、符号和好奇心驱动奖励可以影响样本效率[1]。对于攻击者训练奖励机器已被用于通过有限状态机作为奖励逻辑来建模子任务进展[21]。Li等人2024将奖励机器应用于CyberBattleSim中引导攻击者策略并将策略条件化于奖励机器状态以提高样本效率[10]。然而奖励机器缺乏行为树自然支持的模块化和并行执行[6,17]。Potteiger等人2026的近期工作引入了用于组合机器人任务的基于BT的奖励函数[17]。他们的BT使用LLM和BT模板自动生成以进行奖励塑形并展示了在对抗条件下有效引导机器人代理。然而他们的公式未利用BT并行执行或将策略条件化于BT执行。3 面向攻击者能力演变的自适应网络防御我们形式化学习利用新攻击者能力的攻击者策略以进行后续防御者适应的问题。我们首先描述原始网络场景CC2然后引入在扩展网络场景中表示这些能力的新攻击者动作。在扩展网络场景中新动作的有效攻击者策略最初未知必须在防御者策略通过对抗训练适应之前学习。3.1 原始网络场景CAGE挑战场景2CC2建模一个由主机和服务器组成的企业网络具有两个代理防御者和攻击者。图 1所提出的攻击者策略学习与防御者策略自适应方法概览基线防御者策略在原始网络场景中训练然后迁移至具有新攻击行为的扩展网络场景中。攻击者策略通过 ARLBT基于奖励的自举训练对抗基线防御者进行学习其中 RBT奖励引导树提供基于攻击进程的奖励并使攻击者策略以攻击进程为条件。随后所学得的攻击者策略被用于在扩展网络场景中对防御者策略进行自适应优化。每个阶段正在优化的智能体由*标注。网络拓扑网络由三个子网组成一个具有五个非关键主机的用户子网一个具有三个支持用户子网中服务的服务器和一个防御者主机的企业子网以及一个具有一个操作服务器和三个操作主机的操作子网。操作服务器运行网络的关键服务。代理目标与动作防御者的目标是防止关键服务受到影响并最小化服务质量中断。防御者可以在任何主机或服务器上执行动作以减轻攻击者。防御者动作是监控网络连接和恶意进程Monitor、分析主机或服务器相关文件的信息Analyze、在主机或服务器上部署七种诱饵服务之一若攻击者尝试利用则触发警报DeployDecoy、移除任何恶意进程或文件Remove以及将主机恢复到已知安全状态Restore。攻击者的目标是影响操作服务器上的关键服务。攻击者从某个用户主机开始。攻击者动作是发现子网上的主机和服务器DiscoverRemoteSystems、发现主机或服务器上的易受攻击网络服务DiscoverNetworkServices、利用某个易受攻击网络服务ExploitRemoteService建立低权限会话Monitor检测率为95%然后执行权限提升以建立高权限会话PrivilegeEscalate。如果在操作服务器上成功执行权限提升攻击者可以影响关键服务Impact实现其目标。已知攻击者策略CC2的防御者策略设计用于减轻两个固定攻击者策略BLine和Meander。BLine策略遵循贪婪路径选择最直接导致影响操作服务器的动作。Meander策略在推进到下一个子网之前利用并提升子网内所有主机和服务器的权限最终针对操作服务器。3.2 具有新攻击者动作的扩展网络场景新攻击者动作我们引入两个额外攻击者动作DenialofServiceDoS持续淹没主机或服务器上的网络服务以及StealthExploitRemoteService具有较低的10%检测率。这些动作用于破坏服务、误导防御者和规避检测。发现新动作的攻击者策略与CC2包含用于设计防御者策略的已知攻击者策略不同扩展网络场景引入了有效策略未知的攻击者动作。这些新动作支持现有防御者策略不鲁棒的新攻击策略。3.3 在CybORG中建模网络场景网络场景使用CybORG仿真这是一个设计用于使用RL训练防御者和攻击者策略的仿真环境[3,20]。环境形式化我们将环境建模为具有两个代理的部分可观察马尔可夫博弈POMG防御者和攻击者。n 2个代理的POMG由元组M ⟨S, {Ai}ⁿᵢ₌₁, {Oi}ⁿᵢ₌₁, T, O, {ri}ⁿᵢ₌₁⟩表示。S是状态空间Ai是代理i的动作空间Oi是代理i的观察空间。我们将防御者和攻击者的联合动作记为a : (a1,a2)。T(st1 | st,at)是在时间步t从当前状态st采取联合动作at时到下一状态st1的转移函数。我们将防御者和攻击者的联合观察记为o : (o1,o2)。O(o | s)将状态s转换为联合观察o。直到时间步t的状态-动作历史定义为ht_s (s1,a1,...,st)代理i的观察-动作历史定义为ht_i (o1_i,a1_i,...,ot_i)。最后ri表示代理i的奖励函数。在完全可观察设置中奖励定义为ri(ht_s)。在部分可观察设置中奖励定义为ri(ht_i)。因为这些奖励函数依赖于历史而不仅是当前状态和动作它们是非马尔可夫的。这种形式化使奖励函数能够捕捉仅使用当前信息无法表示的时间依赖关系。状态与观察空间网络场景的状态建模为具有节点集V和边集E {(u,v) | u,v ∈ V}的属性图。节点表示主机、服务器、子网路由器、进程和文件边表示所有权。属性图中的每个节点具有特征f : V → Rd所有节点特征记为X。节点特征表示系统信息即操作系统、用户或服务器等、文件和进程信息即名称、类型、签名等以及来自外部进程的网络连接。防御者和攻击者观察空间O1和O2提供真实状态s ∈ S的部分视图。代理i在时间步t的观察定义为ot_i (Vt_i, Et_i, Xt_i)其中Vt_i ⊆ VEt_i ⊆ EXt_i表示可观察节点特征。防御者观察ot_1 ∈ O1包含网络上所有主机、服务器和子网节点的系统信息以及通过Monitor和Analyze动作发现的进程、文件和网络连接。初始攻击者观察o0_2 ∈ O2包含攻击者初始化所在主机节点的系统信息、文件和进程。攻击者然后必须通过其动作扩展其可观察集Vt_2、Et_2和Xt_2。例如DiscoverRemoteSystems动作将新发现的主机和服务器节点添加到攻击者观察中。动作空间防御者和攻击者可以采取网络范围动作或针对主机或服务器的动作参见第3.1节。防御者动作空间A1包含额外的Sleep动作。Monitor动作与每个选定的防御者动作并行执行。攻击者动作空间A2包含DiscoverRemoteSystems和两个额外动作Sleep和ProgressAttack。ProgressAttack根据当前攻陷级别推进对主机或服务器的攻击DiscoverNetworkServices → ExploitRemoteService → PrivilegeEscalate → Impact。奖励函数完全可观察防御者奖励函数r1(ht_s)在攻击者利用并保持对主机和服务器的访问时以及攻击者成功在操作服务器上执行Impact时输出惩罚。此外防御者因执行Restore而受到惩罚因为该动作中断良性用户的服务质量。部分可观察攻击者奖励函数r2(ht_2)输出防御者惩罚但不包括与Restore动作相关的惩罚。3.4 为新动作扩展攻击者动作空间随着新攻击者动作的引入原始POMG M0转变为具有扩展攻击者动作空间A1_2的POMG M1其中A1_2 A0_2 ∪ A_2。A_2表示新动作集。A_2包含两个新动作EnableDoS和DisableDoS。EnableDoSDisableDoS动作在主机或服务器上启用禁用DoS动作。当在主机或服务器上启用DoS时该主机或服务器的DiscoverRemoteSystems和ProgressAttack动作被禁用以建模网络带宽饱和。在ProgressAttack中ExploitRemoteService升级为使用StealthExploitRemoteService以降低检测。3.5 学习攻击者策略以调整防御者策略我们考虑一个基线防御者策略π1(· | o1,θ1)参数为θ1在M0中针对BLine和Meander攻击者策略最大化防御者奖励。目标是将π1转移到M1使转移后的防御者策略对最优攻击者策略π_2保持鲁棒。然而由于π_2先验未知必须首先学习。攻击者策略π2(· | o2,θ2)的参数θ2可以通过对抗RL优化。然而学习有效攻击者策略带来若干挑战。CybORG中的攻击者奖励函数主要建模主机或服务器上的攻陷以及对操作服务器的影响。随着攻击者动作空间扩展有效攻击策略可能需要在长时间范围内经过多个阶段推进。这些长时程依赖产生延迟奖励信号降低样本效率并增加发现有效攻击者策略的难度。此外原始攻击者奖励函数关于执行期间攻击者进展提供有限可解释性。在网络场景中攻击者行为自然经过侦察、权限提升、横向移动和影响等阶段推进。如果没有与这些阶段对齐的基于进展的奖励信号学习到的攻击者策略缺乏关于向攻击者目标推进的明确指导使高效发现有效长时程攻击策略更加困难。因此为新攻击者动作学习攻击者策略需要基于进展的奖励函数既提高学习效率又提供攻击者向目标推进的可解释表示。4 使用带行为树的对抗RL学习攻击者策略我们使用带行为树BT的对抗RL解决在M1中为新攻击者动作学习攻击者策略的问题。我们的方法使用奖励行为树RBT定义基于进展的奖励函数并将攻击者策略条件化于对应于攻击进展不同阶段的不相交RBT行为集。BT的模块化使新攻击者动作能够被纳入结构化的攻击进展阶段而并行执行使基于进展的奖励能够在多个网络节点上同时生成。学习到的攻击者策略随后用于在扩展网络场景中适应基线防御者策略。图2该图显示了具有行为集C1、C2、C3和C4的攻击者RBT以及以节点vi ∈ V2为条件的逻辑表达式ρi。图中的ρi意味着∃vi ∈ V2 | ρi为真。表格显示了攻击者RBT的节点命题。节点命题ρ描述a是用户主机b是企业服务器c是操作服务器d被利用e权限提升f处于DoS下g执行了Impact4.1 行为树行为树BT是由组织在树中的行为组成的层次符号结构[2]。BT擅长将复杂目标分解为子任务序列以监控进展。行为可以执行返回三种状态之一Running、Success或Failure。这些状态决定执行如何通过树传播以及接下来执行哪些行为。行为有两种类型内部控制行为和叶执行行为。控制行为例如序列→、回退?和并行⇒通过决定接下来执行哪个子行为并根据子返回状态返回状态来协调其子行为。叶行为分为条件□和动作■行为分别语义上表示正在检查的条件和正在执行的动作。具有行为B的BT τ具有内部控制行为Binternal和叶执行行为Bleaf。在时间步tBT控制流执行叶行为序列εt (b1,...,be)更新其状态并将状态反向传播到内部行为。4.2 行为树作为奖励函数奖励行为树RBT在先前工作[17]中被引入作为使用行为树BT定义基于进展的奖励函数的方法。RBT使用奖励机器表示叶行为允许代理进展表示为行为之间的转移同时产生与通过BT的进展对齐的奖励信号。在本工作中我们扩展RBT的使用将RL策略条件化于RBT执行并开发一个用于攻击者训练的RBT它使用并行执行在多个网络节点上生成基于进展的奖励。奖励机器RM是输入抽象环境描述并输出奖励函数的有限状态机[21]。简单RM将此输出限制为常数标量奖励。给定命题集P简单RM由元组⟨U,u0,δu,δr⟩定义其中U是有限机器状态集u0 ∈ U是初始状态δu : U × 2^P → U是状态转移函数δr : U × 2^P → R是状态奖励函数。命题使用标记函数ℓi : Oi × Ai → 2^P评估该函数在时间步t输入观察ot_i和前一个动作at−1_i输出真命题集σt ∈ 2^P。给定时间步t的标签历史λt ⟨σ0,...,σt⟩ ∈ (2^P)RM转移到状态ut δu(ut−1,σt)并使用δr(ut−1,σt)输出奖励。为将RM执行与BT语义对齐RBT中的RM共享状态集U {Running, Failure, Success}直接对应于BT返回状态。条件和动作行为的初始状态分别为Failure和Running。这种对应关系允许RM直接作为BT叶行为运行其中当前RM状态作为行为状态返回。给定共享命题集P和标记函数ℓRBT τR为每个叶行为b ∈ Bleaf维护当前RM状态。在时间步t 1执行的叶RM εt1根据以下转移状态ut1(b) δb_u(ut(b),σt1) 若 b ∈ εt1否则 ut(b)。 (1)RBT奖励定义为执行的叶RM产生的奖励之和RτR(λt1) Σ_{b∈εt1} δb_r(ut(b), σt1)。 (2)RBT奖励依赖于从代理i的观察-动作历史ht_i导出的标签历史λt。因此RBT作为部分可观察奖励函数ri(ht_i)运行。4.3 将RL策略条件化于奖励行为树RBT τR的执行进展可用于条件化代理i的策略πi(· | oi,θi)。设C {C1,...,Cm} ⊆ 2^B是m个不相交行为集的集合。每个行为集Cj可对应于RBT内的单个叶行为或子树。RBT条件化策略πi(· | oi,Cj,θi)对于行为集Cj ∈ C提供关于RBT当前执行进展的基于进展的上下文。为选择行为集设φτR : (2^P) → C是将标签历史λ ∈ (2^P)映射到行为集Cj ∈ C的选择函数。在时间步tRBT执行叶行为序列εt所选行为集根据最终执行的叶行为be ∈ εt确定使得φτR(λt) Ct Cj ∈ C其中be ∈ Cj。4.4 设计攻击者奖励行为树我们设计一个RBT τ2_R考虑使用M1中新攻击者动作影响操作服务器的进展。RBT分为两个主要阶段攻击者使用DoS动作淹没网络然后使用StealthExploitRemoteService动作通过网络传播以影响操作服务器。RBT由网络节点数上界N和阈值k参数化k表示必须启用DoS的最少节点数。命题集P包含图2中每个已知节点vi ∈ V2的节点级命题。随着更多节点被发现P的大小与V2成比例增加。图2所示的RBT由m 4个行为集C {C1,C2,C3,C4}组成。C1是根序列下的子树跟踪是否在至少k个节点上启用了DoS。该子树鼓励攻击者选择动作淹没网络从而分散防御者注意力。它实现为具有N个子节点的并行行为每个子节点监控一个节点并在该节点上执行EnableDoS时输出奖励。并行行为返回Running直到至少k个子节点返回Success此时返回Success。根序列下的第二个子树包含C2、C3、C4跟踪向攻击者目标的进展。C2使用具有三个叶行为一个条件和两个动作的回退-序列结构跟踪从用户子网到企业子网的传播。具体而言代理必须首先发现企业子网中的服务器同时在用户子网中保持特权立足点然后执行StealthExploitRemoteService利用企业服务器。第二个动作执行直到企业服务器被利用。C3镜像此结构但跟踪从企业子网到操作服务器的传播。C4跟踪在操作服务器上持续执行Impact动作。每个叶行为与以命题ρ为条件的RM相关联主要奖励r1用于不同RM状态之间的转移奖励r2用于保持在Success状态。4.5 带行为树的对抗RL我们设计一个对抗RL算法使用RBT图2在M1中针对预训练防御者策略π1(· | o1,θ1)优化RBT条件化攻击者策略π2(· | o2,Cj,θ2)的参数θ2。算法1总结带行为树的对抗RLARLBT。对于每个训练迭代使用当前防御者和攻击者策略在POMG环境M中收集轨迹。在每个时间步行为集选择函数φτR将当前标签历史映射到用于条件化攻击者策略的行为集。防御者和攻击者动作在M中联合执行之后更新状态-动作和标签历史并计算奖励。防御者奖励从完全可观察奖励函数r1(ht_s)获得而攻击者奖励使用RBT奖励函数RτR(λt)计算。所得转移存储在两个代理的重放缓冲区中。轨迹收集后使用近端策略优化PPO[19]更新代理i。攻击者参数θ2首先在M1中通过将代理i设为攻击者进行优化。随后基线防御者参数θ1可以通过将代理i设为防御者在M1中针对学习到的攻击者策略进行优化。在防御者训练期间BLine和Meander攻击者策略可以额外与RBT条件化攻击者策略一起采样以保持对先前观察到的攻击者行为的鲁棒性。算法1带行为树的对抗强化学习ARLBT输入防御者参数θ1攻击者参数θ2POMG M攻击者RBT τR标记函数ℓ2代理i训练迭代I回合E时间步T输出更新后的θ1θ21forj 1,...,Ido2 初始化重放缓冲区D1 ← {}D2 ← {}3fore 1,...,Edo4 重置环境M5 观察s0o0_1o0_26 初始化历史h0_s ← (s0)λ0 ← ()7fort 0,...,T−1do8 Ct ← φτR(λt)9 at_1 ∼ π1(· | ot_1,θ1)at_2 ∼ π2(· | ot_2,Ct,θ2)10 在M中执行at (at_1,at_2)11 观察st1ot1_1ot1_212 更新历史ht1_s ← (ht_s,at,st1)λt1 ← (λt,ℓ2(ot1_2,at_2))13 计算奖励rt1_1 ← r1(ht1_s)rt1_2 ← RτR(λt1)14 将转移存储到D1D215if代理i 防御者then16 使用PPO和D1更新θ117else if代理i 攻击者then18 使用PPO和D2更新θ219returnθ1θ25 评估我们评估ARLBT学习新攻击者动作的攻击者策略和适应防御者策略的效果。我们将使用ARLBT学习的攻击者策略与两个防御者策略在包含不同新攻击者动作集的四个网络场景中与三个攻击者基线进行比较。我们还评估防御者策略是否可以针对使用ARLBT学习到的攻击者进行适应。所有实验在配备AMD Ryzen Threadripper PRO 5995WX 64核处理器128硬件线程和500 GB内存的Ubuntu 22.04工作站上进行。5.1 实验设置网络场景新攻击者动作的四个消融网络场景是Orig原始网络场景CC2DoS以DoS作为添加动作的扩展网络场景Stealth以StealthExploitRemoteService作为添加动作的扩展网络场景DoS,Stealth添加两个动作。防御者策略我们考虑CC2中两个高性能基线防御者。CardiffUni是一个在BLine和Meander上训练单独策略并在测试时使用启发式选择它们的代理[4]。他们使用这种方法训练的策略是CC2竞赛的获胜者。KEEP是来自[8]的最先进代理使用具有全局注意力层的图神经网络来泛化到不同网络拓扑。攻击者策略BLine和Meander是CC2中的固定策略。ARLCC2是使用第3.3节中CC2攻击者奖励函数通过对抗RL学习的策略。ARLBT仅奖励是通过不使用RBT条件化的ARLBT消融学习的策略。ARLBT完整是通过ARLBT学习的RBT条件化策略。成功指标成功指标包括每个回合的攻击者成功率和累积防御者奖励。攻击者成功率是回合中Impact在操作服务器上成功执行的时间步比例。该指标提供攻击者实现目标的效率和频率的洞察。模型架构攻击者策略使用具有图神经网络和全局注意力层的actor-critic架构。观察使用两个图卷积网络GCN层处理。最初为KEEP代理开发的全局注意力层交织在GCN层之间产生表示网络状态的全局上下文向量。该全局向量与GCN层产生的节点嵌入拼接。对于critic架构全局上下文向量和节点嵌入输入到输出标量值估计的全连接层。对于actor架构全局上下文向量和节点嵌入输入到输出所有节点动作logits的全连接层假设节点数已知上界。对应于未发现节点的输出在actor和critic架构中都被掩码将攻击者策略决策限制在来自V2中已知节点的观察。所有层为64维。表1不同攻击者策略在不同网络场景中针对基线防御者评估的攻击者成功率每个1000回合。行内最佳平均攻击者成功率加粗。防御者场景BLineMeanderARLCC2ARLBT仅奖励ARLBT完整CardiffUniOrig0.030.070.720.720.72DoS00.240.730.670.73Stealth00.650.6600.66DoS,Stealth0.040.580.610.430.61KEEPOrig00.140.7300.73DoS00.150.600.430.60Stealth00000DoS,Stealth00.420.710.630.71训练超参数对于攻击者RBTN 13和k 3要求DoS和DoS,Stealth网络场景中约23%的主机和服务器启用DoS。Orig和Stealth的k 0。训练迭代I 500回合E 25时间步T 100。攻击者actor和critic的学习率分别为3e−4和1e−3。5.2 新动作的攻击者成功率图3在扩展网络场景中针对基线防御者评估的攻击者策略训练曲线。我们针对不同网络场景中的基线防御者训练攻击者策略四次训练运行并选择平均攻击者成功率最高的策略。测试性能我们评估攻击者策略是否能最大化攻击者成功率。表1中的结果表明在具有新动作的网络场景中ARLBT完整和ARLBT仅奖励与固定策略BLine和Meander以及学习到的ARLCC2策略相比显著提高了攻击者成功率。类似地与固定攻击者策略相比所有学习到的攻击者策略都显著降低了防御者奖励。尽管ARLCC2降低了防御者奖励但其缺乏向攻击者目标的明确进展导致攻击者成功率低于ARLBT策略。因此基于进展的奖励函数例如RBT用于学习攻击者更有效地实现攻击者目标。训练性能我们基于DoS,Stealth网络场景中训练期间的攻击者成功率评估样本效率。图3显示训练ARLBT完整平均比ARLBT仅奖励提高样本效率。平均而言最终攻击者成功率对KEEP提高14.5%对CardiffUni相当。因此将攻击者策略条件化于RBT可以比仅将RBT用作奖励函数提高样本效率。5.3 使防御者适应学习到的攻击者我们评估KEEP是否可以通过在训练期间从ARLBT完整、BLine和Meander攻击者策略采样跨网络场景使用ARLBT优化。CardiffUni被排除因为其基于启发式的策略选择机制在没有重大修改的情况下与ARLBT不兼容。表2中的结果表明KEEP可以适应具有新动作的网络场景显著提高防御者奖励并将针对ARLBT完整的攻击者成功率降低到接近零。此外对BLine和Meander仅观察到平均防御者奖励的边际下降表明适应后的防御者策略在适应学习到的攻击者的同时保持对原始攻击者策略的鲁棒性。表2基线防御者和适应后KEEP防御者策略在不同网络场景中针对攻击者策略的防御者奖励攻击者成功率每个1000回合。场景基线 ARLBT完整基线 BLine基线 Meander适应后 ARLBT完整适应后 BLine适应后 MeanderOrig−42.1 (0)−14.9 (0)−16.8 (0)−35.9 (0)−21.3 (0)−17.8 (0)DoS−392.4 (0.43)−14.9 (0)−16.8 (0)−21.1 (0)−19.1 (0)−21.5 (0)Stealth−757.5 (0.71)−14.9 (0)−16.8 (0)−55.2 (0.08)−24.9 (0)−21.7 (0)DoS,Stealth−894.1 (0.63)−14.9 (0)−16.8 (0)−39.7 (0)−21.2 (0)−18.8 (0)6 结论在本工作中我们研究使网络防御代理适应由扩展网络场景中新攻击者动作表示的演变攻击者能力。我们引入了带行为树的对抗强化学习ARLBT它使用奖励行为树RBT定义基于进展的奖励函数并将攻击者策略条件化于攻击进展。结果表明ARLBT可以提高样本效率并学习到比使用CAGE挑战场景2奖励函数训练的攻击者策略取得更大成功的攻击者策略。我们进一步证明防御者策略可以针对学习到的攻击者进行适应提高防御者奖励并降低攻击者成功率同时保持对原始攻击者策略的鲁棒性。ARLBT的一个限制是依赖手动设计的RBT这需要领域专业知识来定义结构化攻击进展尽管行为树的模块化使其扩展和修改成为可能。未来工作包括自动化网络防御的RBT生成并将ARLBT扩展到具有演变攻击者能力的持续学习设置。