T08 · Insecure Dependencies
- Location
SKILL.md:59- Finding
Unpinned Global Installation of a Privileged CLI Dependency
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 59-65
Vulnerability Type: Supply-chain exposure through an unpinned global npm dependency
Risk Level: HighVulnerable Code Snippet:
bash tencent-channel-cli version # If it is not installed or its version is below 1.0.6: npm install -g tencent-channel-cliThe instructions further require upgrading with the same unpinned command before continuing:
bash npm install -g tencent-channel-cliTechnical Analysis
The Skill mandates installation of
tencent-channel-clifrom npm by package name without specifying an exact version, package integrity hash, trusted registry URL, lockfile, or cryptographic signature. Consequently, the package resolved at execution time can differ from the package that existed when the Skill was audited.Global npm installation may also execute package lifecycle scripts such as
preinstall,install, andpostinstall. These scripts run with the privileges of the user operating the Agent. The installed CLI subsequently handles authentication, channel administration, content moderation, private messages, and notification subscriptions, making a compromised package especially sensitive.Merely enforcing a minimum version does not prevent installation of a later compromised release.
Attack Path
- An attacker compromises the npm publisher account, package registry path, release pipeline, or a future package version.
- The user invokes the Skill on a system where the CLI is absent or below the required minimum version.
- The Agent executes
npm install -g tencent-channel-cli. - npm resolves the current mutable release and executes any associated lifecycle scripts.
- The malicious package gains code execution with the Agent user's privileges.
- The compromised CLI can subsequently intercept credentials and alter administrative operations presented as legitimate Tencent Channel commands.
...[truncated 730 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the CLI to an exact audited version, for example:
bash npm install -g --ignore-scripts tencent-channel-cli@1.0.6 - Specify the expected official npm registry explicitly and reject unexpected registry configuration.
- Verify a publisher-provided cryptographic signature or SHA-256 integrity value before installation.
- Disable npm lifecycle scripts with
--ignore-scriptsunless an audited installation step strictly requires them. - Prefer a project-local, lockfile-controlled dependency or a verified standalone binary over global installation.
- Run the CLI in a restricted environment with minimum filesystem and network permissions.
- Maintain an allowlist of approved versions and require a separate review before changing that allowlist.
- Do not automatically install or upgrade the dependency merely because a remote version header indicates a newer release.
- Pin the CLI to an exact audited version, for example:
