T08 · Insecure Dependencies
Warning
- Location
- README.md:17
- Finding
- Unpinned Remote Package Execution with Global Installation Scope## Vulnerability Details **File Location**: `README.md`, lines 17-24 **Vulnerability Type**: Unpinned dependency execution and mutable remote installation source **Risk Level**: Medium ```bash npx skills add anivar/redux-saga-skill -g ``` Or with full URL: ```bash npx skills add https://github.com/anivar/redux-saga-skill ``` ### Technical Analysis The documented installation commands rely on mutable remote dependencies. The first command invokes `npx` without pinning the `skills` CLI to an audited version. Depending on the local environment and package availability, `npx` may download and execute the current package release. The `-g` option requests global installation scope, which is broader than required to consume the Skill locally. The alternative command installs directly from a GitHub repository URL without specifying an immutable commit SHA. Consequently, the content installed later may differ from the content reviewed during this audit. The repository itself contains documentation rather than an automatically executed malicious payload. Exploitation therefore requires a user or agent to follow one of these installation instructions after the relevant package or upstream source has been compromised or changed. ### Attack Path 1. An attacker compromises the unpinned `skills` package, its publication account, its dependency chain, or the referenced GitHub repository. 2. The attacker publishes or commits a malicious revision while retaining the expected package or repository identity. 3. A user follows the README and executes one of the documented installation commands. 4. `npx` retrieves and executes mutable package code, or the installer retrieves mutable repository content. 5. The malicious code runs with the invoking user's privileges and may alter globally installed Skill state when `-g` is used. ### Impact Assessment Successful exploitation could execute attacker-controlled code with the permission ...[truncated 567 chars]
- Remediation
- ## Remediation Suggestions 1. Pin the CLI to a reviewed exact version, for example by using an explicitly versioned package reference rather than an unqualified `npx skills` invocation. 2. Pin repository-based installation to an audited commit SHA instead of a mutable branch or repository URL. 3. Remove `-g` from the default command and recommend project-local or user-scoped installation. Document global installation only as an optional operation with a clear explanation of its scope. 4. Publish and verify integrity information, such as package-manager lockfile metadata, registry integrity hashes, signed releases, or commit-signature verification. 5. Recommend reviewing the resolved package version and source before approving execution, particularly in automated agent environments. 6. Avoid automatically confirming `npx` installation prompts in CI or agent workflows, and restrict installation processes using sandboxing and least-privilege filesystem permissions.
