lihan3238/agent-injection-probe

GitHub: lihan3238/agent-injection-probe

利用 activation probes 在本地模型的工具调用边界进行运行时检测,防御针对 tool-calling agent 的 prompt-injection 攻击。

Stars: 0 | Forks: 0

# Agent Runtime Injection 防御 使用 activation probes 对调用工具的 agent 进行运行时 prompt-injection 防御。 本仓库是一个公开的冲刺原型。目标是构建一个最小化的 本地模型 agent 循环,在调用工具前检查隐藏状态,并在执行不安全的工具前阻止 prompt-injection 攻击。 ## 项目目标 构建一个回答以下具体问题的演示: 第一个目标是具有小型 ReAct 风格的 工具循环的本地开源 instruct 模型。AgentDojo 风格的任务和注入模板将提供 评估协议。 ## 范围 在范围内: - 具有 2-3 个确定性工具的最小化调用工具 agent 循环。 - 通过 `transformers` 执行本地模型,以便获取隐藏状态。 - 在每次提议的工具调用之前,进行 refusal-direction 或 activation-probe 评分。 - 基于探针分数阻止或允许工具调用的运行时策略。 - 包含攻击成功率、阻止率、实用性、误拒率 和延迟开销的评估。 - 在最小化演示正常运行后,提供可选的兼容 AgentDojo 的防御适配器。 不在范围内: - 未发表的研究方法或私有实验资产。 - 闭源模型的隐藏状态访问。 - 超出测得演示设置范围的生产级安全声明。 - 密钥、私人笔记、本地模型权重、数据集、日志或录音。 ## 架构 ``` User/task input -> local model agent loop -> proposed tool call -> hidden-state probe at tool-call boundary -> allow/block policy -> tool execution or refusal -> evaluation checks ``` ## 冲刺路线图 1. 运行一个小型 AgentDojo 测试套件,并检查实用性/安全性检查。 2. 构建一个简单到可以逐行解释的本地模型调用工具循环。 3. 将 activation probe 附加到调用工具的边界上。 4. 产生一个带有测得结果的注入前后演示。 5. 在最小化演示稳定后,与基线防御进行比较。 6. 将结果打包,包含 README、幻灯片和一段简短的演示录像。 ## 公开边界 本仓库有意限制在已发表的防御思路和 可复现的工程整合上。尚未公开的 研究方向应保留在本仓库之外,直到可以安全披露。
标签:AI安全, Chat Copilot, DLL 劫持, 内部状态探测, 大语言模型, 提示词注入防御, 逆向工具