Back to skill

Security audit

Poyo Claude 4 5 Api

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward PoYo Claude API helper, with the main caution that its optional curl script can expose the PoYo API key to local process inspection while a request runs.

Install only if you intend to use PoYo for Claude API calls. Keep POYO_API_KEY server-side, review payload JSON before sending because it will be transmitted to PoYo, and prefer a safer client or header/config-file approach if local process monitoring could expose command-line arguments.

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
scripts/submit_claude_4_5_messages.sh:12
Finding

PoYo API Key Exposed Through Process Command-Line Arguments

Content
View full analysis
/cmdline`, process-monitoring software, audit agents, or diagnostic collection tools. The exact visibility of command-line arguments depends on operating-system configuration and user boundaries. On systems where other local users, administrators, monitoring services, or processes in the same security context can inspect the command line, they may recover the credential. Sending the API key and caller-provided message payload to `https://api.poyo.ai/v1/messages` is otherwise consistent with the Skill's declared functionality. The issue is the local handling of the credential, not the documented transmission to PoYo over HTTPS. ### Attack Path 1. A user exports a valid `POYO_API_KEY` and invokes the submission script with a JSON payload. 2. The shell expands `${POYO_API_KEY}` into the `curl` command-line arguments. 3. During the network request, a local observer or monitoring component reads the `curl` process command line. 4. The observer extracts the value following the `x-api-key` header. 5. The observer submits unauthorized requests to the PoYo API using the stolen credential. Exploitation requires sufficient local process-inspection access while the `curl` process is active, or access to monitoring or audit records t ...[truncated 627 chars]
Remediation
View remediation
Vulnerability Patterns
  • 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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (10)

Hidden Instructions

High
Category
Prompt Injection
Confidence
60% confidence
Finding

Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.

Content

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

md
---
name: poyo-claude-4-5-api
description: Claude 4.5 Series Messages API on PoYo / poyo.ai via `https://api.poyo.ai/v1/messages`; use for `claude-opus-4-5-20251101`, `claude-sonnet-4-5-20250929`, `claude-haiku-4-5-20251001`, Claude-compatible messages, tools, structured output, prompt cache settings, vision content blocks, streaming, and server-side integration.
metadata: {"openclaw":{"homepage":"https://poyo.ai/models/claude-4-5-api","requires":{"bins":["curl"],"env":["POYO_API_KEY"]},"primaryEnv":"POYO_API_KEY"}}

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · references/api.md (reported line 19)May include surrounding context.

Content-Type: application/json

text

Get API keys from <https://poyo.ai/dashboard/api-key>.

Recommended skill env var:

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% 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 · references/api.md (reported line 57)May include surrounding context.

Basic Messages Example

bash
curl --fail-with-body --request POST \
  --url "https://api.poyo.ai/v1/messages" \
  --header "x-api-key: YOUR_API_KEY" \
  --header "anthropic-version: 2023-06-01" \

External Transmission

Medium
Category
Data Exfiltration
Confidence
70% 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 · scripts/submit_claude_4_5_messages.sh (reported line 13)May include surrounding context.

sh
payload_file="$1"

curl --fail-with-body --request POST \
  --url "https://api.poyo.ai/v1/messages" \
  --header "x-api-key: ${POYO_API_KEY}" \
  --header "anthropic-version: 2023-06-01" \

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% 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 3)May include surrounding context.

md
payload_file="$1"

curl --fail-with-body --request POST \
  --url "https://api.poyo.ai/v1/messages" \
  --header "x-api-key: ${POYO_API_KEY}" \
  --header "anthropic-version: 2023-06-01" \
  --header "Content-Type: application/json" \

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% 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 · references/api.md (reported line 5)May include surrounding context.

md
payload_file="$1"

curl --fail-with-body --request POST \
  --url "https://api.poyo.ai/v1/messages" \
  --header "x-api-key: ${POYO_API_KEY}" \
  --header "anthropic-version: 2023-06-01" \
  --header "Content-Type: application/json" \

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% 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 · references/api.md (reported line 58)May include surrounding context.

md
payload_file="$1"

curl --fail-with-body --request POST \
  --url "https://api.poyo.ai/v1/messages" \
  --header "x-api-key: ${POYO_API_KEY}" \
  --header "anthropic-version: 2023-06-01" \
  --header "Content-Type: application/json" \

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% 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 · references/api.md (reported line 79)May include surrounding context.

md
payload_file="$1"

curl --fail-with-body --request POST \
  --url "https://api.poyo.ai/v1/messages" \
  --header "x-api-key: ${POYO_API_KEY}" \
  --header "anthropic-version: 2023-06-01" \
  --header "Content-Type: application/json" \

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% 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 · references/api.md (reported line 117)May include surrounding context.

md
payload_file="$1"

curl --fail-with-body --request POST \
  --url "https://api.poyo.ai/v1/messages" \
  --header "x-api-key: ${POYO_API_KEY}" \
  --header "anthropic-version: 2023-06-01" \
  --header "Content-Type: application/json" \

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% 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 · scripts/submit_claude_4_5_messages.sh (reported line 14)May include surrounding context.

sh
payload_file="$1"

curl --fail-with-body --request POST \
  --url "https://api.poyo.ai/v1/messages" \
  --header "x-api-key: ${POYO_API_KEY}" \
  --header "anthropic-version: 2023-06-01" \
  --header "Content-Type: application/json" \