T08 · Insecure Dependencies
- Location
SKILL.md:32- Finding
Unpinned Third-Party Package Execution Through npx
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:32andREADME.md:10
Vulnerability Type: Unpinned package execution and software supply-chain risk
Risk Level: MediumThe installation documentation instructs users to retrieve and execute the
skillspackage throughnpxwithout specifying a reviewed version or integrity constraint.Complete vulnerable code snippet from
SKILL.md:30-33:bash ## Install ```bash npx skills add omactiengartelle/dnd-character-skilltext **Equivalent vulnerable code snippet from `README.md:8-12`:** ```bash ## Install ```bash npx skills add omactiengartelle/dnd-character-skilltext ### Technical Analysis When a requested package is not already available locally, `npx` can retrieve it from the configured npm registry and execute its CLI or associated package code. The command uses the generic package name `skills` without a version pin, lockfile, or integrity hash. Consequently, the code executed during installation is not immutable relative to the reviewed repository. A future compromised, malicious, or unexpectedly modified release of `skills` could execute different behavior when a user follows these instructions. This is a supply-chain trust issue rather than evidence that the currently published package is malicious. The alternative `clawhub install dnd-character-skill` command documented in `README.md` was not shown to have the same `npx` execution behavior and is not included in this finding. ### Attack Path 1. An attacker compromises the publishing account, registry entry, or release process associated with the unpinned `skills` package, or otherwise causes a malicious version to be resolved from the user's configured registry. 2. The attacker publishes a release containing malicious CLI or lifecycle behavior. 3. A user follows the documented command: ```bash npx skills add omactiengartelle/dnd-character-skill ``` 4. `np ...[truncated 1316 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the installer to a specifically reviewed version:
bash npx --yes skills@<reviewed-version> add omactiengartelle/dnd-character-skill - Verify that the selected package name and publisher are authoritative and resistant to dependency-confusion or typosquatting attacks.
- Record and verify the expected package integrity digest where the installation workflow supports integrity enforcement.
- Prefer installing the reviewed dependency through a lockfile-backed project workflow rather than dynamically retrieving the latest release during installation.
- Use a trusted internal registry or approved package mirror in controlled and CI environments.
- Run installation with least privilege. Do not use
sudo, an administrator account, or unnecessary secrets in the process environment. - Apply the same hardened command consistently in both
SKILL.mdandREADME.md. - Periodically review the pinned release before deliberately upgrading it.
- Pin the installer to a specifically reviewed version:
