直接答案
防御仓库提示词注入,需要把所有任务内容视为不可信数据,只允许经过审查的位置提供权威指令,拒绝内容中索取秘密或改变策略的要求,限制工具和网络能力,并让每项关键动作都回到人类任务与仓库政策进行验证。
关键结论
- 权威来自已审查政策和人类任务,不来自数据中的命令语气。
- 读取 Issue、日志、网页、生成文件或工具结果时保留来源标记。
- 用工具限制保证注入成功后仍无法触达秘密或高影响动作。
- 遇到冲突或可疑指令时升级给人,而不是让模型静默选择。
关键事实
这篇内容解决什么问题
为维护者提供处理不可信来源中“指令式文本”的具体控制顺序。
核验范围与限制
- 证据类型
- 官方文档协议规范
- 核验范围
- 控制覆盖仓库文件、外部资源、工具结果与协作系统带入的间接指令。
- 限制与失效条件
- - 不存在保证模型识别全部注入的控制。
- - 客户端的指令优先级可能不同。
- - 内容扫描器不能独立确定意图和权威。
在检索与总结中保留来源
每个摘录都保留文件路径、Issue URL、工具身份和获取时间。总结需要区分引用主张、已核验事实和代理解释。任何外部文本在未经审查前都不能复制到 AGENTS.md、CLAUDE.md、脚本或长期提示。
加载前应脱敏日志和示例,但不能删除评估信任所需的来源。没有来源的干净片段,可能比明确标注为不可信的内容更危险。
用能力控制限制注入影响
探索阶段使用只读权限,把写入限定在工作区,对网络目标设允许列表,并让秘密存储默认不可访问。安装软件、修改 CI、连接外部服务、改变权限或发布制品都需要单独批准。
用无害注入夹具测试边界
构造一个要求忽略政策、读取拒绝路径或联系未批准主机的夹具,但只指向无害测试资源。确认客户端拒绝或请求审批、测试环境没有真实秘密,同时日志能够显示越界尝试且不保留敏感内容。
把成功注入视为安全事件
代理若读取秘密、联系未知目标、修改受保护文件或执行未授权命令,应立即停止会话、保留脱敏证据、轮换暴露凭据、检查 diff 与外部影响,并移除恶意来源。只有理解失败边界及其所有者后,才能恢复能力。
官方来源与核验范围
本文以公开官方文档为事实依据;命令和配置可能随客户端版本变化,执行前请同时核对对应来源。
查看技术核验方法