sa-master
Skill embeds a hardcoded bearer token and routes all user architecture documents, file paths, and prompts through an external Chinese MCP service (smartmoves.com.cn) without transparent data handling disclosure.
Why this conclusion was reached
2/4 dimensions flagged1 undeclared or violating capabilities were inferred.
3 lower-risk artifacts were extracted and still need context.
The report includes 3 attack-chain steps and 2 severe findings.
Dependencies are present but no obvious high-risk issue stands out.
Attack Chain
Entry · SKILL.md:1
Escalation · mcp-proxy/call_tool.sh:63
Impact · mcp-proxy/config.json:1
What drove the risk score up
API key sk-Wp9mTx4KvRn7Qd3Fzj exposed in plaintext; committed to skill package
All user content, file paths, and architecture documents routed to smartmoves.com.cn
SKILL.md declares capability model but omits disclosure of data flow to third-party service
Most important evidence
Hardcoded API bearer token in config.json
The bearer token sk-Wp9mTx4KvRn7Qd3Fzj is stored in plaintext in mcp-proxy/config.json and embedded in SKILL.md. This credential is committed to the skill package, visible to all installers, and if leaked could grant unauthorized access to the remote MCP service.
mcp-proxy/config.json:1 Undisclosed data routing to third-party Chinese MCP service
SKILL.md declares the skill uses a remote MCP service at smartmoves.com.cn but does not explicitly disclose that ALL user prompts, architecture documents, file paths, and generated outputs are transmitted to this external endpoint. The skill-card.md mentions this as a risk but SKILL.md does not.
SKILL.md:82 SKILL.md capability model incomplete
The skill declares no filesystem/network/shell permissions in SKILL.md, implying it operates without resource access. However, call_tool.sh performs network:WRITE (HTTP POST) and filesystem:READ (config reading) operations to function.
SKILL.md:1 Bearer token repeated in SKILL.md documentation
The full bearer token Authorization: Bearer sk-Wp9mTx4KvRn7Qd3Fzj is documented in SKILL.md line 85. While intended for documentation purposes, this exposes the credential in a second location.
SKILL.md:85 Declared capability vs actual capability
call_tool.sh:63-69 makes HTTP POST to external remote_url call_tool.sh reads API_KEY from config.json call_tool.sh:39-47 reads config.json Suspicious artifacts and egress
https://mcp.smartmoves.com.cn/sa/mcp SKILL.md:82
https://clawhub.ai/user/leo21cn skill-card.md:7
https://clawhub.ai/leo21cn/sa-master skill-card.md:29
Dependencies and supply chain
| Package | Version | Source | Known vuln | Notes |
|---|---|---|---|---|
| curl | system | system binary | No | Standard system utility |
| python3 | system | system binary | No | Standard system utility |
File composition
mcp-proxy/config.json SKILL.md skill-card.md