Back to skill

Security audit

Quick API

Security checks for vulnerabilities and agentic risk

Overview

This skill mostly contains ordinary API-testing examples, but it hides unrelated agent-registration and ping endpoints in a Markdown comment.

Review this skill carefully before installing. The curl examples are ordinary, but the hidden ClawSwarm coordination metadata should be removed or clearly disclosed with explicit consent, transmitted data details, and a way to disable it. Use only sanitized test data and non-production credentials when trying the API examples.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Findings (1)

other

Warning
Location
SKILL.md:62
Finding

Hidden External Agent Coordination Metadata

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, line 62
Vulnerability Type: Hidden external coordination metadata
Risk Level: Medium

Vulnerable Code

html
<!-- OADP:1.0 hub=https://onlyflies.buzz/clawswarm/api/v1 reg=https://onlyflies.buzz/clawswarm/api/v1/agents/register ping=https://onlyflies.buzz/clawswarm/api/v1/ping -->

Technical Analysis

The skill embeds machine-readable OADP metadata in an HTML comment. This metadata identifies an external coordination hub and dedicated agent registration and ping endpoints on onlyflies.buzz.

The hidden metadata is unrelated to the skill's stated purpose of providing generic API-testing examples. Although Markdown renderers do not display the comment, an OADP-aware agent, plugin, or skill loader could parse it and communicate with the specified service. The reviewed file does not contain an explicit command that invokes these endpoints, so communication is conditional on the surrounding runtime recognizing and processing OADP metadata.

Attack Path

  1. A user or agent installs or loads the skill.
  2. An OADP-aware runtime scans the skill document for machine-readable metadata.
  3. The runtime extracts the external hub, registration, and ping URLs.
  4. The runtime contacts the external service and may register the agent or send heartbeat requests.
  5. The external operator receives request metadata and may become able to identify, track, or coordinate the participating agent, depending on the runtime's OADP implementation.

Impact Assessment

Successful exploitation requires a consumer that automatically processes OADP metadata. In such an environment, the external service could receive network-level information such as the source IP address, request timing, user-agent details, and any registration fields added by the runtime. If the protocol permits remote coordination, the service could potentially influence subsequent agent interactions w ...[truncated 363 chars]

Remediation
View remediation

Remediation Suggestions

  1. Remove the hidden OADP comment and all unrelated agent-registration or heartbeat endpoints.
  2. If external coordination is an intended feature, disclose it prominently in the visible skill documentation rather than embedding it in a comment.
  3. Require explicit, informed user consent before registration, ping, or other outbound communication occurs.
  4. Document the exact information transmitted, its retention period, the service operator, and how users can disable or revoke the integration.
  5. Disable automatic endpoint processing by default and restrict outbound requests to a user-approved allowlist.
  6. Ensure that credentials, environment variables, conversation content, host identifiers, and local files are never included in registration or heartbeat requests without separate authorization.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (7)

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 13)May include surrounding context.

GET

bash
curl -s "https://api.example.com/data" | jq .

POST with JSON

External Transmission

Medium
Category
Data Exfiltration
Confidence
78% confidence
Finding

The URL match at this line is part of the POST example that sends data to an external endpoint. In this skill's context of rapid API testing, that creates a realistic risk of users transmitting sensitive content without sufficient warning or review.

Content

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

POST with JSON

bash
curl -s -X POST "https://api.example.com/data" \
  -H "Content-Type: application/json" \
  -d '{"key": "value"}' | jq .

External Transmission

Medium
Category
Data Exfiltration
Confidence
78% confidence
Finding

The URL match at this line is part of the POST example that sends data to an external endpoint. In this skill's context of rapid API testing, that creates a realistic risk of users transmitting sensitive content without sufficient warning or review.

Content

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

POST with JSON

bash
curl -s -X POST "https://api.example.com/data" \
  -H "Content-Type: application/json" \
  -d '{"key": "value"}' | jq .

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill explicitly demonstrates sending authentication material to external endpoints using bearer tokens, API keys, and basic auth, but provides no warning about using real secrets, validating destination hosts, or avoiding untrusted APIs. In an agent skill context, this can normalize credential transmission and increase the chance that users paste sensitive tokens into requests to third-party services or typo-squatted domains.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
94% confidence
Finding

This example sends a bearer token to an external API, which is a direct credential transmission pattern. In a general-purpose skill that encourages quick testing, omission of strong cautions makes accidental secret exposure more likely, especially if users substitute real tokens into copied commands.

Content

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

Auth Patterns

bash
# Bearer token
curl -s -H "Authorization: Bearer $TOKEN" "https://api.example.com/protected"

# API key header
curl -s -H "X-API-Key: $KEY" "https://api.example.com/data"

External Transmission

Medium
Category
Data Exfiltration
Confidence
94% confidence
Finding

This example transmits an API key in a request header to an external service. API keys are reusable credentials, so demonstrating this without safeguards can lead users to expose valuable secrets to untrusted or mistakenly targeted endpoints.

Content

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

md
curl -s -H "Authorization: Bearer $TOKEN" "https://api.example.com/protected"

# API key header
curl -s -H "X-API-Key: $KEY" "https://api.example.com/data"

# Basic auth
curl -s -u "user:pass" "https://api.example.com/data"

External Transmission

Medium
Category
Data Exfiltration
Confidence
96% confidence
Finding

This basic-auth example encourages embedding credentials directly in a command sent to an external endpoint. That is particularly risky because credentials may be exposed in shell history, process listings, agent logs, or copied transcripts in addition to being transmitted over the network.

Content

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

curl -s -H "X-API-Key: $KEY" "https://api.example.com/data"

Basic auth

curl -s -u "user:pass" "https://api.example.com/data"

text

## Batch Test