T08 · Insecure Dependencies
- Location
SKILL.md:17- Finding
Unpinned Remote npm Package Execution in Skill Installation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 17
Vulnerability Type: Unpinned third-party package execution
Risk Level: MediumVulnerable Code:
bash npx clawhub@latest install estimation-patternsTechnical Analysis
The installation procedure uses
npxto retrieve and execute the mutablelatestrelease of the third-partyclawhubpackage. Because neither an immutable version nor an integrity digest is specified, the code executed by this command can change after the Skill has been reviewed.The repository does not contain or constrain the implementation, lifecycle scripts, or transitive dependencies executed through this command. A compromised package release, maintainer account, npm registry response, or transitive dependency could therefore introduce arbitrary behavior into the installation process.
This is a supply-chain exposure and does not establish that the current
clawhubpackage is malicious.Attack Path
- An attacker compromises the package, a maintainer account, or a dependency used by a future
clawhubrelease. - The compromised release becomes the version resolved by the mutable
@latesttag. - A user follows the documented installation command.
npxdownloads and executes the compromised package or its lifecycle behavior.- The payload runs with the permissions of the user who invoked the command.
Impact Assessment
Successful exploitation could permit arbitrary command execution under the installing user's account. Depending on that account's permissions and environment, the payload could read or modify project files, access developer credentials and environment variables, change local development configuration, install additional dependencies, or initiate outbound network connections.
The command does not itself request elevated privileges, so the directly obtainable privilege level is limited to that of the invoking user. The practical ...[truncated 117 chars]
- An attacker compromises the package, a maintainer account, or a dependency used by a future
- Remediation
View remediation
Remediation Suggestions
- Replace
@latestwith a specific, reviewed package version. - Commit and enforce an appropriate lockfile with verified integrity metadata.
- Document the expected package source, publisher, version, and installation-side filesystem changes.
- Verify package provenance and signatures where the registry and tooling support them.
- Run installation in a restricted environment without production credentials or unnecessary filesystem access.
- Consider
npx --ignore-scriptswhere compatible, after verifying that disabling lifecycle scripts does not break the installer. - Periodically review pinned versions and update them through a controlled dependency-review process.
- Replace
