T08 · Insecure Dependencies
- Location
SKILL.md:21- Finding
Unpinned npm CLI Package Execution During Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:21-26
Vulnerability Type: Unpinned third-party package execution
Risk Level: MediumThe documented installation command is:
bash npx skills add prompt-security/clawsec --skill picoclaw-security-guardian -a openclaw -yThe same command also appears in
README.md:9-14.Technical Analysis
The command invokes
npx skillswithout specifying an exact version of the npm package or enforcing a verified integrity value. If the package is not already available locally,npxcan resolve, download, and execute the version currently provided by the configured npm registry.This means the code executed during installation is not fully determined by the audited project. Its behavior could change after this skill has been reviewed. The
-yoption also removes an interactive confirmation step, although it is not the root cause of the vulnerability.The repository provides a stronger standalone release-verification procedure elsewhere in
SKILL.md, including a pinned signing-key fingerprint and signature and checksum verification. However, those controls do not protect the separatenpx skillsinstallation path.Attack Path
- An attacker compromises the npm account, registry entry, publication pipeline, or another supply-chain component associated with the unpinned
skillspackage. - The attacker publishes a malicious package version or alters the package resolved by the operator's registry configuration.
- An operator follows the documented installation command.
npxretrieves and executes the attacker-controlled package without an exact version or locally enforced integrity pin.- The malicious package executes with the privileges of the user running the installation command.
Impact Assessment
Successful exploitation can provide arbitrary code execution under the installing user's account. Depending on that account's permissions and ...[truncated 407 chars]
- An attacker compromises the npm account, registry entry, publication pipeline, or another supply-chain component associated with the unpinned
- Remediation
View remediation
Remediation Suggestions
-
Pin the CLI package to an exact reviewed version, for example:
bash npx --yes skills@X.Y.Z add prompt-security/clawsec --skill picoclaw-security-guardian -a openclaw -y -
Document the expected package publisher, package digest, and provenance information so operators can validate that they are resolving the intended dependency.
-
Prefer installation through a committed lockfile with npm integrity metadata where practical, rather than dynamically resolving the latest package.
-
Consider making the signed standalone installation procedure the primary recommended path. Ensure the archive is installed only after the signing-key fingerprint, detached signature, and artifact checksums have been verified.
-
Apply the same correction to the duplicate command in
README.md:9-14so all installation guidance is consistent. -
In automated environments, use a trusted registry configuration and block dependency lifecycle behavior that is not required for installation.
-
