T09 · Insecure Skill Coding Practices
- Location
scripts/submit_nano_banana_2.sh:10- Finding
PoYo API Key Exposed Through Process Command-Line Arguments
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill does what it claims, but its helper script handles the PoYo API key in a way that can expose the credential to local process inspection.
Review this before installing if the PoYo API key has billing or quota impact. Prefer not to pass the key as a command-line argument, avoid using the helper on shared or heavily monitored machines, and only submit prompts, image URLs, and callback URLs that you are comfortable sending to PoYo.
scripts/submit_nano_banana_2.sh:10PoYo API Key Exposed Through Process Command-Line Arguments
Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.
---
name: poyo-nano-banana-2
description: Nano Banana 2 image generation and advanced editing on PoYo / poyo.ai via `https://api.poyo.ai/api/generate/submit`; use for `nano-banana-2-new`, `nano-banana-2-new-edit`, multi-reference workflows, text-to-image, image-to-image, and 1K/2K/4K output.
metadata: {"openclaw":{"homepage":"https://poyo.ai/models/nano-banana-2","requires":{"bins":["curl"],"env":["POYO_API_KEY"]},"primaryEnv":"POYO_API_KEY"}}
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
Content-Type: application/json
Get API keys from <https://poyo.ai/dashboard/api-key>.
Recommended skill env var:
The skill explicitly instructs use of an external API endpoint and requires an API key, meaning prompts and any referenced image URLs may be transmitted to a third-party service. In this context that is expected functionality, but it is still a real security/privacy concern because users may unintentionally send sensitive data off-platform to poyo.ai.
---
name: poyo-nano-banana-2
description: Nano Banana 2 image generation and advanced editing on PoYo / poyo.ai via `https://api.poyo.ai/api/generate/submit`; use for `nano-banana-2-new`, `nano-banana-2-new-edit`, multi-reference workflows, text-to-image, image-to-image, and 1K/2K/4K output.
metadata: {"openclaw":{"homepage":"https://poyo.ai/models/nano-banana-2","requires":{"bins":["curl"],"env":["POYO_API_KEY"]},"primaryEnv":"POYO_API_KEY"}}
---
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
## Endpoint
- Submit task: `POST https://api.poyo.ai/api/generate/submit`
- Status query: see PoYo unified task status docs at <https://docs.poyo.ai/api-manual/task-management/status>
- Model page: <https://poyo.ai/models/nano-banana-2>
- Source docs: <https://docs.poyo.ai/api-manual/image-series/nano-banana-2-new>
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
## Endpoint
- Submit task: `POST https://api.poyo.ai/api/generate/submit`
- Status query: see PoYo unified task status docs at <https://docs.poyo.ai/api-manual/task-management/status>
- Model page: <https://poyo.ai/models/nano-banana-2>
- Source docs: <https://docs.poyo.ai/api-manual/image-series/nano-banana-2-new>
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
## Endpoint
- Submit task: `POST https://api.poyo.ai/api/generate/submit`
- Status query: see PoYo unified task status docs at <https://docs.poyo.ai/api-manual/task-management/status>
- Model page: <https://poyo.ai/models/nano-banana-2>
- Source docs: <https://docs.poyo.ai/api-manual/image-series/nano-banana-2-new>
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
curl -sS https://api.poyo.ai/api/generate/submit \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
The hardcoded external endpoint confirms that this skill is designed to send data outside the local environment to api.poyo.ai. Even if legitimate, this is security-relevant because the payload source is arbitrary and the script provides no boundary checks, trust validation beyond default TLS, or approval gate before exfiltrating file contents.
payload_file="$2"
fi
curl -sS https://api.poyo.ai/api/generate/submit \
-H "Authorization: Bearer ${api_key}" \
-H 'Content-Type: application/json' \
--data @"${payload_file}"
The hardcoded external endpoint confirms that this skill is designed to send data outside the local environment to api.poyo.ai. Even if legitimate, this is security-relevant because the payload source is arbitrary and the script provides no boundary checks, trust validation beyond default TLS, or approval gate before exfiltrating file contents.
payload_file="$2"
fi
curl -sS https://api.poyo.ai/api/generate/submit \
-H "Authorization: Bearer ${api_key}" \
-H 'Content-Type: application/json' \
--data @"${payload_file}"
No suspicious patterns detected.