T09 · Insecure Skill Coding Practices
- Location
scripts/videogen.py:74- Finding
Bearer API Credential Can Be Transmitted to an Arbitrary Endpoint
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is mainly an AI Hive Instagram video tool, but its API client can send the user's bearer API key to an arbitrary configured base URL, which needs review before installation.
Review this skill before installing. Use it only if you trust AI Hive with the API key and uploaded media, avoid custom base URLs or inherited AI_HIVE_BASE_URL values, and prefer a pinned dependency install in an isolated environment.
scripts/videogen.py:74Bearer API Credential Can Be Transmitted to an Arbitrary Endpoint
SKILL.md:69Unpinned Third-Party Dependency Installation
The file exposes substantially broader capabilities than the advertised Instagram e-commerce video skill: general text chat, image generation, model discovery, account info lookup, and arbitrary media upload. In a skill ecosystem, this scope expansion is dangerous because users and policy layers may trust the skill as narrowly bounded, while it can actually be used as a generic AI/API wrapper to access unrelated platform functions and exfiltrate account/context data.
The skill includes executable command examples that invoke Python, install packages, and interact with scripts, yet it declares no explicit tool restrictions or permission scope. In an agent environment, this can lead to broader-than-necessary access to shell, filesystem, environment variables, and network resources, increasing the risk of misuse if the skill or its supporting scripts are modified or invoked unsafely.
The module docstring explicitly describes a general-purpose AI Hive tool, which contradicts the declared specialized Instagram video purpose. That mismatch increases the chance that reviewers, orchestrators, or end users will misclassify the skill's privilege and acceptable behavior, enabling capability smuggling under a narrower trust label.
This code file contains user-facing natural-language descriptions entirely in Chinese and labels the tool as a general-purpose skill, but it does not state that Chinese is optional or provide any language/locale selection. Under the policy rule, forcing a specific language without user opt-in is a natural-language policy concern.
The user-info and models endpoints provide account/platform introspection that is not necessary for a narrowly scoped Instagram video generation skill. Exposing them broadens data access and reconnaissance capability, which can leak wallet/account details and facilitate discovery of other available models or unsupported uses of the API.
This markdown file presents substantive skill information only in Chinese, which effectively forces a specific language on readers without any opt-in or alternative. The stated policy forbids language or locale constraints unless they are optional or clearly justified as region-specific.
The description includes Chinese terms alongside English to define when the skill should be used, but it does not indicate that language is optional or user-selectable. This can be a locale/language policy issue because the skill implicitly assumes multilingual usage without explicit opt-in or language preference handling.
The placeholder value includes the Chinese phrase '请替换为你的APIKey', which imposes a specific language in user-facing configuration content. The file does not provide an opt-in, alternative locale, or justification for restricting the skill to Chinese-language users.
No suspicious patterns detected.