T08 · Insecure Dependencies
- Location
SKILL.md:102- Finding
Unpinned Third-Party CLI Execution Through npx
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:102,SKILL.md:195,SKILL.md:204-207,SKILL.md:229, andSKILL.md:238
Vulnerability Type: Unpinned third-party dependency execution
Risk Level: MediumVulnerable Code
bash # SKILL.md:102 npx clawhub install nombre-del-skillbash # SKILL.md:195 npx clawhub loginbash # SKILL.md:204-207 npx clawhub publish /mnt/data/openclaw/workspace/.openclaw/workspace/skills/nombre-del-skill \ --slug nombre-del-skill \ --name "Nombre del Skill" \ --version 1.0.0 \ --tags "tag1,tag2,tag3"bash # SKILL.md:229 npx clawhub publish /mnt/data/openclaw/workspace/.openclaw/workspace/skills/nombre-del-skillbash # SKILL.md:238 npx clawhub loginTechnical Analysis
The documentation repeatedly instructs users or agents to execute
npx clawhubwithout specifying a reviewed package version or verifying package integrity. Depending on the local npm configuration and cache state,npxmay retrieve the currently resolved package release from the npm registry and execute its lifecycle or application code with the invoking user's privileges.Because the effective executable is not pinned, its contents can change after this skill has been reviewed. A compromised package release, package ownership transfer, registry compromise, or unexpected upstream update could therefore introduce arbitrary code into the documented installation, authentication, or publishing workflow.
The login and publishing operations are particularly sensitive. The invoked package may have access to authentication state, environment variables, npm configuration, the OpenClaw workspace, and the skill directory supplied to the publishing command. No malicious dependency or payload is embedded in the audited project itself; the risk arises from unsafe dependency resolution and execution.
Attack Path
- An attacker compromises ...[truncated 1390 chars]
- Remediation
View remediation
Remediation Suggestions
-
Pin every invocation to a specific, reviewed release:
bash npx clawhub@<reviewed-version> login npx clawhub@<reviewed-version> publish /absolute/path/to/skill -
Verify and document the authoritative npm package name, publisher, source repository, and expected integrity information so users can distinguish it from typosquatted packages.
-
Prefer a controlled installation using a lockfile and integrity-verified package metadata rather than resolving the latest package dynamically on every invocation.
-
Review new package versions before changing the pinned version. Include source review, dependency review, provenance verification, and malware scanning in the update process.
-
Execute the CLI with least privilege in a restricted environment. Limit filesystem access to the intended skill directory and avoid exposing unrelated credentials or environment variables.
-
Use narrowly scoped, revocable authentication tokens for login and publishing. Do not run the CLI from an account with broader permissions than publication requires.
-
Update every affected example and checklist entry consistently so users are not directed back to an unpinned
npx clawhubinvocation.
-
