T08 · Insecure Dependencies
- Location
SKILL.md:23- Finding
Unpinned Third-Party CLI Enables Unattended Global Skill Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:23-32,SKILL.md:48-50, andSKILL.md:87-95
Vulnerability Type: Unpinned dependency execution and unsafe third-party skill installation
Risk Level: MediumVulnerable Code
SKILL.md:23-32:markdown The Skills CLI (`npx skills`) is the package manager for the open agent skills ecosystem. Skills are modular packages that extend agent capabilities with specialized knowledge, workflows, and tools. **Key commands:** - `npx skills find [query]` - Search for skills interactively or by keyword - `npx skills add <package>` - Install a skill from GitHub or other sources - `npx skills check` - Check for skill updates - `npx skills update` - Update all installed skills **Browse skills at:** https://skills.sh/SKILL.md:48-50:bash npx skills find [query]SKILL.md:87-95:markdown ### Step 4: Offer to Install If the user wants to proceed, you can install the skill for them: ```bash npx skills add <owner/repo@skill> -g -yThe
-gflag installs globally (user-level) and-yskips confirmation prompts.text ### Technical Analysis The Skill directs the agent to execute `npx skills` without pinning the CLI package to an audited version or integrity-verified artifact. Depending on the local npm configuration and cache state, `npx` can retrieve and execute the package currently resolved under the `skills` name. The executed implementation can therefore differ from the implementation reviewed when this Skill was published. The workflow also allows skills discovered through external search results to be installed from GitHub or other sources. It does not require verification of repository ownership, release signatures, commit hashes, package contents, or integrity metadata. The documented installation command combines global user-level installation (`-g`) with confirmation suppression (`-y`), removing an i ...[truncated 1834 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the CLI to a reviewed version, for example by using an explicitly approved version rather than an unqualified
npx skillsinvocation. - Enforce package-lock or integrity verification where supported, and obtain packages only from an approved registry.
- Restrict installable skills to an allowlist of trusted owners, repositories, releases, and immutable commit hashes.
- Inspect downloaded skill contents, including scripts, hooks, dependencies, and instruction files, before installation.
- Remove
-yso that installation cannot proceed without a final interactive confirmation. - Require explicit user approval immediately before installation and clearly disclose the source, reviewed revision, and destination.
- Default to project-local installation instead of global installation. Use global scope only when the user explicitly requests it and understands the broader impact.
- Avoid automatic bulk updates. Review changes and provenance before running
skills update. - Execute third-party installation tooling in a restricted environment with minimal filesystem, credential, and network access.
- Pin the CLI to a reviewed version, for example by using an explicitly approved version rather than an unqualified
