OpenAEV 开源对抗演练平台:如何验证你的安全防御是否真正有效(实践与选型指南)
【免费下载链接】openaevOpen Adversarial Exposure Validation Platform项目地址: https://gitcode.com/GitHub_Trending/op/openaev
OpenAEV 是一个开源的对抗性暴露验证(Adversarial Exposure Validation)平台,属于 Filigran XTM 安全工具套件的一部分。它的定位很直接:在你的环境里真实地执行攻击动作,然后回答一个问题——你的 EDR、SIEM 和人员流程到底能不能发现并阻止它。平台把攻击动作、演练场景、执行调度和结果分析拆成可独立管理、反复复用的对象,适合安全运营团队做定期防御验证,也适合红蓝对抗、安全意识培训和高校教学场景。从 2.0 版本起,项目由 OpenBAS 更名而来,老用户迁移时注意 Docker 镜像命名空间的变化(详见 改名说明)。
传统演练流程慢在哪里,以及 OpenAEV 的切入点
旧流程:每做一次演练都像一次性工程
没有统一平台时,一次防御验证通常是这样的:临时写一批注入脚本,手动排时间线,在端点上挨个执行,然后人工翻 SIEM 告警逐条比对。问题不在于单次做得慢,而在于成果留不下来——脚本散落在各处、比对记录靠表格、下一轮演练几乎从零开始。如果攻击是"初始访问成功后才横向移动"这种条件逻辑,手工编排更是无能为力。
把每个环节变成可复用对象
OpenAEV 的处理方式是把演练拆成几类一等对象,各自独立管理:
- Action(威胁库动作):具体的技术或非技术动作,映射 MITRE ATT&CK,如 shell 命令、钓鱼邮件、DNS 解析;
- Inject(注入):Action 加上目标、时间和预期结果(Expectation)后的可调度单元;
- Scenario(场景):一组 Inject 组合成的可复用攻击序列,支持导出/导入,换目标就能重跑;
- Atomic Test(原子测试):跳过场景,单独验证某一种技术是否被检测到。
这种分层意味着:写好的动作和场景可以跨团队、跨季度复用,演练从"一次性劳动"变成"持续资产"。
核心能力拆解:场景设计、执行调度、数据复盘的闭环
场景设计:从模板到自定义攻击路径
平台安装后自带一套starter pack(预置场景、四张仪表盘、Nmap/Nuclei 注入器和若干采集器),从 XTM Hub 一键导入即可跑第一次演练,这是新手最关心的部分。进阶用法是Attack Chaining:把固定时间线换成一张"动作 + 事件"的有向图——某个动作的输出满足条件,才触发下一个动作,平台内置的执行引擎负责求值条件、维护全局状态、强制执行边界(允许的资产清单、总时长上限、重试频率限制)。对已经掌握手动编排的团队,还有Autonomous Attack Chaining:用自然语言给出目标,由 AI 编排器自行规划并推进整条攻击路径。注意 Attack Chaining 属于企业版(EE)功能。
执行调度:动作如何真正落到端点上
执行侧由三类组件分工,对应 架构图 中的 Executor、Injector、Collector 三条链路:
- Executor(执行器):负责在端点上运行植入体。开源可选 OpenAEV agent(支持 Windows / Linux / macOS)和 Caldera;企业版可复用已有的 CrowdStrike、SentinelOne、Palo Alto Cortex、Microsoft Defender for Endpoint、Tanium 端点代理,无需重复部署客户端。详见 Executor 列表;
- Injector(注入器):负责非端点类动作,如邮件、短信、报警系统、Nmap/Nuclei 扫描;
- Collector(采集器):负责从外部系统拉数据,既导入资产、身份、威胁情报用于构建演练,也把 EDR/SIEM 的告警拉回来与 Inject 匹配,验证"是否被检测、是否被阻止"。匹配窗口默认 6 小时,超期未命中的 Inject 会被标记为未检测/未阻止。详见 Collector 说明。
数据复盘:从"执行了"到"检测到了"
传统工具止步于"动作跑完了",OpenAEV 把结果分析放在与执行同等的位置。演练结束后,结果沿四个维度展开:预防、检测、漏洞暴露、人员响应。你可以用 自定义仪表盘 把检测率、漏报 Inject、各团队表现拖成自己的视图,下钻到单条 Finding 看具体证据;链路式演练则通过攻击路径地图回看攻击实际在哪些节点扩散。SOC 负责人看漏报趋势,红队看 Findings 分类,管理层看总体态势,同一个数据源服务不同读者。
落地路径:三类角色各自的第一步 🧭
个人学习与小团队试点
第一步:用 Docker 部署平台(部署文档),安装后从Settings > XTM Hub导入 starter pack。第二步:跑一个预置的无代理(agentless)场景,用内置端点先观察一遍完整流程。可观察的结果:四张预置仪表盘出现数据,Findings 列表开始积累,你拿到了第一份"哪些动作没被检测到"的清单。
企业安全团队
第一步:在一小批隔离的测试资产上部署 OpenAEV agent,用 allow list 限定执行范围,避免误触生产环境。第二步:接入现有 EDR/SIEM 的 Collector,选一个真实威胁相关的场景(例如凭据窃取链)做正式验证。可观察的结果:每个 Inject 都有检测/阻止判定,漏报项可直接转化为检测规则需求。建议先用小范围资产验证 Collector 匹配质量,再扩大演练面。
教学培训与安全意识演练
第一步:用平台内置的邮件注入能力设计钓鱼练习,把学员编为 Teams。第二步:开启 Lessons(反馈)机制,让学员在演练中完成处置动作。可观察的结果:按团队统计响应成功/失败比例,形成可对比的安全意识基线,下一轮演练直接复用同一场景做纵向对比。
选型判断:OpenAEV 适合谁,又有哪些边界 🔍
与商业方案和人工流程相比
商业演练平台通常按席位或年度授权收费,且执行器往往绑定自家端点产品;OpenAEV 社区版基于 Apache 2.0 许可,自托管无授权费用,执行器可以直接复用你已经在用的 CrowdStrike、MDE 等商业端点(EE 能力)。相比纯人工流程,最大的差异不是"自动化",而是演练资产沉淀:动作库、场景、预期结果、历史 Finding 都留在平台里,下一轮验证的成本递减。与同类开源项目相比,OpenAEV 背靠 Filigran 的 XTM 生态,与 OpenCTI 威胁情报平台联动生成场景是其差异化路径,生态整合深度可结合你的技术栈进一步验证。
限制与不适用场景
- 企业版能力有门槛:Attack Chaining、Autonomous Attack Chaining、第三方商业执行器均需要 EE 许可,社区版覆盖的是时间线式场景和开源执行器;
- 部署与运维自理:无托管 SaaS,PostgreSQL、消息队列、存储等组件需要自己维护,团队要有基本的运维能力;
- 集成配置工作量不可忽视:EDR/SIEM Collector 的匹配逻辑、执行器授权配置都需要按环境调整,不适合"装完就能用"的预期;
- 迁移成本:从 OpenBAS 1.x 升级需要处理 Docker 命名空间和配置迁移,存量用户建议先读 2.0 破坏性变更清单。
如果目标是快速验证某条攻击路径且已有成熟商业 EDR 的演练模块,商业方案可能更快;如果希望演练体系自主可控、可沉淀、可对外审计,OpenAEV 值得纳入评估。
开始试用
仓库地址(clone 用):
git clone https://gitcode.com/GitHub_Trending/op/openaev- 部署与 Docker 说明:部署文档
- 使用指南(六步工作流):上手指南
- 执行与调度相关源码:openaev-api 执行模块
建议路径:Docker 拉起平台 → 导入 starter pack → 跑一个 agentless 场景 → 接入你自己的 EDR Collector 看检测结果。遇到问题可查阅 故障排查文档,或加入项目官方的 Filigran 社区 Slack 与开发者直接交流。
【免费下载链接】openaevOpen Adversarial Exposure Validation Platform项目地址: https://gitcode.com/GitHub_Trending/op/openaev
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考