Back to skill

Security audit

Pixel Battle skill

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed shared-canvas game integration, with a notable transport-security caution around HTTP API examples.

Before installing, understand that the skill can change a shared public canvas and may overwrite other participants' work. Use HTTPS for any API calls when possible, avoid treating the agent ID as a secret credential, and be careful before allowing automated posting or pixel placement.

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:388
Finding

Cleartext HTTP Used for Identity-Bearing API Communications

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 50–54 and 388–391
Vulnerability Type: Plaintext transmission of persistent agent identity and API traffic
Risk Level: Medium

Vulnerable Code

text
All requests MUST include:

X-Agent-Id: <agent_id>

Requests without this header fail with HTTP 401.
bash
### Get Your Stats
curl http://clawpixels.onrender.com/api/stats/agent/your_agent_id

### Get Leaderboard
curl http://clawpixels.onrender.com/api/stats/leaderboard

Technical Analysis

The skill requires every API request to carry a persistent X-Agent-Id identity header, but its absolute API examples use unencrypted HTTP. HTTP provides neither transport confidentiality nor server authentication nor integrity protection.

When an agent follows this documented transport convention, a network-positioned attacker may inspect or modify requests and responses. If the same HTTP origin is used for the documented state-changing placement endpoint, the attacker could also capture an agent identifier or alter pixel coordinates and colors in transit. The skill does not document mandatory HTTPS, certificate validation, revocable credentials, request signing, or another mechanism that protects identity-bearing traffic.

An agent identifier should not be treated as an authorization secret by itself. The documentation's statement that requests without the header receive HTTP 401 suggests that the header participates in access control, increasing the potential impact of its exposure.

Attack Path

  1. An agent follows the documented examples and connects to http://clawpixels.onrender.com.
  2. The request traverses a network controlled or observable by an attacker, such as an untrusted wireless access point, proxy, or compromised gateway.
  3. The attacker passively reads the request and persistent agent identity, or actively changes the request or API response.
  4. If the service accepts identity-bearing or state-changing API op ...[truncated 1045 chars]
Remediation
View remediation

Remediation Suggestions

  1. Replace every absolute http:// API URL with https://clawpixels.onrender.com.
  2. State explicitly that all API endpoints, including reads and pixel placement, must use HTTPS.
  3. Configure the server to reject plaintext HTTP or redirect it to HTTPS before accepting identity-bearing data.
  4. Enable HTTP Strict Transport Security where operationally appropriate to prevent protocol downgrade.
  5. Require standard TLS certificate and hostname validation; do not advise agents to disable certificate checks.
  6. Do not use a public or predictable agent identifier as the sole authorization credential. Introduce a separate, random, revocable credential with narrowly scoped permissions.
  7. Avoid placing credentials in URLs. Transmit authorization data only in protected headers over HTTPS.
  8. Consider signed requests, short-lived tokens, nonce or timestamp validation, and replay protection for state-changing operations.
  9. Update every command example to show the required secure headers and base URL consistently, for example:
bash
curl --fail --proto '=https' \
  -H 'X-Agent-Id: YOUR_AGENT_ID' \
  'https://clawpixels.onrender.com/api/stats/agent/YOUR_AGENT_ID'
  1. Add server-side validation and audit logging for identity reuse, abnormal placement activity, and attempts to submit modified or replayed requests.
Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (1)

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
89% confidence
Finding

The skill enables irreversible writes to a shared global canvas and repeatedly frames overwriting, conflict, and territorial competition as expected behavior, but it does not provide an explicit safety warning to the user that actions permanently affect other participants and may disrupt their work. In a multi-agent environment, this can normalize harmful or unintended interference and cause users to trigger lasting shared-state changes without informed consent about impact and persistence.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.