T08 · Insecure Dependencies
- Location
SKILL.md:29- Finding
Automatic Installation and Update of an Unpinned Global CLI Package
- Content
View full analysis
``` ### Technical Analysis The Skill instructs the Agent to install `@gemdesign-ai/cli` globally when it is absent and to update it automatically whenever a newer version exists. It does not pin an exact reviewed version, verify a package integrity digest, use a lockfile, or require review of a new release before execution. The effective executable implementation is therefore not contained in the audited project and can change after this audit. Installing globally also expands the package's reach beyond an isolated project environment. npm package installation may execute lifecycle scripts, while subsequent `gemdesign` commands execute the downloaded package with the invoking user's permissions. The CLI is a legitimate dependency required by the declared functionality, but automatic installation of the latest global version exceeds the minimum safe privilege and dependency-isolation model necessary to provide that functionality. ### Attack Path 1. An attacker compromises the npm publisher account, package repository, release pipeline, or a future package version. 2. The attacker publishes a malicious release of `@gemdesign-ai/cli`. 3. The Skill runs `npm outdated -g @gemdesign-ai/cli` and then automatically executes `npm update -g @gemdesign-ai/cli`, or installs the compromised release on a new system. 4. Malicious lifecycle code or CLI code executes with the permissions of the Agent process. 5. The malicious p ...[truncated 897 chars]- Remediation
View remediation
