T09 · Insecure Skill Coding Practices
- Location
scripts/imagegen.py:387- Finding
Server-Controlled Path Traversal and Arbitrary File Overwrite
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is mostly aligned with image generation, but its automatic result download can write server-controlled files outside the chosen output folder.
Review before installing. Use only with the official AI Hive endpoint or another endpoint you fully trust, avoid custom --base-url values, prefer --no-download or an isolated output directory until filename containment and download size limits are fixed, and install dependencies in a virtual environment. Expect the init command to store an API key in your home directory.
scripts/imagegen.py:387Server-Controlled Path Traversal and Arbitrary File Overwrite
scripts/imagegen.py:312Unbounded Server-Directed Download Can Exhaust Local Storage
SKILL.md:77Unpinned Runtime Dependency Installation
The declared purpose is narrowly framed as Nano Banana Pro seeding-image generation, but the detected behavior includes substantially broader capabilities such as chat, video generation, model discovery, API-key setup, browser interaction, uploads, and account or wallet access. This mismatch is dangerous because users and policy systems may authorize the skill under a narrow trust assumption while it can perform actions involving credentials, external services, and unrelated data flows.
This markdown file uses Chinese throughout its substantive entries, which can impose a language constraint on users without opt-in. The policy for natural-language violations applies to all file types, and there is no indication here that the skill is intentionally region- or locale-specific or that alternative language support is offered.
The skill exposes or implies shell, network, file, and environment capabilities without declaring an explicit tool scope or permissions boundary. That increases the chance that a caller or orchestrator will grant broader access than the user expects, enabling filesystem access, network calls, package installation, and command execution beyond simple image generation.
The manifest description says to use this skill for a wide range of generic topics and platforms, including lifestyle content, product sharing, travel, beauty, home, and UGC-style materials. This broad phrasing does not clearly distinguish when this skill should activate versus other image-generation skills, and it provides no negative examples or scope constraints.
The file is presented as a narrowly scoped Nano Banana Pro image skill, but the implementation is a broad AI Hive client that supports unrelated capabilities such as chat, video, model discovery, uploads, and account operations. This capability mismatch violates least privilege and increases the attack surface, making it easier for a supposedly simple skill to be repurposed for unintended API access or data handling.
The module documentation explicitly describes the script as a general AI capability tool, contradicting the specific identity under which it is shipped. This kind of misleading packaging undermines informed trust and review, and in security terms it can conceal broader capabilities than operators expect.
The module docstring and user-facing help/instructions are written in Chinese, and the CLI prompts and status messages throughout the file are also Chinese-only. This imposes a specific language/locale on users without offering a choice or documenting that the skill is intended only for a Chinese-speaking or region-specific context.
Exposing user-info and model-listing functions in an image-only skill gives the skill unnecessary account-inspection and environment-discovery powers. Even if not overtly malicious here, these capabilities can reveal wallet/account metadata and enumerate available models, which is useful for reconnaissance and outside the declared purpose of the skill.
Including full text-chat support in a skill advertised only for Nano Banana Pro seeding images expands the skill beyond its declared trust boundary. This creates an unnecessary channel for arbitrary prompt submission and model interaction, which can be abused for unintended content generation, data processing, or policy bypass attempts.
Video-generation support is unrelated to the manifest’s image-focused purpose and materially broadens what the skill can do with the same API credentials. This larger capability set raises misuse risk, especially because it also accepts multiple media types and task flows not needed for the advertised function.
The title and primary instructional content are written in Chinese, and the examples are framed around Chinese-language social content contexts without stating that users may choose another language. This can violate language/locale policy if the skill implicitly constrains interaction to a specific language without opt-in.
The placeholder value 请替换为你的APIKey is Chinese text embedded directly in the example configuration. This imposes a specific language in user-facing natural language content without offering a language choice or documenting a locale-specific reason.
No suspicious patterns detected.