Scan Report
38 /100
China Stock Sentiment
A 股舆情分析 + 百度热搜 + 新闻情感分析技能,帮助投资者实时监控市场情绪
The skill uses undeclared shell execution (child_process.execSync) to invoke another skill, a capability not declared in SKILL.md's documented allowed-tools or capability model.
Use with caution
Remove child_process.execSync or replace with a safe skill-invoke mechanism; declare shell:WRITE in SKILL.md if shell execution is necessary; restrict the execSync command to prevent injection.
Attack Chain 3 steps
◎
Entry SKILL.md presents skill as '舆情监控' using 'web_fetch/web_search' and skill references only
SKILL.md:1⬡
Escalation Hidden shell:WRITE via child_process.execSync runs 'openclaw skill run baidu-hot-cn'
index.js:53⬡
Escalation Filesystem WRITE to memory/stock-sentiment/reports/ not declared in capability model
index.js:139Findings 3 items
| Severity | Finding | Location |
|---|---|---|
| High | Undeclared shell execution via child_process.execSync Doc Mismatch | index.js:53 |
| Medium | Undeclared filesystem WRITE beyond documented scope Priv Escalation | index.js:139 |
| Low | Marketing content in SKILL.md not in README.md Doc Mismatch | SKILL.md:89 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | NONE | WRITE | ✗ Violation | index.js:139 fs.writeFileSync(outputPath, markdown) |
| Shell | NONE | WRITE | ✗ Violation | index.js:54 execSync('openclaw skill run baidu-hot-cn') |
| Network | READ | NONE (indirect via subprocess) | ✓ Aligned | No direct network calls; web access delegated to baidu-hot-cn skill via subproce… |
| Environment | NONE | NONE | — | No os.environ access detected |
2 findings
Medium External URL 外部 URL
https://clawhub.ai/skills/china-stock-sentiment/docs README.md:87 Info Email 邮箱地址
[email protected] README.md:85 File Tree
3 files · 11.5 KB · 454 lines Markdown 2f · 232L
JavaScript 1f · 222L
├─
index.js
JavaScript
├─
README.md
Markdown
└─
SKILL.md
Markdown
Dependencies 3 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
fs | builtin | node | No | Node.js built-in module — no external dependency risk |
path | builtin | node | No | Node.js built-in module |
child_process | builtin | node | No | Node.js built-in module — used for execSync |
Security Positives
✓ No credential harvesting (no os.environ iteration, no ~/.ssh, no .env access)
✓ No direct IP network requests or outbound data exfiltration
✓ No obfuscation (no base64, no eval patterns)
✓ No curl|bash or wget|sh remote script execution
✓ No persistence mechanisms (no cron, startup hooks, or backdoors)
✓ execSync command string is hardcoded and not user-injectable
✓ No supply chain risks — only uses Node.js built-in modules (fs, path, child_process)