T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:62
- Finding
- Installation and Execution of Unverified Third-Party Components## Vulnerability Details **File Location**: `SKILL.md`, lines 62–83 **Vulnerability Type**: Supply-chain exposure through externally retrieved plugin, Python dependencies, and model artifacts **Risk Level**: Medium ### Evidence ```bash openclaw plugins install openclaw-plugin-tokenranger ``` To pin an exact version: ```bash openclaw plugins install openclaw-plugin-tokenranger@1.0.0 --pin ``` ### Step 2 — First-time setup ```bash openclaw tokenranger setup ``` This pulls Ollama models, creates the Python venv, installs FastAPI/LangChain deps, and registers the sidecar as a system service (systemd on Linux, launchd on macOS). ### Technical Analysis The documented installation process retrieves and executes a third-party npm plugin. Its setup routine subsequently downloads Ollama models, creates a Python environment, and installs additional dependencies. None of the remotely retrieved implementation, dependency lock files, integrity hashes, or model checksums are included in the audited project. Pinning `openclaw-plugin-tokenranger` to version `1.0.0` limits changes to the top-level package but does not, by itself, establish artifact integrity or guarantee that all transitive Python and npm dependencies are immutable. The unpinned installation command is presented as the primary installation method. There is no evidence in `SKILL.md` that the named package is malicious. The vulnerability is the trust placed in externally maintained and unaudited executable components. ### Attack Path 1. An attacker compromises the plugin publishing account, package registry entry, dependency, model source, or another component used during setup. 2. The user follows the documented installation procedure. 3. `openclaw plugins install` retrieves the affected remote package. 4. `openclaw tokenranger setup` runs package-controlled setup logic and installs further remote components. 5. The compromised component executes w ...[truncated 604 chars]
- Remediation
- ## Remediation Suggestions - Make exact-version installation the default rather than the optional alternative. - Publish and verify cryptographic hashes or signed provenance for the npm package, Python packages, service code, and model artifacts. - Supply lock files containing immutable dependency versions and integrity metadata. - Avoid installing dependencies dynamically during normal execution. - Display all artifact sources and versions before setup begins and require explicit user approval. - Audit or vendor the executable plugin and sidecar implementation so their behavior can be reviewed with the Skill. - Run the sidecar in a restricted environment with minimal filesystem, network, and credential access. - Document a reproducible installation procedure and verify release signatures before executing setup.
