自主网络事件响应智能体的网络靶场评估
A Cyber Range Evaluation of Autonomous Network Incident Response Agents
作者在 Crate 的 ADS-24 上评测仿真训练的网络入侵响应智能体,称带噪声训练的 RL 策略总体回报优于启发式策略。
- 人工或规则系统处置网络入侵偏慢,且既有强化学习防御智能体多只在仿真中评测。作者要检验仿真训练的 RL 智能体在真实靶场里能否比手工启发式策略更省综合代价。
- 用 CadsLang 把 ADS-24 建成 MAL 实例模型,在 MAL Simulator 上用 Vejde 的图神经网络策略做无模型强化学习,再零样本接到 Crate。智能体通过 Wazuh 告警选关机或隔离,并用同一数据模型对比启发式与空操作。
- 共 134 个两小时回合。作者称 Vejde w/ Noise 平均回报最高,主要因防御代价更低,但有时让 Lore 进入客户端网;Vejde 攻击代价最低、防御代价最高。等待概率分别为 94%、85% 和 88%。
- 作者称方法离实用仍有大量工作。评测在 37 台虚拟机的 ADS-24 上进行,攻击方为 Lore 的 Guided 与 Exploratory 两种配置,防御动作为关机和双向断网。
- 被测模型
- VejdeVejde w/ Noise
- 基准
- ADS-24CrateMAL SimulatorLore
- 指标
- return Rattack cost Radefense cost RdRα
研究在面向人工操作员训练的网络靶场中测试自主网络入侵响应智能体,靶场包含可变网络拓扑、红队模拟和模拟用户智能体,告警由 SIEM 平台生成并映射为智能体使用的数据建模语言。测试对比启发式智能体与强化学习策略,后者借助网络攻击模拟器优化综合成本。结果显示强化学习智能体整体防御效率高于启发式策略,且性能高度依赖对手策略与模拟用户的组合。
深度解读
这篇论文试图解决什么问题?
检验仿真训练的 RL 防御智能体在靶场中是否比启发式策略更省综合代价。
核心问题是:在仿真中训练的强化学习(RL)防御智能体,放到面向人训练的网络靶场后,能否比手工规则策略更省综合代价地阻止红队扩大访问。
场景与重要性:作者称网络攻击和安全事件经常发生,快速缓解才能避免敏感信息被窃或关键系统不可用;缓解通常由网络运维人员手工完成,或由基于模式和规则的系统自动完成。
现有方法不足:作者称已有用 RL 做网络入侵响应的工作,除少数例外外只在仿真里评测,没有放到被仿真的目标系统上;仿真假设了系统动态和智能体可用数据。作者还引 Wolk 等与 Hicks 等,称仿真训练的网络防御智能体容易过拟合特定拓扑或攻击者策略。
核心假设:作者要检验的假设是,基于 RL 的智能体在联网计算机环境中完成网络防御任务,能否比手工制定的基于规则的智能体更有效。有效性按综合代价衡量:阻止红队访问主机,同时降低防御措施带来的可用性代价。
本文做法:作者在靶场 Crate 的 37 台虚拟机网络 ADS-24 上评测启发式策略和用 RL 学到的策略。策略在用 Meta Attack Language(MAL)建的系统模型上、经 MAL Simulator 优化,再接到目标网络。
任务边界(作者未写成攻击者威胁模型):
- 目标:防御智能体在固定两小时内阻止红队工具 Lore 继续扩大访问,并最小化操作代价。
- 知识与输入:智能体不直接看网络状态,只看由 Wazuh 事件映射到 MAL 的部分可观察事实;作者未把该设置称为 white-box 或 black-box。
- 能力:每步选一个动作和一个作用对象,动作为等待、关机(Application.notPresent)或双向阻断子网流量(ConnectionRule.restricted)。
- 受害系统:Crate 事件平面中的 ADS-24;Lore 从无 Wazuh 代理的 flightlogs 进入,作者称因此不能被完全逐出网络。
有哪些相关研究?
相关工作按任务建模、仿真训练、策略架构和靶场评测分组,作者强调要做 sim-to-real。
作者把相关工作放在自主网络防御的机器学习脉络里,并按建模、仿真训练、架构和评测四块定位设计选择。
任务与形式化
- Hicks 等:把网络防御建模分成防御任务建模和系统建模;作者采用这一分解。
- POMDP 与代价:多篇先前工作把防御写成部分可观察马尔可夫决策过程,奖励编码运行需求;作者沿用“维持运行并最小化安全违规代价”的设定,并假定过程是因子化、关系型的。
- 溯源图:作者提到用内核级系统调用构造的 providence graphs 曾用于入侵检测和强化学习;作者称其粒度细、增长快,且攻击者可能直接影响防御智能体的观测。
仿真训练与 sim-to-real
- CybORG/CAGE、Yawning Titan、CyberWheel:作者称自主网络防御里的 sim-to-real 催生了这些仿真环境;CAGE 2 被作者当作 singleton testing 的例子,Cage 4 有场景变化但绑在特定基础设施上,Yawning Titan 配置更灵活但抽象程度高。
- Kirk 等:区分 singleton、分布内与分布外测试;作者用这一分类说明为何需要可配置拓扑和攻击者策略的仿真器。
- Hicks 等与综述:Hicks 等概述构建网络防御仿真环境的挑战,包括准确建模基础设施和任务要素;Vyas、Mavroudis 与 Burnap,以及 Drašar 等综述了多种仿真器的利弊。
策略架构与评测环境
- MLP 与 GNN:作者称相关工作常用多层感知机处理扁平向量,这会把策略锁在特定状态规模和顺序上;图神经网络可编码拓扑、线性扩展,并已被用于自主网络防御。作者选用 Vejde 实现 GNN。
- CSLE、CyberWheel、GNS3、Crate:Hammar 的 CSLE 在容器靶场中测试并用靶场数据做仿真训练;CyberWheel 同时提供虚拟机仿真接口;Le 等用 GNS3。作者称容器轻量,但有时不能表示真实网络的安全属性。本文评测选用给人训练用的靶场 Crate。
- 攻击与用户仿真:Hammar 用预先动作列表,CyberWheel 用启发式选动作;作者称 Lore 或 CALDERA 每步可在数千动作中选择。良性事件常用 GHOSTS 一类脚本工具模拟。
基线与基准:对比基线是同一 MAL 数据模型上的 Heuristic(观察到关联攻击步就选对应防御步)和 NoOp(不动作);评测环境是 Crate 中的 ADS-24,训练环境是 MAL Simulator。
作者称本文与只在仿真中评测的工作不同:用 MAL 建 ADS-24 模型、在仿真中训练、再在靶场里对 Lore 做评测,并检查策略对问题变化是否稳健。
论文如何解决这个问题?
用 CadsLang 建 ADS-24 模型,在 MAL Simulator 里训练 Vejde 策略,再接到 Wazuh。
整体流程是 sim-to-real:先用建模语言和资产清单建成系统模型,在仿真器里优化防御策略,再把策略接到含红队和模拟用户的目标网络。事件经翻译接口变成数据模型,动作再译成主机命令。
网络与任务模型
- 环境:ADS-24 是虚构维护管理系统,37 台虚拟机,四个子网 CLIENT、DMZ、SRV、SOC,经防火墙 fw1 互联;Windows 主机更多。SOC 对所有智能体不可达,以免干扰日志。时间窗两小时,时间步频率为 1/30 秒。
- 观测与动作:Wazuh 按规则产生告警。防御方通过 Active Response 发两条命令:关闭指定机器,或在 fw1 上双向阻断该主机与其他子网的流量;与 SOC 的交互除外。每步要决定动作和作用对象。
- 语言:作者做了 CoreLang 的缩小版 CadsLang,含 9 类资产、49 个攻击步和 2 个防御步。两条攻击路径分别是软件漏洞和凭据暴力破解。notPresent 阻断主机上两条路径;restricted 阻断来自其他网络的访问,仍允许内部子网流量。
- 映射:Osquery 数据建成 MAL 实例模型;11 个攻击步映射到 Wazuh 规则标识、规则组和应忽略的规则。无攻击方和防御方时,作者把观察到的攻击步当作误报:无用户时每时间步、每攻击步平均误报概率 1.7%,有用户时 3.3%。
代价与决策过程
- 代价:主机按保密性、完整性、可用性评分,尺度 1 到 5。Data.read 与 Data.write 记保密性加完整性;notPresent 记可用性,restricted 记可用性的一半。单步代价为攻击项与防御项之和。
- 回报:主指标是回合回报,即各步代价的折扣和。作者在 ADS-24 上把 Lore 以提升的 shell 成功执行命令的时刻定义为对应主机上的 Data.write 和 Data.read;防御步从命令发到 Wazuh REST API 时起算激活。
- POMDP:作者沿用 episodic POMDP。因不假设已知转移概率,用 model-free 深度 RL。状态由 MAL 中的离散实体和稀疏逻辑关系组成;Vejde 把一阶逻辑事实转成二部因子图,用消息传递网络编码,策略只看类型、不看具体标识。
仿真训练与靶场接口
- 训练:RL 策略用 MAL Simulator 和 Vejde 训练,共 200 万次转移,每个回合混合不同攻击者策略、入口和网络拓扑。Vejde w/ Noise 在每攻击步 1% 假阳性和假阴性下训练。附录 A 写有训练与仿真测试细节,正文未附上该附录的具体超参数。
- 启发式:若某资产关联的攻击步被观察到,就选择该资产关联的防御步。四种策略共用同一 MAL 输入:Vejde、Vejde w/ Noise、Heuristic、NoOp。
- 在线循环:回合从同一快照开始,恢复后半小时再启动。观察库以实例模型为初值;每 30 秒查询 Wazuh,匹配则写入攻击步,重复实例合并。数据库无变化时不请求动作。Vejde 取概率最高的动作。执行后把防御步写入观察库,并移除该资产及其关联;若稍后告警再次出现,临时放回一步。
- 场景变量:是否运行模拟用户;Lore 用 Guided 或 Exploratory。Guided 用黑名单忽略不在 flightlogs 到 DMZ 中 payroll 最快路径上的机器;Exploratory 可优先攻击不更接近 DMZ 的机器,且动作更多。拓扑变化是从 rootca、timereporter、print 中随机移除主机,这些机器不在 Guided 的目标列表上。
论文做了哪些实验?
134 个两小时回合中,作者称带噪声的 Vejde 平均回报最高,Vejde 攻击代价最低。
实验设置
- 被测策略:Vejde;Vejde w/ Noise(训练时每攻击步 1% 假阳性和假阴性);Heuristic;NoOp。RL 策略在 MAL Simulator 中训练后接到 ADS-24。
- 环境:Crate 中的 ADS-24,37 台虚拟机;红队为 Lore,入口 flightlogs;可选模拟用户。运行机器为 11 代 Intel i7、4.800 GHz、核显。
- 规模:134 个回合,约一个月收集,每类智能体约 30 回合。每回合两小时,恢复后半小时开始,告警查询间隔 30 秒。
- 变量:有无模拟用户;Lore 的 Guided 与 Exploratory;从 rootca、timereporter、print 中随机删主机。每回合抽一个防御智能体,抽完再填回集合。
- 指标:回合回报 R 为各步代价之和。作者把 R 拆成攻击代价 Ra 与防御代价 Rd,并计算 Rα = (1−α)Ra + αRd,α 从 0 到 1。α=0 只看可用性,α=1 只看攻击侧、可用性不计。
- 真值:Lore 在控制平面记成功与失败动作,供事后评估。论文未在所附正文中报告评审模型或人工一致性。
主结果
正文给出的可回查数字如下(Figure 6 的小提琴图在所附文本中被截断,未列出各条件下的回报数值)。
策略 等待概率 作者对代价的概括 Vejde 85% 攻击代价整体最低,平均防御代价最高 Vejde w/ Noise 94% 平均回报最高,防御代价低于 Vejde 和 Heuristic Heuristic 88% 作者称能挡住 Lore,但因对所有告警都行动,可用性代价高 NoOp 未报告 α=0 时在各配置中始终最好 - 作者解读:Vejde w/ Noise 的较高回报主要来自更少关闭资产、可用性代价更低;更宽松的策略在部分回合让 Lore 进入客户端网,攻击代价更高。
- 策略差异:作者认为 Vejde 接近 Heuristic,但还能根据关联资产上的事件行动,而 Heuristic 只对直接出现攻击步的资产行动。等待概率越低,作者将其描述为越不保守。
- 权重:α=0 时 NoOp 最好,因为所有防御动作都会影响可用性;α=1 时作者称 Vejde 在多数配置下最好。某策略回报连线与 NoOp 连线的交点,是作者定义的“比不动作更好”的切换点。Figure 6 后文在所附文本中截断,各配置的具体交点数值未附上。
告警映射的误报
- 测了什么:在没有攻击方和防御方时采集多个两小时数据,分有无模拟用户。
- 结果:无用户时每时间步、每攻击步平均误报概率 1.7%;有用户时 3.3%。
- 作者用法:这些观察被当作假警报,并用于解释为何用 1% 噪声训练一个策略变体。
Lore 路径与动作分布
- 路径:作者称 Guided 下 Lore 只走朝向 DMZ 的机器;Exploratory 更动态,但多数时候会攻陷 CLIENT 段。转移概率图在附录 E 的 Figure 10,所附文本没有给出图中概率数字。
- 动作:作者报告 Vejde、Heuristic、Vejde w/ Noise 的整体等待概率分别为 85%、88%、94%。
- 作者解读:更低的等待概率对应更积极的处置;带噪声训练对应更保守、防御代价更低。
其他消融与分析
- 训练预算:200 万次转移,混合攻击者策略、入口和拓扑;仿真内测试结果在附录 A,所附正文未给出仿真回报数字。
- 噪声训练:每攻击步 1% 假阳性和 1% 假阴性。
- 误报基线:无用户 1.7%,有用户 3.3%(每时间步、每攻击步)。
- 权重扫描:α∈[0,1],端点结论为 NoOp 与 Vejde,中间数值未在所附正文中列出。
- 入口固定为 flightlogs,且该主机无 Wazuh 代理,作者称 Lore 不能被完全逐出。
- 观察库偶发延迟、响应在流量中丢失;被移除资产若再次出现在告警中,只临时放回一步。
有什么可以进一步探索的点?
作者称 RL 防御策略有潜力,但离实用仍有大量工作。
作者指出的局限与后续方向
- 离实用仍有工作:引言末尾作者由结果得出,RL 自动防御策略有潜力,但该方法要达到实用仍有大量工作(Introduction)。
- 仿真与目标系统的差距:作者把机器人学中的 sim-to-real gap 当作已知阻碍,并称只在仿真或数据集上训练的模型在真实系统上会出现泛化与稳健性问题;本文因此才到靶场测试,而不是把该差距视为已解决(Introduction)。
- 仿真训练会过拟合:作者引 Wolk 等与 Hicks 等,称仿真中训练的网络防御智能体容易过拟合特定网络拓扑或攻击者策略,在更接近运行条件时不够实用(Introduction)。
- 不能在目标系统上直接训练:作者称 model-free RL 所需样本多,直接对着目标问题训练可能做不到,因此采用仿真训练后再迁移(Related Work,Agent Training In Simulation)。
- 真实网络测试的代价:作者称在真实网络上对真实威胁测试缺少控制、成本高,且难以知道攻击进度的真值;实验性自主智能体失败或误处置假阳性的代价使这一路线不划算(Defender Agent Evaluation)。
- 入口不可清除:flightlogs 无 Wazuh 代理,对防御智能体不可见也不可操作,作者称 Lore 因此永远不能被完全逐出网络(Network Activity)。所附正文没有单独的 Limitations 节,后续工作未写成具体实验计划。
实验覆盖范围
- 系统:评测网络为 Crate 事件平面中的 ADS-24,37 台虚拟机、四个子网;SOC 对智能体不可达。
- 策略与回合:四种策略,134 个两小时回合,每类约 30 回合;RL 训练为 200 万次转移。
- 攻击与用户:Lore 两种配置 Guided 与 Exploratory,入口固定为 flightlogs;另有有无模拟用户、以及从三台指定主机中随机删除的拓扑变化。
- 动作与观测:防御命令为关机和双向断网;11 个攻击步映射到 Wazuh;误报率在无攻击方、无防御方的采集中估计。
- 论文未报告:所附正文未给出各条件下的回报、Ra、Rd 数值表,未报告查询次数、回合重复的统计检验,也未报告仿真内测试的具体回报;附录 A、D、E 的表和图在截断之后,其数字未写入本文。
总结一下论文的主要内容
靶场评测显示带噪声的仿真 RL 策略平均回报最高,但作者称离实用仍远。
作者在给人训练用的靶场 Crate 里,评测仿真训练的自主网络入侵响应智能体。
- 问题:防御方要在两小时内阻止 Lore 扩大对 ADS-24 的访问,同时少付关机和断网带来的可用性代价。作者要看 RL 策略是否比手工启发式更省综合代价,以及仿真到靶场的迁移是否成立。
- 方法:用缩小版 MAL 语言 CadsLang 描述 9 类资产和两条入侵路径;Osquery 建实例模型,Wazuh 告警映射到 11 个攻击步。Vejde 用图神经网络在因子图上输出动作。训练在 MAL Simulator 中进行,200 万次转移,并混入攻击者策略、入口和拓扑变化。另一个变体在 1% 假阳性、假阴性下训练。
- 评测:134 个回合、四种策略。代价把保密性和完整性记到 Lore 取得提升 shell 的主机上,可用性记到防御动作上,隔离按关机代价的一半计。
- 结果:作者称 Vejde w/ Noise 平均回报最高,因为少关资产、防御代价低于 Vejde 和 Heuristic,但部分回合让 Lore 进入客户端网。Vejde 攻击代价最低、防御代价最高。等待概率为 Vejde 85%、Heuristic 88%、Vejde w/ Noise 94%。只计可用性时 NoOp 最好;不计可用性时作者称 Vejde 在多数配置下最好。无用户和有用户时,映射的平均误报概率为每时间步、每攻击步 1.7% 和 3.3%。
- 结论:作者称 RL 自动防御策略有潜力,Heuristic 能挡住 Lore 但可用性代价高,表现还高度取决于攻击者策略和模拟用户;要达到实用仍有大量工作。