T08 · Insecure Dependencies
- Location
readme.md:30- Finding
Unpinned External Package Installation Exposes Users to Supply-Chain Risk
- Content
View full analysis
Vulnerability Details
File Location:
readme.md:30-36,readme.md:113-119,skill.md:182-191, andskill.md:377-386
Vulnerability Type: Unverified and unpinned third-party dependency installation
Risk Level: MediumVulnerable Code Snippets
readme.md:30-36:bash # From ClawHub clawhub install emergency-circuit # From npm npm install -g openclaw-emergency-circuitThe same installation instructions are repeated at
readme.md:113-119.skill.md:182-191:bash # From ClawHub clawhub install emergency-circuit # From npm npm install -g openclaw-emergency-circuit # From GitHub git clone https://github.com/ZhenRobotics/openclaw-emergency-circuit.gitThe same installation instructions are repeated at
skill.md:377-386.Technical Analysis
The audited artifact contains only documentation and does not include the implementation of the advertised monitoring, policy enforcement, anomaly detection, or emergency termination functionality. Instead, users are instructed to retrieve the implementation from mutable external package registries or a Git repository.
The npm command does not pin an exact package version or verify an integrity digest. Consequently, the code installed in the future may differ from the code that was available when this documentation was reviewed. npm packages may also define lifecycle scripts, such as
preinstall,install, orpostinstall, which can execute automatically during installation.The
-goption performs a global installation. Although this does not inherently grant administrative privileges, it broadens the installation scope and may cause users to run the command with elevated privileges on systems where the global package directory is not writable by the current user.The Git clone instruction likewise does not pin a reviewed commit or tag. A repository owner compromise, malicious maintainer update, registry account takeover, ...[truncated 1955 chars]
- Remediation
View remediation
Remediation Suggestions
- Include the implementation in the audited artifact or provide a reproducible, reviewable source archive.
- Pin npm installation instructions to an exact reviewed version rather than resolving the latest mutable release.
- Publish and verify cryptographic integrity information, package provenance, and signed release artifacts.
- Pin Git installation instructions to a specific reviewed commit hash and verify signed tags or commits.
- Prefer project-local installation over
npm install -gto reduce installation scope. - Avoid elevated installation privileges and explicitly warn users not to use
sudounless it is strictly required and understood. - Use
--ignore-scriptswhere compatible, or audit every npm lifecycle script before permitting it to execute. - Maintain a lockfile and dependency inventory, and continuously scan direct and transitive dependencies for known vulnerabilities and ownership changes.
- Document the expected package publisher, repository owner, release checksum, and verification procedure so users can detect package substitution.
