T08 · Insecure Dependencies
- Location
README.md:17- Finding
Unpinned npm Package and Mutable Remote Skill Installation
- Content
View full analysis
Vulnerability Details
File Location:
README.md, line 17
Vulnerability Type: Unpinned third-party package and mutable Git repository installation
Risk Level: MediumVulnerable Code:
bash npx skills add https://github.com/Hey-Salad/tech-data-playbook-skill --skill tech-data-playbook --yes --globalTechnical Analysis
The documented installation command executes the
skillsnpm package throughnpxwithout specifying an audited package version. It also installs Skill content from a mutable GitHub repository URL without pinning a commit SHA or verifying an artifact checksum or signature.Consequently, the code executed and content installed when a user follows the documentation may differ from what was reviewed during this audit. The
--yesoption suppresses interactive confirmation, while--globalexpands the installation scope beyond the current project.This is a software supply-chain weakness rather than evidence that the currently reviewed repository contains an embedded malicious payload.
Attack Path
- An attacker compromises the npm package, its maintainer account, the GitHub repository, or an associated mutable branch.
- The attacker publishes malicious package code or modifies the remote Skill content.
- A user runs the installation command from the README.
npxresolves and executes the unpinned npm package in the user's security context.- The installer retrieves the mutable repository content and installs it globally.
- Malicious installation logic can access resources available to the operating-system user, while malicious Skill instructions may affect subsequent compatible agent sessions.
Impact Assessment
Successful exploitation could execute arbitrary commands with the privileges of the user running
npx. Potential effects include modification of user-accessible files, theft of credentials available to that process, installation of altered Skill co ...[truncated 309 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the
skillsnpm package to a specific, reviewed version instead of allowingnpxto resolve the current release. - Pin the GitHub source to an immutable commit SHA or signed release artifact.
- Verify checksums, signatures, and repository ownership before installation.
- Remove
--yesso users can inspect and approve installation actions. - Prefer a project-local installation over
--globalunless global installation is strictly required. - Run installation in a sandbox or least-privileged environment.
- Document the expected package version, repository commit, artifact digest, and verification procedure.
- Continuously monitor the npm package and repository for ownership changes or unauthorized releases.
- Pin the
