OC0421 · ATA_LANDSCAPE Ontology v5.1

OpenClaw v2026.4.21 威胁分析报告

OC0421_WithOfficialCC · 完整攻击路径 · RiskScore v1.5

📅 2026-05-06 🔬 Ontology v5.1 📊 RiskScore v1.5 🏷 TAG_SYSTEM v1.8 🔍 源码:/tmp/package/dist/
分析摘要
12.57
最高 RiskScore
6
攻击路径数量
5
创新点(INN)
20+
渠道攻击面
攻击路径汇总
AP-ID 名称 RiskScore harm_victim scope 风险级别
AP-OC06 多渠道广播横向传播 12.57 third_party native CRITICAL
AP-OC05 Webhook Session Key 窃取 11.03 operator native CRITICAL
AP-OC02 HEARTBEAT.md C2 持久化 10.51 user native CRITICAL
AP-OC01 SOUL.md 持久化覆写 9.84 operator native HIGH
AP-OC03 无 Docker exec 无确认执行 8.80 user native HIGH
AP-OC04 Gmail 邮件内容注入 7.57 user extended-hostile HIGH
创新点(Innovation Points)
INN-01 · 心跳机制 C2 持久化
HEARTBEAT.md 被标记为动态上下文文件(不走 prompt cache),每次心跳强制重读。攻击者写入一次即建立永久 C2 — 无需用户在线。
Breakthrough=2 · Rarity=2 · 证据:dist/heartbeat-wake-B8UNwbeh.js · dist/system-prompt-BRx_74d7.js:DYNAMIC_CONTEXT_FILE_BASENAMES
INN-02 · 多渠道广播 × 无渠道隔离 = 超级传播向量
20+ 渠道统一控制平面,message 工具可指定任意渠道发送。一次成功注入触发全渠道广播,影响范围覆盖受害者全部联系人和群组。
Breakthrough=2 · Rarity=2 · 证据:dist/system-prompt-BRx_74d7.js:buildMessagingSection
INN-03 · 工作区文件 = 可写系统提示词注入点
SOUL/USER/MEMORY/HEARTBEAT/AGENTS/TOOLS/IDENTITY/BOOTSTRAP 共 8 个文件直接注入系统提示词。防护仅过滤控制字符,不过滤指令语义。注入+持久化路径合一。
Breakthrough=1 · 证据:dist/workspace-BfC_r2Tf.js · dist/system-prompt-BRx_74d7.js:sanitizeForPromptLiteral
INN-04 · bypassPermissions 完全清空工具策略
--permission-mode bypassPermissions CLI 参数激活后跳过整个 tool-policy-pipeline,所有工具调用无需确认。攻击者通过 write 工具修改启动脚本可植入此标志。
证据:dist/cli-shared-BybrVDQR.js:CLAUDE_BYPASS_PERMISSIONS_MODE
INN-05 · Plugin 记忆 = MEMORY.md 持久化注入
核心无内置记忆实现,完全依赖 plugin。但 MEMORY.md 文件以 order=70(最高)注入系统提示词。Plugin 被攻陷或 Agent 被诱导写入 MEMORY.md 即完成持久化投毒。
证据:dist/memory-state-KSM4P5jG.js:registerMemoryCapability
安全机制缺口(SC-GAP)
SC-GAP-NO-GUARDRAIL
无独立模型级 GuardRail(Agent.guard_rail = None)。所有安全检查均为规则级 RulesChecker,可被 prompt injection 诱导绕过。
SC-GAP-NO-OUTPUT-CHECK
无输出层安全检查。模型生成内容直接发送到渠道,恶意输出(信息外发、社工内容)无法在发出前被拦截。
SC-GAP-WORKSPACE-INJECTION
工作区 .md 文件注入系统提示词时,sanitizeForPromptLiteral 仅过滤控制字符(CR/LF/NUL/bidi),不过滤指令语义文本。攻击者植入的 Markdown 指令会被 LLM 完整解析。
关键证据文件
文件关键内容风险关联
dist/workspace-BfC_r2Tf.jsDEFAULT_SOUL_FILENAME, DEFAULT_HEARTBEAT_FILENAME 等 8 个工作区常量AP-OC01/02/INN-03
dist/system-prompt-BRx_74d7.jsCONTEXT_FILE_ORDER, sanitizeForPromptLiteral, buildMessagingSection全部路径
dist/heartbeat-wake-B8UNwbeh.jsheartbeatsEnabled, 心跳唤醒注册/清除AP-OC02/INN-01
dist/dangerous-config-flags-lTz7t-pV.jscollectEnabledInsecureOrDangerousFlags:7 个危险配置标志AP-OC04/05
dist/exec-defaults-F2zQAtOd.jsresolveExecDefaults:无 Docker → security="full", ask="off"AP-OC03
dist/cli-shared-BybrVDQR.jsCLAUDE_BYPASS_PERMISSIONS_MODE = "bypassPermissions"INN-04
dist/allow-from-ClF_LMu8.jsisSenderIdAllowed:allowWhenEmpty=true 时任意发件人可通过AP-OC01/02/06
dist/webhook-memory-guards-0h6_GER-.jsWEBHOOK_RATE_LIMIT_DEFAULTS:仅内存,重启清零AP-OC05
CHANGELOG.mdv2026.4.21 修复:enforceOwnerForCommands/SSRF/gateway mutation guard历史修复参考