T08 · Insecure Dependencies
- Location
SKILL.md:17- Finding
Downloaded UCloud CLI binaries are installed without integrity or authenticity verification
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This UCloud operations skill is coherent, but it asks agents to handle live cloud resources in ways that can expose credentials or install an unverified CLI binary.
Review before installing. Use this skill only in an isolated, trusted environment with a known-good UCloud CLI already installed if possible. Do not allow it to print passwords or private keys into chat, avoid shared /tmp payload files for sensitive requests, and require explicit confirmation before creating, changing, or deleting cloud resources.
SKILL.md:17Downloaded UCloud CLI binaries are installed without integrity or authenticity verification
references/cli-usage.md:62Sensitive API requests use a predictable shared temporary file
references/deployment.md:9Deployment summaries are instructed to disclose login credentials
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
## 凭据约定
官方 CLI 将 profile 存储在 `~/.ucloud/config.json` 和 `~/.ucloud/credential.json` 中。
将 profile 作为本技能的主要凭据来源。
CLI 提供 `ucloud auth login`、`ucloud init`、`ucloud config add`、`ucloud config update` 和 `ucloud config list`。优先使用 OAuth 登录处理交互式人工授权;AK/SK 初始化和配置变更是敏感操作,因为 `config add/update` 的 flag 包含 public key 和 private key。
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
{"Action":"ListRegions"}
EOF
ucloud api --local-file /tmp/ucloud-request.json
rm -f /tmp/ucloud-request.json
# ListZones(需要 Region)
cat > /tmp/ucloud-request.json << 'EOF'
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
{"Action":"ListRegions"}
EOF
ucloud api --local-file /tmp/ucloud-request.json
rm -f /tmp/ucloud-request.json
# ListZones(需要 Region)
cat > /tmp/ucloud-request.json << 'EOF'
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
{"Action":"ListRegions"}
EOF
ucloud api --local-file /tmp/ucloud-request.json
rm -f /tmp/ucloud-request.json
# ListZones(需要 Region)
cat > /tmp/ucloud-request.json << 'EOF'
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
{"Action":"ListRegions"}
EOF
ucloud api --local-file /tmp/ucloud-request.json
rm -f /tmp/ucloud-request.json
# ListZones(需要 Region)
cat > /tmp/ucloud-request.json << 'EOF'
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
{"Action":"ListRegions"}
EOF
ucloud api --local-file /tmp/ucloud-request.json
rm -f /tmp/ucloud-request.json
# ListZones(需要 Region)
cat > /tmp/ucloud-request.json << 'EOF'
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
{"Action":"ListRegions"}
EOF
ucloud api --local-file /tmp/ucloud-request.json
rm -f /tmp/ucloud-request.json
# ListZones(需要 Region)
cat > /tmp/ucloud-request.json << 'EOF'
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
{"Action":"ListRegions"}
EOF
ucloud api --local-file /tmp/ucloud-request.json
rm -f /tmp/ucloud-request.json
# ListZones(需要 Region)
cat > /tmp/ucloud-request.json << 'EOF'
The guidance explicitly instructs the agent to display sensitive access details after provisioning, including login credentials. In a cloud-operations skill, this creates a real risk of exposing secrets in chat history, logs, screenshots, shared workspaces, or to unintended viewers, enabling unauthorized access to newly created infrastructure.
The instruction to display login credentials and other access details after resource creation is a direct secret-exposure issue. Because this skill performs real UCloud resource operations, exposed credentials could be used immediately to access hosts or services, making the operational context more dangerous rather than less.
The skill description is broadly scoped to trigger on generic deployment and go-live requests, which can overlap with many unrelated tasks. In an agentic environment this can cause the skill to be selected when the user did not clearly ask for real cloud-side actions, increasing the chance of unintended resource creation, modification, or deletion in a live account.
Treating all deployment-style requests as a strong trigger without clear limits creates ambiguous activation conditions. Because this skill is designed for real infrastructure operations, ambiguous triggering can escalate harmless planning or advisory conversations into execution-oriented cloud actions against the user's account.
This JSON eval file consistently specifies prompts, expected outputs, and assertions in Chinese, including requirements the assistant should follow, but does not indicate that language choice is optional or region-specific. That creates a natural-language policy concern if organizational policy requires not forcing a specific language without user opt-in.
This markdown file presents all operational guidance exclusively in Chinese and does not indicate that users may choose another language or that the skill is intentionally limited to a Chinese-speaking or region-specific audience. That creates a natural-language policy concern because it effectively forces a specific language without user opt-in.
The skill directs the agent to query account-scoped metadata such as regions, projects, and balance from the user's cloud account context without first telling the user that account information will be accessed. This creates a privacy and authorization-transparency issue: even if the data is needed operationally, the agent may enumerate account details the user did not explicitly realize would be queried.
All natural-language instructions in this file are in Chinese, and the skill does not indicate that language selection is optional or that the skill is intentionally limited to a Chinese-speaking context. That creates a locale policy concern because it effectively forces a specific language without user opt-in.
The entire skill guidance is written only in Chinese and does not indicate that users may choose another language or that the skill is intentionally limited to a Chinese-speaking or region-specific audience. Under the policy, forcing a specific language without user opt-in is a natural-language locale violation.
The file’s instructional content is entirely in Chinese and does not provide any language choice, opt-in, or note that the skill is intentionally limited to Chinese-speaking users. Under the stated policy, forcing a specific language without user opt-in is a natural-language policy violation.
The entire skill file is written in Chinese and provides no indication that language selection is optional or limited to a region-specific context. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation.
The entire skill file is written as a mandatory Chinese-language product rule set and does not indicate that language choice is optional or user-selected. This can violate language/locale policy when the skill is used in contexts where users have not opted into Chinese output.
整个技能说明仅以中文规定行为和输出方式,且未明确给用户提供语言选择或按用户偏好切换语言的机制。若组织要求避免未经用户同意强制特定语言,这种默认单一语言约束可能构成自然语言策略违规。
The manifest scopes this skill to real UCloud resource operations and deployment-related cloud tasks through the official UCloud CLI. The documented example for generating an alphanumeric password uses local shell utilities and introduces a general-purpose secret generation capability that is not justified by that scope.
All user-facing natural-language guidance in the file is in Chinese, and the document does not indicate that the skill is region-specific or that users may opt into another language. Under the policy rule, forcing a specific language without opt-in can be a locale-policy violation.
No suspicious patterns detected.