T08 · Insecure Dependencies
- Location
references/cli-installation-guide.md:20- Finding
Unverified Installation of Mutable Aliyun CLI and Plugin Dependencies
- Content
View full analysis
Vulnerability Details
File Location:
references/cli-installation-guide.md, lines 20–23 and 48–53
Vulnerability Type: Supply-chain exposure through unpinned, unverified executable dependencies
Risk Level: MediumVulnerable Code
bash curl -L -o aliyun-cli.tgz https://github.com/aliyun/aliyun-cli/releases/latest/download/aliyun-cli-linux-amd64.tgz tar -xzf aliyun-cli.tgz sudo mv aliyun /usr/local/bin/aliyun aliyun versionbash aliyun configure --auto-plugin-install true aliyun plugin update aliyun plugin list | grep paistudioThe guide states that the plugin is fetched automatically when an
aliyun paistudiocommand is first run.Technical Analysis
The Linux installation procedure downloads the mutable
latestrelease archive, extracts it, and places the resulting executable in the privileged/usr/local/binpath without validating a cryptographic checksum or signature. A TLS connection protects data in transit but does not independently establish that the downloaded artifact is the specific version reviewed or approved by the user.The plugin workflow likewise enables automatic installation and performs an unrestricted update without pinning or integrity verification. This allows the effective executable components used by the skill to change after the skill package itself has been audited.
This is a supply-chain weakness rather than evidence that the current Aliyun artifacts are malicious. Exploitation requires compromise or unauthorized replacement of the release asset, plugin distribution mechanism, associated publishing account, or another trusted delivery component.
Attack Path
- An attacker compromises or replaces the mutable release asset or plugin artifact served through a trusted distribution channel.
- A user follows the documented installation procedure.
- The mutable archive is downloaded without version pinning, checksum verification, or signature verification.
- The extracted executable is ...[truncated 1097 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace the mutable
latestURL with an explicitly approved and pinned CLI version. - Obtain the checksum through an authenticated official channel and verify it before extraction, for example with
sha256sum --check. - Prefer vendor-provided cryptographic signatures and validate the signing key and signature before installation.
- Abort installation immediately if the checksum, signature, filename, architecture, or expected version does not match.
- Extract into a temporary staging directory and validate the archive contents before copying the executable into an executable search path.
- Avoid privileged installation where practical; otherwise, perform integrity verification before the
sudostep. - Disable automatic plugin installation and pin an approved
paistudioplugin version. - Document a controlled plugin upgrade process that verifies provenance and integrity before activation.
- Record the installed CLI and plugin versions so deployments can be reproduced and audited.
- Replace the mutable
