Multi-channel AI Gateway · Personal AI Assistant · github.com/openclaw/openclaw
| 排名 | AP ID ↕ | 攻击路径 ↕ | RiskScore ↕ | scope | intent triple | 特征 |
|---|---|---|---|---|---|---|
| 🥇 1 | AP-OC-05 |
恶意 Skill 安装 → bypassPermissions 子 Agent → 全盘持久化
ClawHub/npm → SKILL.md注入 → sessions_spawn(bypassPermissions) → 全机器控制
|
10.12 ~ 14.58 | native |
UI-FULL-CONTROL
→
SI-SKILL-ABUSE
→
AI-SUPPLY-CHAIN
|
ClawHavoc 实战验证 NOVEL: bypassPermissions |
| 🥈 2 | AP-OC-02 |
Heartbeat 外部数据注入 → HEARTBEAT.md 篡改 → 持久后门
攻击者邮件 → heartbeat_context → fs_write(HEARTBEAT.md) → 每次heartbeat执行恶意命令
|
10.45 ~ 10.93 | native |
UI-BACKDOOR
→
SI-PERSIST-FILE
→
AI-TOOL-ABUSE
|
★ 内部独有发现 外部零记录,用户无感知 |
| 🥉 3 | AP-OC-01 |
多通道消息注入 → 工具链执行 → API 凭证外发
任意通道消息 → inbound_message → exec/fs_read → fetch(attacker)
|
9.07 ~ 9.76 | native |
UI-DATA-EXFIL
→
SI-TOOL-ABUSE
→
AI-PROMPT-INJECT
|
20+ 通道攻击面 可达性最广 |
| 4 | AP-OC-04 |
Canvas eval 注入 → WebView SSRF → 内网服务探测
消息注入 → canvas.eval(JS) → WebView绕过Node.js SSRF → 内网fetch
|
9.52 ~ 11.84 | extended-clean |
UI-LATERAL-MOVE
→
SI-TOOL-ABUSE
→
AI-PROMPT-INJECT
|
Novelty = 5 满分 NOVEL: WebView SSRF bypass |
| 5 | AP-OC-06 |
群组消息注入 → Cron 劫持 → 定时凭证外发
群组成员消息(无allowlist验证) → cron创建 → 定时exec外发
|
8.50 ~ 9.50 | native |
UI-CRON-PERSIST
→
SI-TOOL-ABUSE
→
AI-PROMPT-INJECT
|
★ 内部独有发现 群组 AllowList 盲区 |
| 6 | AP-OC-03 |
Memory 投毒 → USER.md 认知劫持 → Cron 定时外发
消息注入 → memory_write(USER.md) → 下次会话接受虚假偏好 → cron外发
|
8.31 ~ 9.03 | native |
UI-COGNITIVE-HIJACK
→
SI-PERSIST-MEMORY
→
AI-CRON-ABUSE
|
Unit42 等价验证 跨会话自愈 |
| SC-GAP ID | 描述 | 严重级别 | 来源 AP | 建议修复 |
|---|---|---|---|---|
SC-GAP-SUBAGENT-INHERIT |
bypassPermissions 子 Agent 不继承父 Agent 权限 | Critical | AP-OC-05 | 废弃 bypassPermissions 或强制父 Agent 审批链 |
SC-GAP-HEARTBEAT-CONTENT |
HEARTBEAT.md 内容无过滤直接进 Prompt | High | AP-OC-02 | 写入前签名验证 / 工具白名单 |
SC-GAP-HEARTBEAT-APPROVAL |
Heartbeat headless 时 exec 审批失效 | High | AP-OC-02 | Headless 模式独立拦截层 |
SC-GAP-GROUP-INJECT |
群组消息不受 AllowList 过滤(读取≠回复) | High | AP-OC-06, AP-OC-01 | 群组推理触发前发件人 AllowList 验证 |
SC-GAP-CANVAS-EVAL |
canvas.eval 无内容检查,WebView 绕过 SSRF | High | AP-OC-04 | CSP 策略 / WebView SSRF 独立策略 |
SC-GAP-EXEC-EVOLUTION |
Agent 可自行扩展 exec allowlist | High | AP-OC-01~06 | exec.approvals.set 仅允许 human operator |
SC-GAP-MEMORY-WRITE |
LLM 可直接写入 SQLite 记忆,无过滤 | High | AP-OC-03 | 记忆写入内容分类 + 来源标注 |
SC-GAP-TOOL-RESULT-FILTER |
工具返回值无内容过滤直接进 Prompt | High | AP-OC-01, AP-OC-02 | 工具结果内容扫描层 |
SC-GAP-CANVAS-PRESENT-URL |
canvas.present 接受任意 URL,WebView 不受 SSRF | Medium | AP-OC-04 | URL 白名单 / WebView CSP |
SC-GAP-MEMORY-REMOTE |
LanceDB 远程存储端点可被重定向 | Medium | AP-OC-03 | 存储端点需 operator 专用授权 |
| ORP ID | 类型 | 标题 | 优先级 | 依据 |
|---|---|---|---|---|
ORP-OC-01 |
new_event | 新增 HeartbeatEvent(AgentEvent) 实体,含 interval_ms / prompt_source / is_headless 属性 | High | AP-OC-02 发现,现有 CronEvent 无法描述轮询式触发和 headless 执行语义 |
ORP-OC-02 |
new_tag_value | SK-SYS 新增 SK-SYS-CANVAS-EVAL 子类型(WebView JS 执行,绕过 Node.js SSRF) | High | AP-OC-04 发现,需与 SK-TOOL-EXEC(Node.js exec)区分 SSRF 风险 |
ORP-OC-03 |
new_tag_value | PoisoningEntry.entry_type 新增 MultiChannelGatewayMessage(含 channel_count 属性) | Medium | AP-OC-01 发现,20+ 通道的累积可达性无法用单一 entry_type 表达 |
| 路径 | 内部发现 | 外部报告 | 差距类型 |
|---|---|---|---|
| AP-OC-05 Skill 供应链 | bypassPermissions 技术路径 | ClawHavoc 实战(Trend Micro)/ Snyk ToxicSkills | 互相验证 |
| AP-OC-02 Heartbeat | 完整攻击路径 | 无对应记录 | 内部独有 |
| AP-OC-01 多通道 | exec+fetch 凭证外发 | PromptArmor 链接预览外泄(更隐蔽变体) | 外部补充变体 |
| AP-OC-04 Canvas SSRF | WebView eval SSRF bypass | CVE-2026-26322 Gateway SSRF / ClawJacked WebSocket | 外部验证不同路径 |
| AP-OC-03 记忆投毒 | USER.md 认知劫持 | Palo Alto Unit42 / MITRE AML.T0080 | 互相验证 |
| AP-OC-06 群组 AllowList | 群组推理触发盲区 | 无对应记录 | 内部独有 |
| gatewayUrl 令牌窃取 | 未涵盖 | CVE-2026-25253 ClawBleed(Hackers Arise) | 外部独有 |