T08 · Insecure Dependencies
- Location
SKILL.md:27- Finding
Unpinned npm Package Is Downloaded and Executed
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 27
Vulnerability Type: Unpinned third-party package execution
Risk Level: MediumVulnerable Code
bash # Recommended: fix the data directory for easy backup and migration npx skill-base -d ./skill-data -p 8000Technical Analysis
The documented command invokes
skill-basethroughnpxwithout specifying an exact package version or verifying package integrity. If the package is not already available locally,npxcan retrieve it from the configured npm registry and immediately execute it.Because the selected package version can change after this skill has been reviewed, the command creates a mutable supply-chain execution path. The documentation does not specify a trusted registry, reviewed version, integrity digest, or package provenance verification procedure.
This finding does not establish that the current
skill-basepackage is malicious. The vulnerability is the unsafe dependency execution pattern, which would allow a compromised or malicious future package release to execute code on the deployment host.Attack Path
- An attacker compromises the
skill-basenpm package, its publisher account, or the package distribution channel. - The attacker publishes a malicious version under the expected package name.
- An administrator follows the documented Quick Start command without an exact version.
npxresolves and downloads the affected package version from the configured registry.- Package lifecycle or application code executes with the privileges of the administrator running the command.
Impact Assessment
Successful exploitation could permit arbitrary code execution under the deploying user's account. Depending on that account's permissions, the malicious package could access local files, environment variables, deployment credentials, service data, and network resources reachable from the host. If the comman ...[truncated 82 chars]
- An attacker compromises the
- Remediation
View remediation
Remediation Suggestions
-
Pin the command to an exact, reviewed package version, for example:
bash npx --yes skill-base@<reviewed-exact-version> -d ./skill-data -p 8000 -
Document the expected npm registry and require verification of package provenance before deployment.
-
Record and verify the package integrity digest in deployment automation.
-
Prefer installing dependencies from a committed lockfile and using a reproducible installation process.
-
Review package lifecycle scripts and disable them during installation where operationally compatible.
-
Run the service from a dedicated, unprivileged operating-system account with access only to its required data directory.
-
Test and approve dependency updates before changing the pinned version.
-
