T09 · Insecure Skill Coding Practices
- Location
scripts/batch_calibrate.py:366- Finding
API Key Exposed Through Command-Line Arguments
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill has a coherent product-image retouching purpose, but it needs review because its API-key handling and remote upload/download controls create avoidable exposure risks.
Review before installing if your product photos, packaging text, or API quota are sensitive. Prefer using AI_HIVE_API_KEY instead of putting the key on the command line, run it in an isolated environment, use --preview first, and avoid processing confidential images unless you trust AI Hive and its storage redirects.
scripts/batch_calibrate.py:366API Key Exposed Through Command-Line Arguments
scripts/batch_calibrate.py:313API Key File Is Protected Only After It Is Written or Read
scripts/batch_calibrate.py:202API-Controlled Upload Destination Is Not Restricted to Trusted Hosts
scripts/batch_calibrate.py:256Result Downloads Lack Host, Size, and Content Validation
SKILL.md:29Runtime Dependency Is Installed Without Version or Integrity Pinning
The skill instructs users to run a local Python script that uses shell execution, filesystem access, environment/config secrets, and network calls, but it declares no tool restrictions or permission scope. This creates an unnecessarily broad trust boundary: an agent or runtime may permit capabilities beyond what the user expects, increasing the risk of secret exposure, unintended file access, or arbitrary command execution if the script or surrounding workflow is modified or abused.
The description and primary instructional content are written in Chinese, and the file does not state that users may choose another language or that the skill is restricted to a Chinese-language region or workflow. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation.
该文件在顶层文档字符串中使用中文描述技能用途,且全文件的用户可见提示与 CLI 帮助文本也均为中文,体现出技能对输出语言/交互语言的默认强制设定。文件中没有提供语言切换、用户选择或区域合规性说明,因此符合语言/locale policy violation 的检查条件。
This JSON example includes the placeholder text "请替换为你的APIKey", which forces a specific language in user-facing configuration content. The policy for this review flags language or locale constraints when they are imposed without opt-in or documented justification.
No suspicious patterns detected.