T05 · Unauthorized Access and Privilege Escalation
- Location
references/ram-policies.md:37- Finding
Overprivileged Alibaba Cloud Access Policies
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill appears to do the promised Alibaba Cloud video analysis, but its setup guidance asks for overly broad cloud access and risky credential/CLI configuration.
Review before installing. Use a dedicated least-privilege RAM user or role, restrict OSS access to one approved bucket and /temp/quanmiao/ prefix, avoid FullAccess policies, do not enter access keys into agent-visible commands or logs, prefer short-lived credentials, and be aware that local videos are uploaded to Alibaba Cloud for processing.
references/ram-policies.md:37Overprivileged Alibaba Cloud Access Policies
references/cli-installation-guide.md:99Access Keys Are Recommended as Command-Line Arguments
references/cli-installation-guide.md:38Unverified Mutable CLI Binary Installation with Elevated Placement
scripts/requirements.txt:1Unbounded Python SDK Dependency Version
The declared purpose says this skill analyzes videos through Bailian/QuanMiaoLightApp and lists specific analysis-related triggers and required API actions. However, the supplied code chunk performs only dependency and credential checks. It does not submit or retrieve video analysis tasks, does not process video inputs, and does not interact with any video-analysis API endpoint. While environment checking could be a supporting utility, this chunk by itself materially differs from the declared primary purpose, so it should be flagged as a mismatch.
The skill description explains architecture but does not prominently warn users that local videos may be uploaded to OSS and then analyzed by external cloud services. This is a meaningful privacy and data-handling issue because users may provide sensitive local media without informed consent about off-device transfer and storage.
The cleanup step includes a parameterized delete command against OSS: rm oss://{oss_bucket}/{oss_object_key}. If those parameters are influenced incorrectly, omitted, or broadened, the skill could delete unintended cloud objects, causing irreversible data loss; this is especially sensitive because shell-based destructive commands are being recommended directly.
Delete uploaded OSS objects:
aliyun ossutil rm oss://{oss_bucket}/{oss_object_key} --user-agent AlibabaCloud-Agent-Skills/alibabacloud-bailian-videoanalysis
Cleanup best practices:
The permission guidance introduces broader access than the declared baseline by adding OSS and ModelStudio permissions not reflected in the stated required product/actions. In a skill that may handle local or remote videos, unnecessary OSS permissions are especially risky because they can enable listing, copying, downloading, or exposing stored media beyond the narrow task of submitting and retrieving analysis jobs.
Recommending full-access system policies such as AliyunBailianFullAccess, AliyunQuanMiaoLightAppFullAccess, and AliyunOSSFullAccess grants far more privilege than this skill's narrowly described video-analysis workflow requires. This is dangerous because it normalizes over-privileged deployment and could expose unrelated cloud resources, stored videos, and broader service capabilities if the skill, operator, or credentials are abused.
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).
| `aliyun ossutil ls` | List OSS buckets |
| `aliyun ossutil cp <local-file> oss://<bucket>/<key>` | Upload file to OSS |
| `aliyun ossutil sign oss://<bucket>/<key> --expires-duration 2h` | Generate temporary URL |
| `aliyun ossutil rm oss://<bucket>/<key>` | Delete uploaded OSS object (cleanup) |
## Execution Order
The skill clearly instructs the agent to run shell commands, upload files to OSS, write result files, and delete cloud objects, yet it declares no explicit tool scope such as allowed-tools or permissions. That creates a hidden capability gap where a caller may not realize the skill can execute commands and modify local/cloud state, increasing the risk of unsafe invocation and poor policy enforcement.
The trigger list contains broad natural-language phrases like 'analyze video', 'summarize this video', and 'what is this video about', which could match ordinary conversation and invoke cloud actions unexpectedly. In this skill, accidental invocation is more dangerous because execution may enumerate workspaces, upload local files to OSS, and send content to external APIs.
The skill mandates a detection priority that falls back to a default of Chinese for all user-facing messages. This imposes a locale choice on the user when language cannot be inferred, without offering explicit opt-in or an interactive language choice.
The instruction to auto-fetch available workspaces and default to the first one reduces user control over which cloud workspace is used. In a multi-tenant or multi-project environment, this can lead to processing data in the wrong workspace, exposing metadata or causing cross-project operational mistakes.
Do not ask the user for workspace_id upfront. Always auto-fetch available workspaces first:
aliyun modelstudio list-workspaces --user-agent AlibabaCloud-Agent-Skills/alibabacloud-bailian-videoanalysis
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
# Assuming a specific workspace_id without checking
python scripts/quanmiao_submit_videoAnalysis_task.py --workspace_id llm-known-good --file_url ...
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
# Assuming a specific workspace_id without checking
python scripts/quanmiao_submit_videoAnalysis_task.py --workspace_id llm-known-good --file_url ...
This file is a broad Alibaba Cloud CLI administration guide embedded in a skill whose declared scope is Bailian video analysis via QuanMiaoLightApp only. Including unrelated installation, authentication, ECS, RAM, and plugin workflows materially expands the operational scope an agent or user may follow, increasing the chance of unauthorized or unnecessary cloud actions outside the skill’s intended boundary.
The guide explicitly instructs users to enable automatic plugin installation and frames this as necessary for the full plugin ecosystem, even though the skill metadata forbids use of other products for video analysis. Auto-installing plugins changes CLI behavior to fetch and install additional code/components on demand, which broadens attack surface and undermines the skill’s stated product restriction.
The instruction to run 'aliyun configure set --auto-plugin-install true' omits an immediate warning that future CLI operations may automatically download and install plugins. That lack of disclosure is dangerous because it alters execution behavior and trust boundaries in a way users may not expect, especially inside an agent skill where minimizing side effects is important.
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
tar -xzf aliyun-cli-macosx-latest-amd64.tgz
sudo mv aliyun /usr/local/bin/
aliyun version
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
tar -xzf aliyun-cli-macosx-latest-amd64.tgz
sudo mv aliyun /usr/local/bin/
aliyun version
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
tar -xzf aliyun-cli-macosx-latest-amd64.tgz
sudo mv aliyun /usr/local/bin/
aliyun version
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
tar -xzf aliyun-cli-macosx-latest-amd64.tgz
sudo mv aliyun /usr/local/bin/
aliyun version
The quick-start commands encourage users to provide access keys directly to 'aliyun configure set' without warning at the point of use that these credentials will be persisted to '~/.aliyun/config.json'. In agent-driven or shared environments, silently storing long-lived secrets on disk increases the risk of credential exposure, reuse, or accidental inclusion in backups and images.
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
**Where to Get Access Keys**
1. Log in to Aliyun Console: https://ram.console.aliyun.com/
2. Navigate to: AccessKey Management
3. Create a new AccessKey pair
4. Save the secret immediately — it's only shown once
### Configuration Modes
Aliyun CLI supports 6 authentication modes. All examples below use non-interactive flags.
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
# Restrict permissions
chmod 600 ~/.aliyun/config.json
The next-steps section tells users to install and explore unrelated service plugins such as ECS, VPC, RDS, and FC. In the context of a Bailian-only video-analysis skill, this encourages capability drift into broader cloud administration and can lead agents or operators to invoke services well beyond intended permissions or review scope.
The skill manifest says it only requires QuanMiaoLightApp video-analysis actions, but this document expands the required permissions to include ModelStudio and broad OSS operations. That creates a permission scope mismatch and can pressure users into granting capabilities unrelated to the declared function, increasing the blast radius if the skill is misused or compromised.
The skill is described as a Bailian video analysis skill using QuanMiaoLightApp API, but this verification method instructs operators to interact with OSS for bucket enumeration, object upload, and URL signing. While obtaining a URL for video input can support analysis, listing buckets and performing storage-management steps are broader cloud-storage capabilities not clearly justified by the stated skill purpose.