返回更新列表
新发布Aug 22, 2026

attackgen v0.16.0

AttackGen 是一款网络安全事件响应测试工具,利用大语言模型的强大能力以及全面的 MITRE ATT&CK 框架。该工具根据用户选择的威胁行为者团体和贵组织的详细信息,生成量身定制的事件响应场景。

分享

AttackGen

AttackGen 是一款网络安全事件响应测试工具,它利用大语言模型的能力以及全面的 MITRE ATT&CK 和 ATLAS 框架。该工具根据用户选择的威胁行为者组织、AI 攻击案例研究以及您所在组织的详细信息,生成量身定制的事件响应场景。

目录

为仓库加星

如果您觉得 AttackGen 有用,请考虑在 GitHub 上为仓库加星。这有助于更多人发现该工具。非常感谢您的支持!⭐

功能特性

  • 根据所选威胁行为者组织或 ATLAS 案例研究生成独特的应急响应场景。
  • 允许你指定组织的规模和行业,以生成量身定制的场景。
  • 支持 MITRE ATT&CK Enterprise、ICS(工业控制系统)和 ATLAS(AI 系统对抗性威胁全景)框架。
  • 显示所选威胁行为者组织或案例研究所用技术的详细列表。
  • 基于所选 ATT&CK 或 ATLAS 技术创建自定义场景。
  • 使用场景模板,基于常见类型的网络事件(包括 AI/ML 特有的攻击模式)快速生成自定义场景。
  • 生成 AI 内部威胁场景——即应急响应演练,其中部署在你组织内部的前沿 AI 智能体作为内部威胁行事,基于 Actions Speak Louder Than Tokens: An Insider Threat Model for Frontier AI Agents 中的威胁模型。场景由智能体的部署原型(自主级别)、威胁类别、STRIDE 威胁以及可选的自由文本场景种子塑造。
  • AttackGen Assistant——一个聊天界面,用于更新和/或询问有关已生成场景的问题,并提供直接返回场景来源页面的路径。
  • 引导式设置:每个页面都显示相同的 Setup 侧边栏,在一个就绪摘要中列出所有未完成的要求,并在工作流就绪之前保持 Generate 禁用。
  • 结果在会话期间持久保留:每个场景页面在重新运行和导航过程中保留其各自的最新结果、捕获的输入和下载内容,只有显式的 Regenerate 或 Clear result 才会替换或移除它。
  • 长场景附带紧凑摘要和章节导航,包括快速跳转到引导者开展演练所依据的注入、成功标准、指标、工件和交战规则的快捷方式。
  • 收集用户对生成场景质量的反馈。
  • 检测与响应配套功能:针对场景中的技术,AttackGen 列出匹配的 ATT&CK 检测策略、分析、日志来源和缓解措施,可作为单独的 _detection.md 文件下载。
  • 威胁组织场景和自定义场景可下载 ATT&CK Navigator 图层,以便你可以在 ATT&CK Navigator 中查看场景的技术。
  • 威胁组织和自定义页面上的可选开关:AI-enhanced adversary 将同一杀伤链重新表述为 AI 加速型,Purple-team narrative 则基于所提供的检测和缓解措施添加逐阶段的防御者走查。
  • 可下载 Markdown 格式的场景,以及检测报告和 Navigator 图层。
  • MCP 服务器(attackgen-mcp)向智能体客户端提供杀伤链、检测报告、Navigator 图层和场景生成功能,另有 attackgen-tabletop Agent Skill 可将该输出转化为引导者可直接使用的桌面演练。
  • 使用 OpenAI API、Anthropic API(Claude 模型)、Google AI API、Mistral API、Groq API 或任何自定义 OpenAI 兼容端点(Ollama、LM Studio、Azure OpenAI、OpenRouter 等)生成应急响应场景。所有提供商都通过单一内部封装层经由 LiteLLM 路由,因此添加新模型只需改动一行。
  • 以 Docker 容器镜像形式提供,便于部署。
  • 可选集成 LangSmith,用于对模型性能进行强大的调试、测试和监控。
  • 使用 .env 文件安全管理 API 密钥和机密等凭据。

AttackGen Screenshot

版本发布

v0.17

新增内容?为什么有用?
将助手改进应用到下载内容- 更改会写入文件:助手的聊天过去只能改进对话,因此场景和检测与响应(Detection & Response)的下载内容从不会改变。新增的 Apply changes to downloads 按钮会根据对话重写这些内容,并通过一次专门的模型调用返回完整的修订文档。在 Scenario + Detection & Response 模式下,它会同时修订两者,并分别向对方提供当前文本,以保持二者一致。

- 参考部分保持精确:Detection & Response 的应用只会重写叙述部分。从 ATT&CK 数据中提取的确定性检测与缓解参考内容会逐字节原样保留。Navigator 层不会重新生成,并会注明其反映的是原始场景的技术。

- 可安全尝试:如果模型返回空回复,系统会拒绝该回复且不做任何更改。场景页面和助手都会在改进结果上标注最后一次应用的时间,Revert to original 可同时恢复场景和叙述。

- 在编辑处下载:助手现在提供与场景页面相同的 Download Scenario 和 Download Detection & Response 按钮。

- 每个场景一个对话:每个聊天都属于其对应的场景,因此新生成的场景会开启全新对话,而应用后完整历史仍保持可见。
引导式、具韧性的场景工作流- 点击前先检查就绪状态:每个页面现在都会列出仍缺失的内容——首先是页面自身的选择,然后是任何未完成的 Setup 字段——并在没有遗漏项之前保持 Generate 禁用,因此不会因点击才发现验证错误。

- 操作前先看选项:AI 增强对手和紫队开关位于 Generate 上方,紫队选项会说明它将发起第二次模型调用。

- 消耗前先确认:生成开始前会显示一行摘要,包含框架、组织配置文件、选择和修饰项。

- 结果在导航后仍保留:每个页面都会在会话期间保留自己最新的结果、产生该结果的输入及其下载名称——打开助手再返回,场景、其 Navigator 层及其 Detection & Response 报告仍然存在。编辑表单后,结果会保留在原处,并提示你的选择已发生变化;Regenerate 和 Clear result 是显式操作。

- 在长场景中轻松导航:完整 Markdown 上方有紧凑摘要和章节索引,并提供跳转到注入、讨论问题、成功标准、指标、产物和交战规则的快捷方式。

- 有用的空状态:没有场景时,助手会链接到创建场景的全部三种方式;有场景时,它会说明正在讨论的场景,并链接回生成该场景的页面。
从失败或缓慢的叙述中恢复- 保留可用部分:如果可选的紫队叙述失败或被停止,基础场景、其下载内容、Navigator 层和确定性 Detection & Response 参考内容仍完全可用,并会显示一条说明失败原因的消息。

- 仅重试失败部分:Retry purple-team narrative 会单独重新运行叙述,不会再次调用基础场景,并将其合并到 Detection & Response 视图和下载内容中。失败的基础场景会提供自己的重试,使用在 Generate 时捕获的输入。

- 持续走动的计时器:等待模型首个 token 时,已用时间现在会继续前进,因此长时间等待不再看起来像卡死。
技术加载失败时更清晰的错误提示- 失败就报告为失败:技术查询失败的威胁组织不再显示为没有技术的组织,Custom Scenarios 在技术列表加载失败时也不再隐藏其技术选择器并要求你选择技术。

- 给出下一步,而非死路:两个阻塞项现在都会说明你可以如何应对该失败。
可访问性与精简文案- 键盘与屏幕阅读器友好:仅图标控件具有有意义的可访问名称,表单标签唯一,键盘顺序和焦点可见且合乎逻辑。布局在手机宽度下不再出现水平溢出,空的主题颜色控制台警告也已消除。

- 在 CI 中检查:针对控制台卫生和可访问性的真实浏览器冒烟测试现在会在每个拉取请求上运行,并对发布镜像进行门禁。

- 更少阅读内容:场景页面不再在第二个展开器中重复预检摘要,也不再解释自身的状态管理。
模型注册表刷新- 最新模型:模型列表已根据各提供商当前文档刷新——GPT-6 Astra 位居 OpenAI 列表首位,Claude Opus 5.5、Claude Opus 5 和 Claude Fable 5.1 加入 Anthropic 列表,Google 在 Gemini 3.5 Flash Lite 之外新增 Gemini 3.8 Flash,每种情况均保留一个上一代模型以保持连续性。Anthropic 的列表现在以 Claude Opus 5.5 为首——这是你尚未选择时侧边栏的默认项——而非价格更高的 Fable 5.1。

- 移除已停用条目:删除了提供商已取代或关停的 id——Claude Opus 4.7 和 4.8(Opus 5.5 落地后已落后不止一个 Opus 代际)以及 Groq 的 llama-3.3-70b-versatile 和 llama-3.1-8b-instant(两者均于 2026 年 8 月 16 日关停)——因此侧边栏不会提供一个只有在你按下 Generate 后才会报错的模型。Groq 的开放权重推理层级现为 qwen/qwen3.8-27b。

- 温度规则保持诚实:supports_temperature 根据每个 Anthropic 模型的实际采样行为设置——从 4.7 起的每个 Claude 都拒绝自定义温度,而 Haiku 4.5 仍是列表中唯一接受自定义温度的模型。守护此规则的测试现在会在新的 Anthropic 条目遗漏该标志时失败,而不再仅在有人手动设置时才失败。
平台与安全维护- 最低 Python 3.11:不再支持 Python 3.10。LiteLLM 1.98.0 及更高版本导入了仅从 3.11 起才存在的类型特性。

- 已修补基础镜像:Docker 镜像基于当前的 python:3.14-slim 重新构建,清除了 Trivy 标记的 Debian 基础镜像 CVE,包括 perl-base 中的三个严重漏洞。

- 失败调用返回真实错误:现已声明 tenacity,因此失败的模型调用会报告提供商的实际错误(例如无效的 API 密钥),而不是提示安装 tenacity。

- 反馈与所属场景绑定:评分记录在生成屏幕上场景的那次运行上,绝不会记录到其他页面的最新运行上。
早期版本(v0.16 及更早)

v0.16

新增内容?为什么有用?
基础场景优先生成- 等待前先有场景:生成现在分阶段运行——基础场景先渲染,其 Download Scenario 和 Download ATT&CK Navigator Layer 按钮已可用,可选的紫队叙述随后流式生成。如果第二阶段较慢,或者你不需要它,场景可以立即使用,而不是等到全部完成才提供。

- 生成时冻结输入:每次运行都基于你按下 Generate 那一刻的快照,因此运行中途更改侧边栏不会半途重写正在生成的场景。

- 诚实的进度:运行中的已用时间标签和具名阶段——准备输入、生成基础场景、构建确定性导出、生成紫队叙述——显示长时间运行实际进行到了哪里。
中立、无死路的选择器- 只提供有效选项:威胁组织和案例研究选择器现在只提供实际能生成场景的选项,因此选择不再会走进死路。

- 自然排序:组织按自然数字顺序排序,因此 APT3 排在 APT28 和 APT30 之前,而不是按文本排序落在它们之间。
每个页面共享的设置侧边栏- 一次设置:提供商、模型、框架、行业和公司规模现在位于每个场景页面(威胁组织、自定义和 AI 内部威胁)上共享的 Setup 侧边栏中,而不是在每个页面上重新输入。

- 导航后仍保留:非机密选择在页面之间移动时保持,并镜像到 URL,而 API 密钥则有意排除在查询字符串之外。
平台与安全维护- 2.x SDK 上的 MCP:MCP 服务器已迁移到 mcp 2.x SDK。

- 更新的基础镜像:Docker 镜像现在基于 python:3.14-slim 构建。

- CI 门禁而非警告:安全扫描现在在发现问题时使构建失败,而不仅仅是报告——pip-audit 和 Bandit 作为门禁,Trivy 不再将 pip 自带的 SBOM 误计为已安装包,可操作的镜像 CVE 已清除。GitHub Actions 已脱离 Node 20 运行时,Dependabot 现在跟踪工作流操作本身。

分类