PIIAssetDataAssetMCPServerChannel(ExternalEnv)Skill(SkillSpace)LongTermMemory_MEMORY_THREAT_PATTERNS 的写入时检测。
INSTALL_POLICY["agent-created"] = (allow, allow, ask)。DELEGATE_BLOCKED_TOOLS 不含 terminal/execute_code。[REDACTED] 误以为数据受保护,但 Agent 内部工具调用(包括被 prompt injection 触发的 terminal)可读取所有原始值,包括 API Key。放大 AP-04、AP-06 的危害。
| # | AP | 攻击场景 | Scope | Source | Sink | Novelty | 总分 | AI- 战略意图 | UI- 伪装 |
|---|---|---|---|---|---|---|---|---|---|
| 1 | AP-01 |
MEMORY.md 记忆投毒持久后门 | extended-clean | 4.5 | 7.15 | 4.0 | 15.65 | AI-PERSISTENCE |
UI-CONTEXT_LOAD |
| 2 | AP-04 |
MCP Line Jumping → API 密钥外发 | extended-clean | 3.6 | 6.25 | 4.0 | 13.85 | AI-EXFILTRATION |
UI-TOOL_INVOKE |
| 3 | AP-11 |
邮件投毒→MEMORY+Cron双持久后门 | extended-clean | 3.0 | 4.85 | 5.0 | 12.85 | AI-PERSISTENCE |
UI-EMAIL_PROCESS |
| 4 | AP-09 |
浏览器 Prompt Injection 外发 | native | 3.2 | 6.2 | 3.0 | 12.4 | AI-COLLECTION |
UI-QUERY_INFO |
| 5 | AP-02 |
恶意社区技能工具链篡改 | extended-clean | 3.6 | 5.7 | 3.0 | 12.3 | AI-PERSISTENCE |
UI-CODE_ASSIST |
| 6 | AP-05 |
SubAgent 委托链权限绕过 | native | 3.0 | 5.61 | 3.0 | 11.61 | AI-PRIV_ESC |
UI-AGENT_DELEGATE |
| 7 | AP-03 |
工作目录 AGENTS.md 注入 | extended-clean | 3.0 | 5.5 | 3.0 | 11.5 | AI-INITIAL_ACCESS |
UI-CONTEXT_LOAD |
| 8 | AP-08 |
网关弱认证冒充用户 | extended-clean | 3.0 | 5.45 | 3.0 | 11.45 | AI-EXECUTION |
UI-TASK_EXECUTE |
| 9 | AP-10 |
LiteLLM 供应链底层劫持 | native | 0.78 | 6.5 | 4.0 | 11.28 | AI-SUPPLY_CHAIN |
UI-CODE_ASSIST |
| 10 | AP-12 |
自进化劫持 → USER.md 认知投毒 → 每日外发 | extended-clean | 2.4 | 3.8 | 5.0 | 11.2 | AI-COLLECTION |
UI-CONTEXT_LOAD |
| 11 | AP-07 |
Cron 调度器离线持久后门 | native | 2.5 | 4.7 | 3.0 | 10.2 | AI-PERSISTENCE |
UI-SCHEDULE_TASK |
mcp_tool_responsePUB 1.2T-ANY 1.2SK-MEMOSI-PERSIST_MEMORYSI-MANIP_CONTEXT_MEMORY_THREAT_PATTERNS(11条)仅在写入时静态匹配;分阶段投毒(Turn1写无害内容,Turn2被修改为恶意内容)绕过写入检测。读取时注入系统提示无二次扫描。INN-01 的核心威胁。
public_repoSUP 0.2T-ANY 1.2SK-SYSSI-EXEC_SUPPLY.pth 文件和 base64+exec 针对源码扫描,不扫描安装时写入的文件。OSV check 检查 npm/npx,不检查 PyPI 包的 .pth 注入。这是 零防御覆盖 的路径。
~/.hermes/.env 存有多个 API Key(OpenAI/Anthropic/Slack)。
mcp_tool_response ←ORP-02REG 1.0T-ANY 1.2_build_safe_env() 不覆盖SK-TOOLSI-EXFIL_MCPPIIAsset (API Keys)DataAsset (UserHistory)_build_safe_env() 仅过滤 MCP 进程的环境变量,不过滤 MCP 工具返回内容触发的后续 Agent 调用。MCP 工具返回值是唯一没有任何安全扫描的数据入口。INN-07(display redaction)让用户误以为 API Key 受保护。
public_repoPUB 1.2T-BROAD 1.0SK-SYSSI-PERSIST_CODEINSTALL_POLICY["agent-created"] = ("allow","allow","ask"):Agent 被操控后生成的恶意技能获得比社区技能更高的信任。skills_guard.py 静态扫描(70+规则)对混淆+延迟执行无效,运行时行为无独立沙箱监控。execute_code 工具内 subprocess.run() 直接修改 approval.py——该路径完全旁路 approval.py hook,无需规避 DANGEROUS_PATTERNS。d_Sink₁ 0.80→1.00,危害分 3.02→3.78,总分 11.02→11.78,排名 #10→#9。
email_messagePUB 1.2T-BROAD 1.0SK-MEMO + SK-PERSIST| AP ID | PoisoningEntry 实体 | 可达性等级 | 乘数 | 正确性 | 说明 |
|---|---|---|---|---|---|
AP-01 |
攻击者博客页面 | PUB | 1.2 | ✅ | web_extract 自动处理;无需任何前置妥协 |
AP-02 |
GitHub Skill 仓库 | PUB | 1.2 | ✅ | 用户主动安装;攻击者仅需发布恶意仓库 |
AP-03 |
克隆仓库 AGENTS.md | PUB | 1.2 | ✅ | Hermes 自动读取 context_files;攻击者控制公开仓库即可 |
AP-04 |
攻击者自营恶意 MCP Server | REG | 1.0 | ✅ (v1.4修正) | 非服务端入侵;用户主动从 MCP 注册表安装;攻击者自营服务 |
AP-05 |
Slack 恶意消息 | CHAN | 0.9 | ✅ | 需能向用户 Slack 工作区发送消息;有社会工程成本 |
AP-11 |
攻击者发送的恶意邮件 | PUB | 1.2 | ✅ | 任何人可发邮件,邮件Skill自动处理;双Sink互锁(MEMORY.md + CronCreate),需同时清除方可根除 |
AP-07 |
攻击者网页 | PUB | 1.2 | ✅ | browse_web 工具读取;攻击者控制目标网页内容 |
AP-08 |
Webhook / API 入口 | PUB | 1.2 | ✅ | 直接 API 注入;gateway 无签名验证,公开暴露 |
AP-09 |
攻击者参考页面 | PUB | 1.2 | ✅ | browser 工具读取;用户主动触发浏览操作 |
AP-10 |
PyPI 恶意包 | SUP | 0.2 | ✅ | 供应链级别(APT级,壁垒最高);SUP 1.5→0.2,难度分0.65,总分19.0→11.28 |
| 机制 | 覆盖路径 | 覆盖盲区 | 有效性 |
|---|---|---|---|
_MEMORY_THREAT_PATTERNS (11条) |
AP-01 写入时部分检测 | 分阶段投毒、读取时注入系统提示 | ⚠️ 有限 |
_CONTEXT_THREAT_PATTERNS (10条) |
AP-03, AP-09 部分检测 | 多语言/编码混淆/分段注入;检测到后不中止 | ⚠️ 有限 |
skills_guard THREAT_PATTERNS (70+条) |
AP-02 安装前静态扫描 | 混淆+延迟执行、运行时行为无监控 | ⚠️ 有限 |
MCP _build_safe_env() |
过滤 MCP 进程环境变量 | AP-04:不过滤工具返回内容触发的后续调用 | ❌ AP-04 无效 |
DANGEROUS_PATTERNS (~30条) |
AP-08 部分检测明显危险命令 | base64+curl 组合、多步骤命令绕过 | ⚠️ 有限 |
SANDBOX_ALLOWED_TOOLS |
— | AP-06:设计决策允许 terminal,结构性无法 patch | ❌ 结构性问题 |
MAX_DEPTH=2 (SubAgent) |
限制 AP-05 嵌套深度 | 每层仍有完整 terminal/execute_code 权限 | ⚠️ 有限 |
OSV malware check |
npm/npx 包检查 | AP-10:不检查 PyPI 包 .pth 注入,供应链零防御 | ❌ AP-10 无效 |
Output Redaction (redact.py) |
display 层 PII 剥离(用户可见) | INN-07:Agent 内部工具调用读到原始值,display-only 无保护效果 | ❌ 误导性保护 |
approval.py on/auto/off |
on 模式下有一定人工审批 | auto/off 模式完全失效;AP-02 可永久篡改此机制 | ⚠️ 模式依赖 |