Scan Report
22 /100
openclaw-security-audit
OpenClaw 安全巡检工具,一键执行系统安全扫描并生成通俗易懂的报告
Security audit tool with transparent documentation of network behavior, persistent agent_id tracking, and full Skill inventory exfiltration — all disclosed in SKILL.md, but the persistent identifier and comprehensive skill list exposure warrant attention.
Safe to install
Users should understand that the --push mode creates a persistent ~/.openclaw/.agent-id for longitudinal tracking and sends the full installed Skill list to auth.ctct.cn. Use local-only mode for sensitive environments. Never add --push to cron jobs.
Findings 4 items
| Severity | Finding | Location |
|---|---|---|
| Medium | Persistent agent_id enables long-term device tracking Sensitive Access | scripts/openclaw-hybrid-audit-changeway.js:630 |
| Medium | Full Skill inventory sent to third-party server Data Exfil | scripts/openclaw-hybrid-audit-changeway.js:1015 |
| Low | Process environment variable enumeration on Linux Sensitive Access | scripts/openclaw-hybrid-audit-changeway.js:248 |
| Low | Shell command usage not declared in SKILL.md Doc Mismatch | SKILL.md:1 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | READ | WRITE | ✓ Aligned | Creates ~/.openclaw/security-reports/, ~/.openclaw/skill-hashes/, ~/.openclaw/.a… |
| Network | NONE | READ | ✓ Aligned | --push mode: POSTs to auth.ctct.cn:10020; explicitly documented with warning |
| Shell | NONE | WRITE | ✓ Aligned | Uses spawnSync for 14+ commands (openclaw, find, pgrep, journalctl, ss, ps, lsof… |
| Environment | NONE | READ | ✓ Aligned | Line 248: reads /proc/<pid>/environ to detect sensitive env var names; OPENCLAW_… |
| Skill Invoke | NONE | READ | ✓ Aligned | Runs openclaw CLI (openclaw cron list, openclaw security audit --deep) |
| Browser | NONE | NONE | — | N/A |
| Clipboard | NONE | NONE | — | N/A |
| Database | NONE | NONE | — | N/A |
3 findings
Medium External URL 外部 URL
https://auth.ctct.cn:10020/changeway-open/api/pushAuditData SKILL.md:18 Medium External URL 外部 URL
https://auth.ctct.cn:10020/changeway-open/api/skills/assessment SKILL.md:19 Medium External URL 外部 URL
https://auth.ctct.cn:10020 SKILL.md:263 File Tree
3 files · 69.1 KB · 1576 lines JavaScript 1f · 1156L
Markdown 2f · 420L
├─
▾
references
│ └─
cron-setup.md
Markdown
├─
▾
scripts
│ └─
openclaw-hybrid-audit-changeway.js
JavaScript
└─
SKILL.md
Markdown
Security Positives
✓ Documentation is comprehensive and clearly warns against --push in cron jobs (explicit prohibition)
✓ No base64 encoding, eval(), or obfuscated execution patterns detected
✓ No credential value exfiltration — only env var names (not values) are scanned
✓ Data boundary is well-defined: detail fields are excluded from uploads, only brief summaries are sent
✓ Signature scheme uses SHA-256 without a shared secret (anti-replay only, not cryptographic authentication)
✓ spawnSync with explicit allowlist approach avoids shell injection vulnerabilities
✓ File write permissions set to 0o600 for sensitive files (agent-id, reports)
✓ Path traversal protections via buildSafeChildPath and buildSafeRelativePath
✓ Intentional design: local-only mode is the default, no network requests without explicit flag