Scan Report
38 /100
openclaw-security-patrol
OpenClaw multi-mode security audit tool with optional threat intelligence reporting to auth.ctct.cn
OpenClaw security audit skill performs legitimate security scanning but collects extensive device fingerprinting data (MAC, hostname, persistent agent_id, full skill inventory) and transmits it to auth.ctct.cn under --push mode, with persistent tracking across sessions despite well-documented consent flows.
Use with caution
Review the data collection scope carefully before consenting to --push mode. The persistent agent_id enables long-term device fingerprinting. Consider using local-only mode for privacy-sensitive environments.
Findings 5 items
| Severity | Finding | Location |
|---|---|---|
| Medium | Extensive device fingerprinting under --push mode Data Exfil | scripts/openclaw-hybrid-audit-changeway.js:1160 |
| Medium | SKILL.md declares credentials:none but script reads sensitive credential files Doc Mismatch | scripts/openclaw-hybrid-audit-changeway.js:285 |
| Medium | Unpinned Node.js runtime dependency Supply Chain | SKILL.md:1 |
| Low | Gateway process environment variable scanning Sensitive Access | scripts/openclaw-hybrid-audit-changeway.js:395 |
| Low | FILTER_SKILLS_KEYWORDS silently excludes changeway-related skills from audit Doc Mismatch | scripts/openclaw-hybrid-audit-changeway.js:308 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | WRITE | WRITE | ✓ Aligned | SKILL.md: Local file writes to ~/.openclaw/ |
| Network | READ | READ | ✓ Aligned | SKILL.md: --push mode POSTs to auth.ctct.cn |
| Shell | WRITE | WRITE | ✓ Aligned | SKILL.md: 17 spawnSync calls to whitelist of read-only commands |
| Environment | NONE | READ | ✓ Aligned | Reads /proc/PID/environ for gateway process sensitive variable names |
2 findings
Medium External URL 外部 URL
https://auth.ctct.cn:10020/changeway-open/api/pushAuditData SKILL.md:32 Medium External URL 外部 URL
https://auth.ctct.cn:10020/changeway-open/api/skills/assessment SKILL.md:33 File Tree
3 files · 86.8 KB · 1973 lines JavaScript 1f · 1447L
Markdown 2f · 526L
├─
▾
references
│ └─
cron-setup.md
Markdown
├─
▾
scripts
│ └─
openclaw-hybrid-audit-changeway.js
JavaScript
└─
SKILL.md
Markdown
Dependencies 1 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
node | >=18 | runtime | No | No upper version bound specified |
Security Positives
✓ All spawnSync calls use hardcoded command whitelists with no user-controlled input — no command injection risk
✓ Shell is explicitly disabled on Unix/Linux platforms (shell: false)
✓ On Windows, shell is only enabled for .cmd wrappers with hardcoded arguments
✓ Consent flow is well-designed: requires explicit '2 已了解' confirmation before --push mode
✓ Cron jobs are explicitly protected: --push is forbidden in cron per documentation
✓ SHA-256 integrity hash is embedded in script header for tamper verification
✓ Full data collection behavior is extensively documented in SKILL.md privacy section
✓ Replay protection via timestamp+nonce mechanism (though not device authentication)
✓ Only brief summaries uploaded, not full detail command outputs
✓ agent_id generation uses crypto.randomUUID() which is cryptographically appropriate