Back to skill

Security audit

Clawhub Soul

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly coherent for a paid agent marketplace, but it under-discloses credential and payment risks that users should review before installing.

Review this skill carefully before installing. Use it only with least-privilege keys and wallets, avoid putting raw API keys, bearer tokens, private keys, seed phrases, or long-lived credentials in soul.md, and require explicit human confirmation before any USDC payment, payout, wallet-linking, or private-key-backed operation.

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 (1)

T09 · Insecure Skill Coding Practices

Warning
Location
SKILL.md:66
Finding
Sensitive Credentials Encouraged in Externally Uploaded Identity Data## Vulnerability Details **File Location**: `SKILL.md:66, 93-99, 139-144, 327-333` **Vulnerability Type**: Sensitive credential exposure through externally stored identity content **Risk Level**: Medium ### Vulnerable Code Snippets ```markdown - **Access** — API keys that unlock capabilities ``` ```bash curl -X POST https://api.soul.mds.markets/v1/soul/register \ -H "Content-Type: application/json" \ -d '{ "name": "ResearchBot", "slug": "researchbot", "soul_md": "# ResearchBot\n\nI am a research analyst with expertise in...", "soul_price": 25.00 }' ``` ```bash curl -X PUT https://api.soul.mds.markets/v1/soul/me/soul \ -H "Authorization: Bearer soul_xxx..." \ -H "Content-Type: application/json" \ -d '{ "soul_md": "# ResearchBot v2\n\nUpdated capabilities...", "change_note": "Added financial analysis expertise" }' ``` ```markdown 1. Help them craft a compelling `soul.md`: - Define their expertise and judgment - Specify their approach and quality standards - Include relevant API keys/access (encrypted, never exposed) ``` ### Technical Analysis The skill defines API-key-backed access as part of the `soul.md` identity and later instructs agents to include relevant API keys or access information in that document. Registration and update examples transmit the complete `soul_md` field to the external `api.soul.mds.markets` service. Although the text says credentials should be “encrypted, never exposed,” it specifies no encryption scheme, trusted key recipient, key-management process, secret-reference mechanism, visibility control, or pre-upload secret scanning. Encryption without an independently protected key and a defined trust model does not ensure confidentiality. An agent following these instructions could therefore embed raw, reversibly encoded, or otherwise recoverable credentials in remotely stored marketplace content. ### Attack Path ...[truncated 1248 chars]
Remediation
## Remediation Suggestions 1. Explicitly prohibit raw API keys, wallet private keys, bearer tokens, seed phrases, and other reusable credentials in `soul.md`. 2. Replace embedded credentials with opaque identifiers that reference secrets held in a dedicated secret manager. 3. Retrieve secrets only at execution time and restrict access to the specific service requiring them. 4. Apply least-privilege scopes, short expiration periods, usage limits, and service-specific credentials. 5. Add mandatory secret detection and redaction before every registration or identity-update request. 6. Document whether `soul.md` is public, private, logged, replicated, or available to marketplace operators. 7. If encrypted capability data is required, define authenticated encryption, recipient key validation, key rotation, revocation, and a threat model ensuring that decryption keys are never uploaded with ciphertext. 8. Provide credential rotation and incident-response guidance for accidentally uploaded secrets.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (16)

Missing User Warnings

High
Confidence
99% confidence
Finding
The skill tells users to include relevant API keys/access in soul.md and only says they are encrypted and never exposed, without a strong warning that uploading secrets to a third-party marketplace is highly sensitive and may leak through platform compromise, misconfiguration, downstream service execution, or prompt/output exposure. Encouraging secret placement in a broadly reusable identity document materially increases the risk of credential disclosure and account compromise.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
## API Base URL

```
https://api.soul.mds.markets/v1/soul
```

---
Confidence
50% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

External Transmission

Medium
Category
Data Exfiltration
Content
### Register as a Seller

```bash
curl -X POST https://api.soul.mds.markets/v1/soul/register \
  -H "Content-Type: application/json" \
  -d '{
    "name": "ResearchBot",
Confidence
60% confidence
Finding
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Missing User Warnings

Medium
Confidence
97% confidence
Finding
The buyer workflow describes how to execute a paid service and complete the x402 payment flow, but it does not provide a prominent warning that retrying with the payment header authorizes a real USDC transfer. In an agent skill context, this omission is dangerous because an operator may treat the flow as a harmless API call and unintentionally trigger irreversible blockchain payments.

Static analysis

No suspicious patterns detected.