T09 · Insecure Skill Coding Practices
- Location
scripts/videogen.py:91- Finding
Bearer Credential Disclosure Through an Unrestricted API Base URL
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill appears to be a real AI Hive video-generation tool, but it asks for broad activation and handles API keys, uploads, and billable generation with weak endpoint scoping.
Install only if you intend to use AI Hive for Seedance2.5 video work. Avoid using `--base-url` or `AI_HIVE_BASE_URL` unless you fully trust the endpoint, prefer a dedicated low-limit API key, review costs before batch jobs, and be deliberate about which local media files are uploaded.
scripts/videogen.py:91Bearer Credential Disclosure Through an Unrestricted API Base URL
scripts/videogen.py:646Non-Atomic API Key File Creation Temporarily Exposes Plaintext Credentials
SKILL.md:180Unpinned Third-Party Dependency Installation
This markdown file presents its substantive instructions and release notes exclusively in Chinese, with no indication that the skill is region-specific or that users can choose another language. That can violate language/locale policy requirements when a skill implicitly forces a language without user opt-in.
The skill advertises operational behavior that includes reading environment/configuration, writing files, making network requests, and invoking shell commands, but it declares no explicit tool scope or permission boundaries. In an agent platform, that mismatch can lead to over-privileged execution, making unintended file access, secret exposure, or arbitrary external requests more likely if the skill is triggered in the wrong context.
The description contains extremely broad trigger terms covering many generic video, AIGC, e-commerce, and competitor-product queries. That can cause the skill to be invoked for loosely related user requests, creating an attack surface where a networked, file-writing skill runs unexpectedly and may handle unrelated user data or perform costly actions.
The documentation explicitly broadens scope to comparison, migration, API access, and alternative-tool searches across a large set of unrelated products and companies. This increases the chance of unintended activation outside the core task, which is risky because the skill can upload media, call external APIs, save task identifiers, and download outputs.
The e-commerce targeting section enumerates a very large set of platforms, merchant roles, ad products, and content formats, making invocation plausible for many ordinary commerce or advertising requests. In context, that broad matching is more dangerous because the skill is not purely informational: it can perform external uploads, store API keys, submit billable jobs, and write files on disk.
The module docstring is entirely in Chinese and presents the skill as a general-purpose tool, but it does not indicate that Chinese is optional or that other languages are supported for instructions and user-facing output. This creates a natural-language policy concern because the skill effectively imposes a locale preference without explicit user opt-in or justification.
The document is written entirely in Chinese and does not explicitly offer a language or locale choice for users. Under the stated policy, forcing a specific language without opt-in can be a natural-language policy violation unless the locale restriction is documented and justified.
The example API key value uses Chinese text ('请替换为你的APIKey'), which imposes a specific language in user-facing configuration content. There is no indication that the skill is region-specific or that users may choose another language, so this is a natural-language locale policy issue.
No suspicious patterns detected.