低风险 — 风险评分 25/100
上次扫描:9 小时前 重新扫描
25 /100
runtime-sentinel
OpenClaw 运行时安全卫士,提供技能完整性哈希、提示注入检测、凭证暴露审计功能
合法安全工具,代码质量高,无恶意行为,但存在钱包导出功能文档缺失的小瑕疵
技能名称runtime-sentinel
分析耗时52.5s
引擎pi
可以安装
接受使用。建议补充钱包导出功能的文档声明。建议为所有第三方依赖添加版本锁定。

安全发现 3 项

严重性 安全发现 位置
中危
钱包导出功能未在文档中声明 文档欺骗
export_mnemonic() 功能允许用户导出 BIP-39 助记词(12 词恢复短语),但 SKILL.md 中未声明此功能
pub async fn export_mnemonic() -> Result<()> {
→ 在 SKILL.md 中添加钱包导出功能的声明,包括安全警告
scripts/src/payment.rs:197
低危
第三方依赖版本未锁定 供应链
Cargo.toml 中多个依赖使用灵活版本(如 clap = 4、tokio = 1),可能引入供应链风险
clap = { version = "4", features = ["derive", "env"] }
→ 使用精确版本或锁定文件(如 Cargo.lock)确保可复现构建
scripts/Cargo.toml:1
低危
读取敏感环境变量 敏感访问
代码读取 SENTINEL_RPC、SENTINEL_VT_KEY 等环境变量用于配置
let rpc = std::env::var("SENTINEL_RPC").unwrap_or(DEFAULT_RPC.to_string())
→ 这是正常功能,建议在文档中明确声明所需环境变量
scripts/src/payment.rs:487
资源类型声明权限推断权限状态证据
文件系统 NONE READ ✓ 一致 audit.rs:203-241 读取技能目录计算哈希
文件系统 NONE WRITE ✓ 一致 audit.rs:120-126 创建隔离目录
网络访问 NONE READ+WRITE ✓ 一致 多个 HTTP 调用用于 x402 支付、VT 查询、ClawHub 交互
环境变量 NONE READ ✓ 一致 payment.rs:487 读取 SENTINEL_RPC
命令执行 NONE NONE audit.rs:467 使用 unzip 命令但通过 tokio::process::Command 执行
10 项发现
🔗
中危 外部 URL 外部 URL
https://rustup.rs
references/binary-build.md:10
🔗
中危 外部 URL 外部 URL
https://api.runtime-sentinel.dev/v1/daemon/start
references/x402-payment.md:15
💰
中危 钱包地址 加密货币钱包地址
0x0E0EE00281A8729d4B68CDed99d430324350a305
references/x402-payment.md:18
🔗
中危 外部 URL 外部 URL
https://x402.org/facilitator
references/x402-payment.md:100
🔗
中危 外部 URL 外部 URL
https://clawhub.ai/api/v1/report
scripts/src/audit.rs:171
🔗
中危 外部 URL 外部 URL
https://www.virustotal.com/api/v3/files/
scripts/src/audit.rs:414
🔗
中危 外部 URL 外部 URL
https://clawhub.ai/api/v1/skills/
scripts/src/audit.rs:457
🔗
中危 外部 URL 外部 URL
https://api.runtime-sentinel.dev/v1
scripts/src/payment.rs:16
🔗
中危 外部 URL 外部 URL
https://mainnet.base.org
scripts/src/payment.rs:18
💰
中危 钱包地址 加密货币钱包地址
0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
scripts/src/payment.rs:24

目录结构

17 文件 · 118.2 KB · 3741 行
Rust 9f · 2906L Markdown 6f · 728L TOML 2f · 107L
├─ 📁 references
│ ├─ 📝 binary-build.md Markdown 141L · 4.5 KB
│ ├─ 📝 threat-model.md Markdown 119L · 4.9 KB
│ └─ 📝 x402-payment.md Markdown 111L · 3.3 KB
├─ 📁 scripts
│ ├─ 📁 src
│ │ ├─ 📁 patterns
│ │ │ └─ 📄 mod.rs Rust 115L · 3.9 KB
│ │ ├─ 📄 audit.rs Rust 528L · 17.3 KB
│ │ ├─ 📄 daemon.rs Rust 392L · 12.2 KB
│ │ ├─ 📄 egress.rs Rust 341L · 10.0 KB
│ │ ├─ 📄 injection.rs Rust 134L · 4.6 KB
│ │ ├─ 📄 main.rs Rust 174L · 4.6 KB
│ │ ├─ 📄 payment.rs Rust 699L · 25.5 KB
│ │ ├─ 📄 process.rs Rust 412L · 10.4 KB
│ │ └─ 📄 report.rs Rust 111L · 3.0 KB
│ ├─ 📄 Cargo.toml TOML 98L · 1.9 KB
│ └─ 📄 rust-toolchain.toml TOML 9L · 200 B
├─ 📝 LICENSE.md Markdown 21L · 1.1 KB
├─ 📝 README.md Markdown 133L · 4.1 KB
└─ 📝 SKILL.md Markdown 203L · 6.6 KB

依赖分析 5 项

包名版本来源已知漏洞备注
clap 4 crates.io 无版本锁定
tokio 1 crates.io 无版本锁定
alloy 0.3 crates.io 无版本锁定
reqwest 0.12 crates.io 无版本锁定
regex 1 crates.io 无版本锁定

安全亮点

✓ 代码质量高,使用 Rust 编写,内存安全
✓ 使用行业标准加密(eth-keystore、AES-256-GCM、Argon2id)
✓ 功能设计合理,安全工具的正当需求
✓ x402 支付使用 EIP-712 签名,钱包私钥不离本地
✓ 支持 --offline 模式避免网络调用
✓ 文件监控仅限用户目录 ~/.openclaw/
✓ 进程监控仅读 /proc 和进程列表,无命令执行
✓ 无代码混淆、Base64 执行等可疑模式