T08 · Insecure Dependencies
- Location
skill.md:25- Finding
Unpinned Global Installation of an Unverifiable Third-Party npm Package
- Content
View full analysis
Vulnerability Details
File Location:
skill.md:22-26,skill.md:159-163,readme.md:22-28, andreadme.md:52-58
Vulnerability Type: Unpinned third-party dependency installed globally
Risk Level: MediumVulnerable Code
The English installation instructions in
skill.mdcontain:bash npm install -g openclaw-protocol-bridgeThe same command is repeated in the Chinese installation section:
bash npm install -g openclaw-protocol-bridgeThe English quick-start instructions in
readme.mdcontain:bash npm install -g openclaw-protocol-bridge protocol-bridge init protocol-bridge serve --port 8080The same quick-start sequence is repeated in the Chinese section:
bash npm install -g openclaw-protocol-bridge protocol-bridge init protocol-bridge serve --port 8080Technical Analysis
The documented command globally installs the latest version of
openclaw-protocol-bridgefrom the npm registry. It does not pin a reviewed version, verify a cryptographic integrity value, use a lockfile, or provide auditable package source within this project.npm packages can define lifecycle scripts that execute during installation. Consequently, the effective code executed by this instruction can change after the Skill has been reviewed. Global installation increases the potential scope because the package and its command-line executables are placed in the user's global Node.js environment. If the command is run with elevated privileges, installation scripts receive those elevated privileges; the instruction itself, however, does not explicitly request privilege escalation.
The artifact contains only documentation and does not include a package manifest, lockfile, implementation, checksums, or tests. Therefore, the external package's behavior and the documented security claims concerning JWT, OAuth, API keys, and mTLS cannot be verified from the audited project.
A
...[truncated 1675 chars]
- Remediation
View remediation
Remediation Suggestions
-
Pin the dependency to a specifically reviewed version:
bash npm install -g openclaw-protocol-bridge@1.0.0 -
Prefer a project-local installation instead of a global installation:
bash npm install --save-exact openclaw-protocol-bridge@1.0.0 -
Commit a
package.jsonand lockfile so dependency versions and integrity metadata are reproducible. -
Review the package's source, transitive dependencies, and lifecycle scripts before recommending installation.
-
Where compatible with the package, suppress lifecycle scripts during initial acquisition:
bash npm install --save-exact --ignore-scripts openclaw-protocol-bridge@1.0.0 -
Publish cryptographic checksums, package provenance, and release-signing information through a trusted channel.
-
Avoid running npm installation commands as root or an administrator. Run the bridge under a dedicated, least-privileged account with restricted filesystem and network access.
-
Include the relevant implementation or verifiable source revision in the audited artifact so that the bridge's authentication, routing, registration, and network behavior can be assessed directly.
-
Apply the corrected, pinned installation command consistently to both language sections of
skill.mdandreadme.md.
-
