T09 · Insecure Skill Coding Practices
- Location
scripts/imagegen.py:91- Finding
Attacker-Controlled API Endpoint Can Receive the Bearer Credential
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This image-generation skill mostly matches its stated purpose, but it stores an API key and can send that credential to a configurable API endpoint without hostname or HTTPS validation.
Review this skill before installing if you will use a real AI Hive API key. Keep the default AI Hive endpoint unless you fully trust a custom endpoint, avoid setting AI_HIVE_BASE_URL from untrusted instructions, and install dependencies in an isolated environment where possible.
scripts/imagegen.py:91Attacker-Controlled API Endpoint Can Receive the Bearer Credential
SKILL.md:84Third-Party Dependency Is Installed Without Version or Integrity Pinning
The skill invokes shell commands, performs package installation, and uses a Python script that likely exercises network, file, and environment access, yet the manifest declares no explicit tool scope or permission boundaries. This increases the blast radius if the script is modified, compromised, or used with untrusted inputs, because an agent may grant broader capabilities than are actually required.
The manifest description is written as a Chinese-first instruction and includes no indication that users may choose their preferred language or locale. Under the stated policy, forcing or assuming a specific language without user opt-in is a natural-language policy violation.
The top-level docstring says this file is a '通用 AI 能力调用工具' that wraps text chat, image generation, video generation, model queries, media upload, and task polling. That actively conflicts with the manifest and generated skill config, which present this artifact as a dedicated Nano Banana Pro multi-reference image skill.
This Python skill’s top-level description, CLI guidance, prompts, and operational messages are written entirely in Chinese, which imposes a specific language/locale on all users. The file does not offer any opt-in, fallback, or language-selection mechanism, so it violates the language-choice policy for natural-language behavior.
The manifest describes a narrowly scoped skill for combining multiple reference images into one controlled image via Nano Banana Pro. However, the shipped skill CLI also includes task, upload, and init subcommands, which perform generic account/bootstrap and media-management functions beyond the stated image-generation purpose.
This markdown file contains user-facing natural language almost entirely in Chinese, but does not indicate that the skill is region-specific or provide any user opt-in for language/locale. Under the policy, forcing a specific language without user choice can be a natural-language policy violation.
The example API key placeholder uses Chinese text ('请替换为你的APIKey'), which imposes a specific language in a user-facing config example. There is no indication that this skill is region-specific or that users may choose another locale, so this appears to violate the language/locale policy for natural-language content.
No suspicious patterns detected.