CCA-F 练习题库· Tool Design & MCP Integration
什么是 'tool result injection' 攻击,又该如何缓解?
- Atool result 中的恶意数据内嵌了指令,从而改变 agent 的行为;缓解方式是把 tool result 当作不可信数据,并在据其行动之前校验输出
- B攻击者用高并发请求淹没工具端点,直到配额耗尽、正常调用无法再被服务;缓解方式是按客户端限流
- C工具返回的值与它声明的 schema 类型不符,例如本该是数字的地方给了字符串;缓解方式是拿该 schema 校验返回结果
- D网络路径上的攻击者在传输途中截获工具调用,在其到达服务端前读取或改写参数;缓解方式是 TLS 加证书固定
正确答案:A
解析
Tool result injection 是间接 prompt injection 的一种形式:嵌在工具输出(网页、数据库记录、文件内容、API 响应)中的恶意数据带有类似指令的字符串,agent 可能会把它们当作合法指示去执行,从而改变自身行为。
缓解方式是把每一条 tool result 都当作不可信数据——绝不把结果中的字符串解释或执行为指令——并在据其行动之前对输出做校验/净化,使数据通道与控制通道保持分离。
- A说的正是这一点。干扰项描述的都是不相关的攻击,并配上不相关的防御。
- B是 DoS 洪泛攻击(限流)。
- C是数据类型/schema 不匹配(schema 校验)。
- D是中间人截获(TLS)。这些没有一个属于指令注入攻击。
延伸阅读
本题为本站自有原创练习题,非任何官方考试内容;解析对照 Anthropic 公开文档撰写, 如与最新文档不符请以官方为准。想在限时环境下检验水平,可参加 模拟考(题目与本页题库不重叠)。