T08 · Insecure Dependencies
- Location
README.md:58- Finding
Unpinned npm executable and mutable Skill source in installation instructions
- Content
View full analysis
Vulnerability Details
File Location:
README.md:58
Vulnerability Type: Supply-chain exposure through unpinned executable dependencies and remote source revisions
Risk Level: MediumVulnerable Code
bash npx skills add AntreasAntoniou/bitwarden-leaseTechnical Analysis
The documented installation command invokes the
skillspackage throughnpxwithout specifying a reviewed package version or integrity value. If that package is not already available locally,npxmay retrieve and execute its current published version.The referenced Skill repository is also identified by repository name rather than an immutable commit hash or signed release. Consequently, the code and instructions installed by this command can change after the audited project revision has been reviewed.
This creates a supply-chain trust boundary involving both the npm-hosted executable and the mutable repository source. A compromised package, transferred package ownership, malicious future release, compromised repository, or force-updated reference could cause users to execute or install content that was not covered by this audit.
The audited local scripts themselves do not retrieve remote payloads, and exploitation requires a user to follow the documented installation command.
Attack Path
- An attacker compromises the npm package used by
npx, publishes a malicious version under the expected package name, or compromises the referenced Skill repository. - The attacker adds code or Skill instructions that execute commands, alter agent behavior, or install additional components.
- A user follows
README.md:58without independently pinning or verifying the retrieved artifacts. npxretrieves and executes the current package version, which then resolves the mutable repository source.- The attacker-controlled content runs or is installed with the permissions of the invoking user.
- Depending on the malicio ...[truncated 863 chars]
- An attacker compromises the npm package used by
- Remediation
View remediation
Remediation Suggestions
- Pin the
skillsnpm package to a specifically reviewed version rather than allowingnpxto select the current release. - Reference the Skill repository by an immutable commit hash or a cryptographically signed release tag.
- Use npm lockfile and integrity metadata where the installation mechanism supports them.
- Prefer a download-and-verify workflow that checks a published SHA-256 digest or signature before executing installation code.
- Document the exact expected repository commit and package version so users can verify what is being installed.
- Consider using an invocation that refuses implicit installation when the required package is absent, followed by a separate, explicitly verified installation step.
- Re-audit and update the pinned versions deliberately when upstream changes are required.
- Pin the
