T03 · Remote Payload Retrieval and Execution
- Location
references/cli-installation-guide.md:101- Finding
Remote Installation Script Is Executed Without Integrity Verification
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill has a legitimate Alibaba Cloud CMS dataset purpose, but it includes overbroad installation, plugin-update, credential, and workspace-provisioning behaviors that users should review before installing.
Install only if you are comfortable with cloud dataset mutation and query access. Prefer preinstalling a pinned, verified Aliyun CLI and required CMS plugin yourself; avoid the curl-to-bash quick setup, avoid global plugin auto-install/update, use least-privilege RAM policies scoped to the intended workspace, and require explicit confirmation before workspace creation or dataset deletion.
references/cli-installation-guide.md:101Remote Installation Script Is Executed Without Integrity Verification
SKILL.md:25Mandatory Automatic Plugin Installation and Unpinned Plugin Updates
references/cli-installation-guide.md:39Mutable CLI Archives Are Installed Into Privileged Executable Paths Without Verification
SKILL.md:211User-Controlled Descriptions Are Interpolated Into Shell Commands Unsafely
SKILL.md:128Dataset Workflow Automatically Expands Into Workspace Provisioning
references/cli-installation-guide.md:108Credential Examples Expose Long-Lived Access Keys Through Shell Interfaces
Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.
Using Binary
# Download
wget https://aliyuncli.alicdn.com/aliyun-cli-macosx-latest-amd64.tgz
# Extract
tar -xzf aliyun-cli-macosx-latest-amd64.tgz
Fetching and immediately executing https://aliyuncli.alicdn.com/setup.sh gives a remote party direct code execution on the user's machine with no opportunity for inspection or integrity validation. In installation documentation, this is especially dangerous because users are primed to trust and copy-paste the command exactly, making supply-chain compromise highly impactful.
curl -fsSL https://aliyuncli.alicdn.com/setup.sh | bash
aliyun version
The | bash construct creates an execution chain from network input directly into a shell interpreter, eliminating inspection boundaries and making malicious content run immediately. In a CLI installation guide, this pattern materially raises exploitation risk because a compromised script source translates directly into code execution on end-user systems.
curl -fsSL https://aliyuncli.alicdn.com/setup.sh | bash
aliyun version
The documented minimum permissions omit workspace actions even though the workflow later requires get-workspace and may perform put-workspace. This mismatch can mislead reviewers and operators about the actual privilege needed, undermining least-privilege review and making the skill's effective capability broader than advertised.
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.
| `schema` | Required (CreateDataset) | Schema JSON object | — |
| `description` | Optional | Dataset description | — |
| `query` | Required (ExecuteQuery) | Query text | — |
| `type` | Auto-filled (ExecuteQuery) | Query type placeholder. Always `SQL`, do not ask user | `SQL` |
| `max-results` | Optional (ListDatasets) | Max results per page | — |
| `next-token` | Optional (ListDatasets) | Pagination token for next page | — |
The skill is presented as dataset lifecycle/query management, but its workflow expands scope to creating or modifying CMS workspaces. That increases the authority and side effects of the skill beyond what a user would reasonably expect from a dataset-focused tool, creating a risk of unintended infrastructure changes.
Automatically creating a workspace when a lookup fails is an unjustified write action for a dataset-management skill. A failed existence check could lead to provisioning new resources, binding them to an SLS project, and causing cost, governance, or configuration drift without the user explicitly requesting workspace creation.
The Cleanup section provides a ready-to-run destructive delete command without repeating the explicit confirmation and warning requirements stated elsewhere. In practice, operators or downstream agents may execute cleanup snippets directly, which raises the chance of accidental dataset deletion.
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.
- Before DeleteDataset: show dataset details and ask for explicit confirmation
#### INCORRECT
- Creating a dataset without checking for duplicates
- Deleting a dataset without user confirmation
- Updating description without showing the current value
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
tar -xzf aliyun-cli-macosx-latest-amd64.tgz
# Move to PATH
sudo mv aliyun /usr/local/bin/
# Verify
aliyun version
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
tar -xzf aliyun-cli-macosx-latest-amd64.tgz
# Move to PATH
sudo mv aliyun /usr/local/bin/
# Verify
aliyun version
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
tar -xzf aliyun-cli-macosx-latest-amd64.tgz
# Move to PATH
sudo mv aliyun /usr/local/bin/
# Verify
aliyun version
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
tar -xzf aliyun-cli-linux-latest-arm64.tgz sudo mv aliyun /usr/local/bin/
### Windows
The guide recommends executing a remotely fetched script directly with bash and provides no integrity verification, review step, or warning. This creates a clear supply-chain execution risk: if the hosting endpoint, CDN, DNS, TLS trust chain, or script content is compromised, users may run attacker-controlled code immediately on their machine.
The documentation tells users to place long-lived access keys in shell environment variables without any warning about shell history, process inspection, inherited environments, accidental logging, or persistence in profile files. While common, this practice increases the chance of credential exposure and account compromise if the workstation or session is inspected or misconfigured.
The documentation includes a dataset deletion command but provides no warning that it is destructive, irreversible, or should be confirmed before use. In an agent skill context, terse command references can be copied directly into automation or suggested to users, increasing the chance of accidental data loss from routine use or prompt-driven execution.
No suspicious patterns detected.