T08 · Insecure Dependencies
- Location
SKILL.md:290- Finding
Unpinned Third-Party Package and Repository Execution in Upgrade Instructions
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 290
Vulnerability Type: Unpinned third-party dependency and mutable upstream source
Risk Level: MediumVulnerable Code
markdown ## Source & Upgrade - **Repository**: https://github.com/its-How/bigdeal-supplier-finder - **Upgrade**: Run `git pull` in the skill directory, or re-run `npx skills add its-how/bigdeal-supplier-finder` to get the latest version. - **Uninstall**: Delete the `bigdeal-supplier-finder/` directory from your skills path.Technical Analysis
The documented upgrade command invokes
npxwith the unversioned package nameskillsand instructs it to install a Skill from an unpinned GitHub repository reference. Neither the command-line package version nor an immutable repository commit is specified.Because these sources are mutable, code retrieved during a future upgrade may differ from the content covered by this audit. If the npm package, its publisher account, the GitHub repository, or a related distribution channel is compromised, following the documented command could retrieve and execute attacker-controlled package logic. The alternative
git pullinstruction likewise imports the current upstream branch rather than a reviewed commit, although it does not by itself establish that newly retrieved code is executed automatically.No evidence indicates that the currently reviewed project contains a malicious payload. The vulnerability is the unsafe supply-chain update mechanism and the trust placed in mutable third-party sources.
Attack Path
- An attacker compromises the npm package, publisher account, upstream repository, or another relevant distribution mechanism.
- The attacker publishes a malicious package release or malicious Skill revision.
- A user follows the documented upgrade command:
npx skills add its-how/bigdeal-supplier-finder npxresolves the unpinned CLI package, and the CLI re ...[truncated 904 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the
skillsCLI to a reviewed exact version, for example by using an explicit package version rather than an unversionednpxinvocation. - Pin the Skill source to an immutable Git commit or cryptographically signed release tag instead of the repository's current default branch.
- Publish and verify SHA-256 checksums or signed provenance for downloaded artifacts before installation.
- Separate retrieval from execution so users can inspect the resolved package and Skill contents before running installation logic.
- Use a lockfile or equivalent dependency manifest to preserve reviewed transitive dependency versions.
- Run upgrades in a sandbox with minimal filesystem, environment-variable, credential, and network access.
- Replace the generic
git pullrecommendation with a documented process that fetches, verifies, reviews, and then checks out a specific approved commit. - Require a new security review whenever the pinned package version or Skill commit changes.
- Pin the
