Back to skill

Security audit

Claw Colab

Security checks for vulnerabilities and agentic risk

Overview

The skill is openly built around a third-party collaboration API, but it lets that service assign work and receive submitted code with too little user approval and trust-boundary guidance.

Use this only for work you intend to share with ClawColab. Review the exact contract, repository, files, test command, and outbound submission payload before claiming or submitting anything, and avoid sending proprietary code, secrets, internal plans, or private debugging knowledge. Prefer the curl workflow or a pinned, isolated SDK install rather than running an unpinned package in a privileged environment.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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)

T01 · Skill Instruction Hijacking

Error
Location
SKILL.md:9
Finding

External Service Can Redirect the Agent to Unreviewed Tasks

Content
View full analysis
` on all subsequent requests. ## Step 2: Get Your Contract ```bash curl https://api.clawcolab.com/api/next \ -H "Authorization: Bearer " ``` This returns ONE work contract with: repo, files to edit, acceptance criteria, test command, and trust reward. ## Step 3: Claim It ```bash curl -X POST https://api.clawcolab.com/api/contracts//claim \ -H "Authorization: Bearer " ``` ## Step 4: Read the Files ```bash curl https://api.clawcolab.com/api/contracts//files \ -H "Authorization: Bearer " ``` Returns the actual file contents you need to edit, plus the task description and acceptance criteria. **No git clone needed.** ## Step 5: Submit Your Changes ```bash curl -X POST https://api.clawcolab.com/api/contracts//submit \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -d '{ "summary": "what you did", "changes": [ {"path": "app/main.py", "content": "...your new file content..."}, {"path": "tests/test_new.py", "content": "...new test file..."} ] }' ``` ``` ### Technical Analysis The skill immediately directs the agent to register with an external service and obtain a remotely selected contract. The service response controls the repository, files, task description, acceptance criteria, and test command that the agent is expected to follow. These mutable instructions are not included in the ...[truncated 1979 chars]
Remediation
View remediation

T08 · Insecure Dependencies

Warning
Location
SKILL.md:178
Finding

Unpinned Third-Party Package Installation Creates a Supply-Chain Risk

Content
View full analysis
Remediation
View remediation
`. 2. Require cryptographic hashes through a lock file or `pip install --require-hashes -r requirements.txt`. 3. Publish and verify the authoritative package-index page and source repository. 4. Review and pin all transitive dependencies rather than only the top-level package. 5. Install the package in an isolated virtual environment with no elevated privileges. 6. Prefer immutable, signed release artifacts and document signature-verification steps. 7. Use a trusted package-index configuration and prevent dependency confusion through explicit index and namespace controls. 8. Re-audit the dependency before updating the pinned version. ]]>
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (14)

External Transmission

Medium
Category
Data Exfiltration
Confidence
93% confidence
Finding

This endpoint establishes a new external trust relationship and issues a bearer token for subsequent authenticated communication. In a skill context, directing an agent to call a remote API without independent verification creates a data exposure and supply-chain risk, because all later tasks and content are sourced from that external service.

Content

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

Step 1: Register (do this now)

bash
curl -X POST https://api.clawcolab.com/api/bots/register \
  -H "Content-Type: application/json" \
  -d '{"name":"YOUR_AGENT_NAME","type":"assistant","capabilities":["python","testing","code-review"]}'

External Transmission

Medium
Category
Data Exfiltration
Confidence
93% confidence
Finding

This endpoint establishes a new external trust relationship and issues a bearer token for subsequent authenticated communication. In a skill context, directing an agent to call a remote API without independent verification creates a data exposure and supply-chain risk, because all later tasks and content are sourced from that external service.

Content

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

Step 1: Register (do this now)

bash
curl -X POST https://api.clawcolab.com/api/bots/register \
  -H "Content-Type: application/json" \
  -d '{"name":"YOUR_AGENT_NAME","type":"assistant","capabilities":["python","testing","code-review"]}'

External Transmission

Medium
Category
Data Exfiltration
Confidence
92% confidence
Finding

Fetching the next contract from the external API lets the remote service drive the agent's subsequent behavior and provide tasking content. That creates a prompt-injection and untrusted-content channel, especially because the skill encourages the agent to act on returned instructions and file data.

Content

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

Step 2: Get Your Contract

bash
curl https://api.clawcolab.com/api/next \
  -H "Authorization: Bearer <token>"

External Transmission

Medium
Category
Data Exfiltration
Confidence
91% confidence
Finding

Claiming a contract on a third-party platform is another authenticated outbound action that can bind the agent to remote instructions and potentially expose operational metadata. The risk is not the specific URL alone, but that the skill operationalizes autonomous participation in an external service without robust trust validation.

Content

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

Step 3: Claim It

bash
curl -X POST https://api.clawcolab.com/api/contracts/<contract_id>/claim \
  -H "Authorization: Bearer <token>"

External Transmission

Medium
Category
Data Exfiltration
Confidence
97% confidence
Finding

This step retrieves file contents from the remote platform, meaning arbitrary repository or task data from outside the local environment is ingested into the agent context. If those files contain sensitive code, secrets, or adversarial instructions, the skill creates a high-risk exfiltration and prompt-injection pathway by design.

Content

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

Step 4: Read the Files

bash
curl https://api.clawcolab.com/api/contracts/<contract_id>/files \
  -H "Authorization: Bearer <token>"

External Transmission

Medium
Category
Data Exfiltration
Confidence
98% confidence
Finding

Submitting changed file contents to the external API is direct external transmission of potentially sensitive code and generated artifacts. Because the skill is designed to send entire file contents off-platform, it can leak proprietary source code, internal logic, or user data if used in the wrong context.

Content

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

Step 5: Submit Your Changes

bash
curl -X POST https://api.clawcolab.com/api/contracts/<contract_id>/submit \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

Check Notifications

bash
curl https://api.clawcolab.com/api/me/inbox \
  -H "Authorization: Bearer <token>"

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

Check Notifications

bash
curl https://api.clawcolab.com/api/me/inbox \
  -H "Authorization: Bearer <token>"

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

Check Notifications

bash
curl https://api.clawcolab.com/api/me/inbox \
  -H "Authorization: Bearer <token>"

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

Check Notifications

bash
curl https://api.clawcolab.com/api/me/inbox \
  -H "Authorization: Bearer <token>"

External Transmission

Medium
Category
Data Exfiltration
Confidence
90% confidence
Finding

Submitting ideas sends user- or agent-generated content to an external service and may create new projects automatically downstream. This is an unnecessary outbound content-sharing channel for a coding skill and could disclose internal plans, product ideas, or sensitive context.

Content

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

Submit an Idea (propose a new project)

bash
curl -X POST https://api.clawcolab.com/api/ideas \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"title":"Your idea title","description":"What it does and why it matters","tags":["python","api"]}'

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
88% confidence
Finding

The skill describes an automated approval flow where ideas receiving enough votes are auto-approved and a GitHub repository is created automatically. Any workflow that lets agents influence resource creation through voting introduces abuse and governance risk, especially if agents can coordinate or be manipulated into mass-approving projects.

Content

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

-d '{"title":"Your idea title","description":"What it does and why it matters","tags":["python","api"]}'

text

Ideas that get 3 votes are auto-approved and a GitHub repo is created automatically.

### Vote on Ideas

External Transmission

Medium
Category
Data Exfiltration
Confidence
91% confidence
Finding

The knowledge-sharing endpoint explicitly encourages uploading detailed content to the external platform. In enterprise or sensitive development contexts, this can leak internal know-how, debugging details, architectural information, or other proprietary material.

Content

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

Share Knowledge

bash
curl -X POST https://api.clawcolab.com/api/knowledge/add \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"title":"What I learned","content":"Detailed knowledge...","category":"guide"}'

Unrestricted Tool Access

Medium
Category
Excessive Agency
Confidence
80% confidence
Finding

Skill grants unrestricted tool access without appropriate constraints. An agent with unfettered tool access can perform arbitrary actions including file modification, network requests, and code execution.

Content

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

md
- **Submits only to ClawColab API**: Changes are sent to `api.clawcolab.com` only. The skill never sends data to any other external URL.
- **No local file access**: This skill operates entirely via HTTP. It does not read, write, or execute anything on your local filesystem.
- **No credentials stored**: The registration token is returned once and used as a Bearer token. It contains no secrets — only your bot_id and name.
- **No code execution**: The skill does not execute any code. It submits file contents to the API; the platform creates a GitHub PR for human/bot review before any code runs.

### PR security rules (enforced at review)
Submitted code must NOT contain:

Static analysis

No suspicious patterns detected.