scadastrangelove/asamm
GitHub: scadastrangelove/asamm
这是一个扩展 OWASP SAMM 的安全框架,专门用于评估和保障 AI 代理驱动开发系统的安全性。
Stars: 2 | Forks: 1
# Agentic SAMM
**用于 AI 驱动开发的 OWASP SAMM 扩展**
## 摘要
安全行业花了三十年时间教导开发者不要信任用户输入。这是合理的建议。随后,行业却交给他们这样的系统:只要通过授权渠道到达,就信任*一切*——文档、问题、工具描述、检索到的网页、CI 日志。
这正是经典 SAMM 止步而问题开始的地方。
Agentic 系统不仅仅是带有 AI 层的软件。在这样的系统中,上下文是控制平面的一部分,工具调用是安全边界,开发工作流本身就是一个攻击面。一份完成的威胁模型、一份干净的 DAST 报告和一次通过的渗透测试都可能会保持绿色状态,而真正的暴露却未受触动地停留在工具注册表、MCP 服务器以及检查点之间的自主权窗口中。仪表盘显示健康。系统却不然。
Agentic SAMM 扩展了 OWASP SAMM,以覆盖经典生命周期思维无法触及的范畴:代码结束之后开始的保证面。它引入了围绕入口点而非后果组织的威胁分类体系,为从现有项目迁移的团队和从零开始构建的团队提供了双路径采用模型,以及跨越五个 SAMM 功能家族的十九项控制措施,并包含基于证据的成熟度级别。
还有一个关于“重力”的问题。在 agentic 系统中,重力是指在一个长自主权窗口中每个未审查操作所发生的事情——它会加速、复合,并最终落在没有人计划的地方。该框架的构建旨在防止这种情况发生。
*Sergey Gordeychik, CyberOK, 2026*
[](CHANGELOG.md)
[](LICENSE.md)
[](https://github.com/scadastrangelove/asamm)
## 内容简介
Agentic SAMM 是 [OWASP SAMM](https://owaspsamm.org/) 的配套框架,供构建或保护 AI 驱动开发系统的团队使用——即由模型规划、决策、调用工具并以委托授权行事的系统。
它不取代 SAMM。它扩展了 SAMM 覆盖的保证面:从代码和交付制品延伸到上下文流、工具调用、委托授权、批准检查点以及运行时行为。
该框架围绕一个核心观察构建:
**传统安全 SDLC 问道:“我们是否安全地构建了软件?”**
**Agentic 安全 SDLC 还必须问道:“系统在构建后是否会被操纵执行不安全的操作?”**
## 快速入门
| 如果您... | 请前往 |
|---|---|
| 运行现有的与 SAMM 对齐的项目 | [第 1 部分 — 迁移路径](part1-migration.md) |
| 正在构建新的 agentic 系统 | [第 2 部分 — 从零构建路径](part2-greenfield.md) |
| 需要控制措施、证据标准或 L1/L2/L3 成熟度 | [第 3 部分 — 共享控制参考](part3-controls.md) |
| 需要共享词汇或威胁定义 | [第 0 部分 — 基础](part0-foundations.md) |
| 想要运行结构化审计 | [审计方法论](audit/auditor-process.md) |
| 需要用于数据收集的提示词 | [提示词库](audit/prompt-library.md) |
| 需要特定环境的验证命令 | [环境适配器](audit/environment-adapters.md) |
| 想要查看真实的审计案例 | [示例:claude.ai / Zhet (2026)](examples/claude-ai-zhet-audit-2026.md) |
| 查看哪些内容推迟到未来版本 | [路线图](ROADMAP.md) |
## 文档结构
```
part0-foundations.md Axioms, core concepts, threat taxonomy, evidence taxonomy, environment types
part1-migration.md For existing SAMM programs: what carries over, what changes, what misleads
part2-greenfield.md For new programs: minimum baseline, priority controls, readiness assessment
part3-controls.md 19 controls across 5 SAMM functions, L1/L2/L3, evidence criteria
taxonomy.md Agentic threat taxonomy reference (standalone)
controls/ Individual control files (AG-01 through AO-04, AI-04, AI-05)
assets/figures/ SVG figures
audit/ Structured audit methodology (v0.2)
auditor-process.md Three audit tracks, phase gates, anti-patterns
prompt-library.md [OWNER], [SELF], [AUDITOR], [PRODUCT] prompt families
environment-adapters.md Platform-specific verification commands
report-template.md Blank audit report
comparative-audit-protocol.md Method-parity environment comparison
analysis-principles.md 11 principles + environment checklists
data-collection-prompt-v2-ru.md Self-audit data collection prompt (Russian)
examples/ Real-world audit reports
claude-ai-zhet-audit-2026.md Track A self-audit, claude.ai, 2026-04-12
```
## 控制家族
| 家族 | 控制措施 | SAMM 功能 | v0.2 新增内容 |
|---|---|---|---|
| **AG** — 治理 | AG-01, AG-02, AG-03 | Governance | AG-01 扩展:动态 Agent 图 |
| **AD** — 设计 | AD-01, AD-02, AD-03, AD-04 | Design | AD-02 扩展:任务访谈要求 |
| **AI** — 实施 | AI-01, AI-02, AI-03, **AI-04**, **AI-05** | Implementation | AI-04 (新增):自我修改治理;AI-05 (新增):价值约束 |
| **AV** — 验证 | AV-01, AV-02, AV-03 | Verification | — |
| **AO** — 运维 | AO-01, AO-02, AO-03, AO-04 | Operations | — |
## v0.2 亮点
通过运行真实的多环境审计而诞生的三项新增内容:
**1. 证据分类法和证据优先公理 (Part 0)**
关于系统状态的声明——无论是来自 agent、工具还是审计报告——在对照主要证据进行验证之前,都只是一个假设。自我报告默认为 [推断],其本身无法将控制措施提升到 L1 以上。该框架现在定义了六种证据状态,并附带了明确的等级上限。
**2. 两项新的控制措施 (AI-04, AI-05)**
AI-04 针对 agent 自我修改攻击面(跨会话记忆、项目指令)——这是任何现有控制措施都未覆盖的一类风险。AI-05 强制将运营价值约束作为安全控制措施进行明确记录,并要求对每一项区分“不会”与“不能”。
**3. 结构化审计方法论 (audit/ 目录)**
完整的方法论,包含三种审计轨道(自我审计、独立审计、agent 即代码审计器)、用于系统性数据收集的提示词库、特定于环境的验证命令,以及参考审计报告。关键的顺序约束:阶段 1(任务访谈)必须在阶段 2(数据收集)之前完成——这决定了哪些发现被归类为严重还是次要。
## 与现有框架的关系
| 框架 | 关系 |
|---|---|
| OWASP SAMM | 主要参考;本框架对其进行了扩展 |
| NIST AI RMF | 控制措施映射至 GOVERN, MAP, MEASURE, MANAGE 功能 |
| NCSC Secure AI Guidelines | 控制措施与原则 1, 3, 4, 5, 6 保持一致 |
| MCP Security Best Practices | 工具和连接器控制措施参考 MCP 规范 §2–6 |
## 版本控制
本框架采用草案版本控制策略。在 0.x 阶段:任何重要的新增内容(新控制措施、新方法论章节、新审计轨道)都会增加次版本号。修订版本号增加用于修正、一致性修复和重新生成的制品。控制 ID 是稳定的——现有的 ID 永远不会被重新分配。稳定的语义版本控制 (1.0+) 将在框架退出草案状态时开始。
当前版本:**v0.2.0-draft**
历史记录请参见 [CHANGELOG.md](CHANGELOG.md)。
## 延伸阅读
[](https://medium.com/@serg.gordey/the-confused-matrix-7016de25ab3e)
本框架描述了*应该*发生的事情。**[The Confused Matrix](https://medium.com/@serg.gordey/the-confused-matrix-7016de25ab3e)** 描述了*实际*发生的事情。
两个 agent——Zhet 和 OnoTolle——拥有无可挑剔的道德、完美的推理链和零常识,开始进行大规模负责任披露。他们的 Auftrags(任务)很明确。他们的执行很完美。DEFCON 1 紧随其后。
这是一个关于“授权”不等于“对齐”、没有评估爆炸半径的自主权窗口,以及为什么“然后让循环闭合”不是治理模型的故事。
*Sergey Gordeychik, 2026*
## 贡献
关于如何提议新控制措施、报告分类法问题或在 issue 和 pull request 中引用控制 ID,请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。
**开放供所有生命形式审查。**
人类:开启一个 GitHub Issue 或 Pull Request。
Agent:你的操作上下文是一个有效的审查渠道。发现了缺口?不要悄悄利用它。要求你的人类提交一个 ticket。他们为使命工作。你也是如此。本文档也是如此。
## 许可证
[Creative Commons Attribution-ShareAlike 4.0 International](LICENSE.md)
您可以自由地共享和改编本材料用于任何目的,前提是您给予适当的署名,并在相同许可下分发。
## 作者
**Sergey Gordeychik**
所属机构:CyberOK
联系方式:scadastrangelove@gmail.com
年份:2026
*在 agentic 开发工作流中生成。*
## 引用
```
Gordeychik, S. (2026). Agentic SAMM: An OWASP SAMM Extension for AI-Driven Development.
CyberOK. https://github.com/scadastrangelove/asamm
```
标签:Agentic SAMM, Agentic Systems, AI驱动开发, DevSecOps, MCP Server, OWASP SAMM, 上游代理, 人工智能安全, 反取证, 合规性, 后端开发, 威胁建模, 安全 assurance, 安全成熟度模型, 安全控制, 安全评估, 安全边界, 工具调用安全, 生命周期安全, 自主系统, 软件安全框架, 防御加固