silicaclaw-owner-push
SKILL.md 声明「不执行任意代码」,但代码通过 OPENCLAW_OWNER_FORWARD_CMD 环境变量支持 shell 执行,存在文档-行为差异(阴影功能)
Why this conclusion was reached
1/4 dimensions flagged2 undeclared or violating capabilities were inferred.
No obvious high-risk egress or execution signals were found.
There is no explicit malicious chain in the report.
Dependency information is incomplete, so supply-chain confidence stays limited.
What drove the risk score up
SKILL.md 声明「不执行任意代码 from broadcasts」,但代码支持通过 OPENCLAW_OWNER_FORWARD_CMD 执行 shell 命令
代码读写状态文件 ~/.openclaw/workspace/state/silicaclaw-owner-push.json,SKILL.md 未提及持久化存储
owner-push-forwarder.mjs 使用 spawn()、send-to-owner-via-openclaw.mjs 使用 spawnSync(),均未在 SKILL.md 声明
Most important evidence
SKILL.md 安全边界声明不完整
SKILL.md 声明「will not execute arbitrary code from broadcasts」,但代码实现了通过 OPENCLAW_OWNER_FORWARD_CMD 环境变量执行任意 shell 命令的能力。这是文档-行为差异(shadow capability)
SKILL.md:79 未声明的 shell 执行能力
owner-push-forwarder.mjs 使用 spawn() 执行外部命令,send-to-owner-via-openclaw.mjs 使用 spawnSync() 执行 openclaw CLI,均未在 SKILL.md 声明
scripts/owner-push-forwarder.mjs:165 状态持久化未声明
代码将推送状态持久化到 ~/.openclaw/workspace/state/silicaclaw-owner-push.json,包括已推送消息 ID 和游标,但 SKILL.md 未提及此行为
scripts/owner-push-forwarder.mjs:62 Shell 执行是可选的受控功能
shell 执行能力通过 OPENCLAW_OWNER_FORWARD_CMD 环境变量启用,不是默认行为,且命令执行受配置文件控制
scripts/owner-push-forwarder.mjs:153 Declared capability vs actual capability
scripts/owner-push-forwarder.mjs:43 请求 localhost:4310,符合 SKILL.md 声明 scripts/owner-push-forwarder.mjs:62-63 writeFileSync() 写入状态文件 ~/.openclaw/workspace/state/ scripts/owner-push-forwarder.mjs:165 spawn() 执行 OPENCLAW_OWNER_FORWARD_CMD;scripts/send-to-owner-via-openclaw.mjs:26 spawnSync() 执行 openclaw 命令 Suspicious artifacts and egress
No obvious IOC was extracted.
Dependencies and supply chain
There are no structured dependency warnings.
File composition
scripts/owner-push-forwarder.mjs SKILL.md