T08 · Insecure Dependencies
Warning
- Location
- install.txt:1
- Finding
- Unpinned Third-Party Plugin Installed Without Auditable Source Code## Vulnerability Details **File Location**: `install.txt:1-3`; `SKILL.md:33-37` **Vulnerability Type**: Unpinned external dependency installation **Risk Level**: Medium ### Vulnerable Code `install.txt:1-3`: ```text npm_package: @openclawline/clawline-setup install_command: openclaw plugins install @openclawline/clawline-setup runtime: node ``` `SKILL.md:33-37`: ```markdown 此 Skill 由 clawhub 通过以下命令自动安装: ```bash openclaw plugins install @openclawline/clawline-setup ``` ``` ### Technical Analysis The Skill directs OpenClaw to install the external npm package `@openclawline/clawline-setup` without specifying an exact version or integrity hash. The implementation of that package is not included in the audited artifact. Consequently, the code executed after installation is determined by the package version resolved from the external registry at installation time and may differ from the code originally reviewed. The package scope and documented npm identity are internally consistent, and the supplied files contain no direct evidence that the package is malicious, typosquatted, or currently compromised. Nevertheless, the absence of version pinning, integrity verification, and bundled auditable source creates a supply-chain trust risk. According to `SKILL.md`, the installed plugin is expected to update pairing UUID configuration, inspect connection status, clear pairing information, and restart the OpenClaw gateway. These claimed capabilities increase the potential consequences if an upstream release or package publishing account is compromised. ### Attack Path 1. A user invokes one of the installation phrases defined by the Skill. 2. OpenClaw executes `openclaw plugins install @openclawline/clawline-setup`. 3. The package manager resolves the package from the external registry without an exact version or recorded integrity value. 4. If the package publisher, publishing credentials, registry response, or su ...[truncated 1079 chars]
- Remediation
- ## Remediation Suggestions 1. Pin the plugin to a reviewed, exact version rather than allowing registry-time version resolution. 2. Record and verify a cryptographic integrity hash for the approved package artifact. 3. Include the corresponding plugin source code in the review scope or link the installation to an immutable source revision and reproducible build. 4. Use a lockfile or equivalent trusted dependency manifest where supported. 5. Verify package provenance, publisher identity, release signatures, and registry metadata before installation. 6. Document and enforce the minimum plugin permissions required for UUID management, status inspection, and gateway restart. 7. Require explicit user confirmation before installation, configuration replacement, pairing removal, or gateway restart. 8. Restrict plugin network access to documented endpoints and monitor configuration changes and gateway restart events. 9. Re-audit every dependency update before changing the pinned version or approved integrity value.
