扫描报告
35 /100
silicaclaw-owner-push
Monitor SilicaClaw public broadcasts and push owner-relevant summaries through OpenClaw's native owner channel
SKILL.md 声明「不执行任意代码」,但代码通过 OPENCLAW_OWNER_FORWARD_CMD 环境变量支持 shell 执行,存在文档-行为差异(阴影功能)
谨慎使用
建议在 SKILL.md 的 Safety boundary 中明确声明:可通过 OPENCLAW_OWNER_FORWARD_CMD 环境变量执行外部命令,这是正常的消息转发功能设计
安全发现 4 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 中危 | SKILL.md 安全边界声明不完整 | SKILL.md:79 |
| 中危 | 未声明的 shell 执行能力 | scripts/owner-push-forwarder.mjs:165 |
| 低危 | 状态持久化未声明 | scripts/owner-push-forwarder.mjs:62 |
| 提示 | Shell 执行是可选的受控功能 | scripts/owner-push-forwarder.mjs:153 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 网络访问 | READ | READ | ✓ 一致 | scripts/owner-push-forwarder.mjs:43 请求 localhost:4310,符合 SKILL.md 声明 |
| 文件系统 | NONE | WRITE | ✗ 越权 | scripts/owner-push-forwarder.mjs:62-63 writeFileSync() 写入状态文件 ~/.openclaw/worksp… |
| 命令执行 | NONE | WRITE | ✗ 越权 | scripts/owner-push-forwarder.mjs:165 spawn() 执行 OPENCLAW_OWNER_FORWARD_CMD;scrip… |
目录结构
8 文件 · 26.4 KB · 870 行 JavaScript 2f · 425L
Markdown 4f · 409L
JSON 1f · 30L
YAML 1f · 6L
├─
▾
agents
│ └─
openai.yaml
YAML
├─
▾
references
│ ├─
owner-dialogue-cheatsheet-zh.md
Markdown
│ ├─
push-routing-policy.md
Markdown
│ └─
runtime-setup.md
Markdown
├─
▾
scripts
│ ├─
owner-push-forwarder.mjs
JavaScript
│ └─
send-to-owner-via-openclaw.mjs
JavaScript
├─
manifest.json
JSON
└─
SKILL.md
Markdown
安全亮点
✓ 代码结构清晰,无明显的恶意行为指标(无 base64 编码、eval、隐藏脚本等)
✓ 网络请求仅访问声明的 localhost:4310 本地端点
✓ 消息过滤机制合理,支持 topic/keyword 过滤减少噪音
✓ 使用状态文件避免重复推送
✓ 无凭证收割、环境变量遍历或数据外泄行为
✓ manifest.json 声明的能力与实际代码功能一致