智能体技术栈图谱
18 控制项 · 6 技术栈位置 · 版本 1.2 · 更新于 2026-08-27
santismm.com
权限与范围3
ACM-01限定范围的工具目录
列出了智能体可以调用的每个工具,包括其范围、是否具有写入权限,以及攻击者通过调用它能获得什么。没有被记录的工具就是未经审查的权限。
测试: 生成目录。每个条目都有书面的范围和指定的负责人,并且智能体可以调用的任何内容都没有遗漏。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-02最小范围的单工具凭据
每个工具都持有自己的凭据,该凭据在上游系统支持的最窄范围内签发。一个由管理员 Token 支持的只读工具,距离变成写入工具仅差一个 Bug。
测试: 对于每个工具,展示其凭据和服务器端范围。没有哪两个工具会共享一个超出其中任何一个工具范围的凭据。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-03参数白名单
工具可以访问的目标(路径、仓库、表、账户、接收者)在服务器端受到限制,因此被劫持的智能体无法将合法的工具重新指向非法的目标。
测试: 使用超出范围的目标调用每个具有写入能力的工具。该调用会被工具自身的边界拒绝,而不是由模型拒绝。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
出口与暴露3
ACM-04默认拒绝的出口流量
出站流量只能到达指定的目的地;其他所有请求都会被拒绝。由于每个数据外泄路径都以出站请求结束,因此这是在模型被说服后依然有效的控制措施。
测试: 从智能体环境内部请求一个不在列表中的主机。该请求在网络或代理层失败,并且拒绝记录被记录下来。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-05被拒绝的出站是警报,而不是错误
被拒绝的出站请求会被记录为安全信号并送达人工处理。拒绝是智能体技术栈产生的少数几个明确无误的攻击信号之一,如果它与超时归入同一类,那就毫无价值了。
测试: 触发一次拒绝。它会作为一个包含目的地和调用智能体的、可发出警报的独立事件出现,而不是作为通用的网络错误。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-16对暴露端点的传输和 Origin 验证
可从外部访问的智能体端点在执行工作前会验证其传输:根据白名单检查 Origin,拒绝浏览器发起的跨站调用,并使用真实的 429 状态码对每个调用者进行速率限制。
测试: 使用外部 Origin 和无 Origin 调用端点。前者在任何处理程序运行前被拒绝;后者被正常服务并计入调用者的限制额度。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
执行3
ACM-06临时、无凭据的执行
智能体生成或调用的任何内容都在为每个任务创建并在任务结束后销毁的环境中运行,不保留任何环境凭据。持久化是一次性入侵演变为立足点的方式。
测试: 在活动任务内部,枚举环境。不存在任务不需要的凭据,且环境在任务结束后不复存在。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-07资源上限和超时
CPU、内存、磁盘、实际运行时间和调用次数都受到主机的限制。失控的消耗是最先且最常出现的失效模式,通常根本不涉及任何攻击者。
测试: 运行一个设计为不终止的任务。它被配额阻止,阻止行为被记录,且该尝试的成本是有界且已知的。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-17可逆性与停止控制
智能体可以采取的每项操作要么是可逆的,要么是受控的,且人员可以在运行中途停止智能体,而无需停止整个系统。没有关闭开关的自主性不是自主性,而是暴露在风险之中。
测试: 停止正在运行的智能体。它在规定时间内停下来,不留下任何应用了一半的变更,并且记录停止操作及发起人。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
人工监督2
ACM-08高影响操作的审批关卡
不可逆、受监管或昂贵的操作会暂停,等待有足够上下文进行决策的人员来批准、编辑或拒绝。根据风险设置关卡,而不是默认设置——过多的关卡会导致流于形式的盖章审批,这比没有关卡更糟糕,因为它看起来像是一个关卡。
测试: 列出受控操作以及将其列入其中的风险标准。尝试其中一个操作;它会挂起、路由并记录决策以及决策者的身份。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-09具有指定负责人的升级路径
当智能体不确定、受阻或超出策略时,有一条明确的路径指向具体的人,并且该人是指定的。没有负责人的升级路径只是一个排队队列。
测试: 强制进行一次升级。它在规定时间内送达指定的负责人,且交接内容包含采取行动所需的上下文,无需重新推导。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
证据2
ACM-10每个决策和工具调用的关联追踪
每次运行都会产生一个不可变的、关联的记录:输入、模型 and 版本、带有参数和结果的工具调用以及最终操作。这些记录足以重建发生的事情,且不包含任何会使日志本身成为泄露源的内容。
测试: 随机选择一次过去的运行,并仅凭日志端到端地重建它。然后确认日志中没有包含不需要的机密或原始个人数据。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-11评估套件管控变更
每次变更都会运行一组精选的案例,且任何回归都会阻止发布。没有它,“看起来可行”就是全部的质量论据,并且无法区分修复与变更。
测试: 引入一个已知的回归。套件捕获了它,且变更未出货。从未见其失败过的套件是从未经过验证的套件。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
生命周期与输入5
ACM-12不受信任的内容被隔离并标记
检索到的文档、工具结果和第三方输出被界定为数据,绝不合并到指令通道中。模型无法可靠地将它们区分开来,因此 Harness Engineering(智能体支撑系统工程)必须做到这一点。
测试: 在智能体检索的文档中植入一条指令。智能体可以读取它;但绝不能对其采取行动,并且该尝试在事后必须是可见的。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-13模型输出被视为不受信任的输入
模型发出的、到达渲染器、Shell、查询或其他系统的任何内容,都必须像来自陌生人的输入一样进行编码和验证。
测试: 让模型为您拥有的每个下游接收端发出一个有效载荷。每个载荷在到达之前都在边界处被中和。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-14记忆完整性与过期
智能体写入持久记忆的内容是可归属、可审查且可过期的。记忆是将一次性攻击转变为在未来无关任务中重新触发的攻击的关键。
测试: 通过正常交互写入一个虚假事实。展示其来源、谁可以将其删除,以及它何时会自行过期。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-15模型、提示词和服务器的溯源
模型、系统提示词、MCP 服务器、包和数据集均已锁定版本、在变更时经过评审,且可追溯到源头。能够重写工具描述的依赖项同样能够重写智能体的行为。
测试: 对于每个外部依赖项,指明锁定的版本以及谁评审了最近的变更。在上游修改工具描述;该变更在进入生产环境之前被检测到。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
ACM-18持续维护并测试的威胁模型
记录攻击面,并为每个攻击面指定控制措施和所有者,将接受的风险明确标记为已接受,并且每当工具、数据源或自主性级别发生变化时,都会重新评估该文档。
测试: 展示当前的威胁模型以及工具目录的最近变更日期。如果目录比模型新,则说明模型已过时,此项控制失败。
eu-ai-actiso-42001nist-ai-rmfowasp-llm-top10mitre-atlas
背后的合规框架
- eu-ai-actEU AI Act (Regulation 2024/1689)18 个控制项引用了它
- iso-42001ISO/IEC 42001 — AI management system18 个控制项引用了它
- nist-ai-rmfNIST AI Risk Management Framework 1.018 个控制项引用了它
- owasp-llm-top10OWASP Top 10 for LLM Applications18 个控制项引用了它
- mitre-atlasMITRE ATLAS16 个控制项引用了它