T08 · Insecure Dependencies
- Location
SKILL.md:40- Finding
Unpinned npx Package Execution in the Upgrade Procedure
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 40
Vulnerability Type: Insecure, mutable third-party dependency execution
Risk Level: MediumComplete Code Snippet:
markdown - **Upgrade**: Run `git pull` in the aha-orch repo, or re-run `npx skills add its-how/aha-orch` to get the latest version.Technical Analysis
The documented upgrade procedure invokes the
skillsnpm package throughnpxwithout specifying a reviewed package version. It also identifies the Skill source by repository name rather than an immutable commit or signed release.When the command is followed,
npxmay download and execute the package version currently resolved by the npm registry. The installed Skill content is likewise obtained from mutable upstream state. Consequently, the effective code and instructions used during a future upgrade can differ from the artifact covered by this audit.This creates a supply-chain exposure: compromise of the npm package, its publisher account, the package-resolution path, or the upstream repository could introduce malicious installer behavior or altered Skill content.
Attack Path
- An attacker compromises the
skillsnpm package, its publishing account, or the referenced upstream repository. - The attacker publishes a malicious package version or modifies the repository's mutable default branch.
- A user follows the documented upgrade instruction and runs
npx skills add its-how/aha-orch. npxresolves and executes the mutable package without an explicit reviewed version or integrity constraint.- Malicious installer code may execute with the invoking user's privileges, or malicious Skill instructions may be installed and subsequently loaded by an agent.
Impact Assessment
Successful exploitation could allow arbitrary actions within the privileges and environment available to the invoking user and the installer process. Depending on those privileges, possible effects include reading or m ...[truncated 459 chars]
- An attacker compromises the
- Remediation
View remediation
Remediation Suggestions
- Pin the CLI package to a reviewed version, for example by using an explicit version rather than an unqualified
npx skills. - Pin the Skill source to an immutable commit hash or verified release tag instead of relying on the latest default-branch state.
- Use npm lockfiles, integrity hashes, signed release artifacts, or equivalent provenance verification where supported.
- Prefer a locally installed and previously verified installer over automatic download and execution during each upgrade.
- Review release notes and source changes before upgrading.
- Run installation with the minimum required privileges in a sandboxed or otherwise restricted environment.
- Document the exact verified package version and source revision so users can reproduce the audited installation.
- Pin the CLI package to a reviewed version, for example by using an explicit version rather than an unqualified
