T08 · Insecure Dependencies
Warning
- Location
- setup.sh:13
- Finding
- Unverified External Plugin Is Linked and Enabled## Vulnerability Details **File Location**: `setup.sh`, lines 13 and 19–22 **Vulnerability Type**: `T08: Insecure Dependencies` **Risk Level**: Medium **Vulnerable code:** ```bash PLUGIN_DIR="/home/worker/code/openclaw-smartlead" ``` ```bash if command -v openclaw >/dev/null 2>&1; then echo "Installing plugin in linked mode..." openclaw plugins install -l "$PLUGIN_DIR" || true openclaw plugins enable smartlead || true else echo "openclaw CLI not found. Skipping plugin install commands." fi ``` ### Technical Analysis The setup script links and enables an OpenClaw plugin from the fixed absolute path `/home/worker/code/openclaw-smartlead`. That plugin is outside the audited project, which contains only `SKILL.md` and `setup.sh`; therefore, its source, integrity, provenance, and credential-handling behavior cannot be verified from this artifact. Linked installation also means subsequent modifications at the external path may alter the code executed by OpenClaw without changing the reviewed Skill. Any user or process capable of writing to that path could replace or modify the plugin. The `|| true` clauses suppress installation and enablement errors, reducing visibility into partial or unexpected setup states. ### Attack Path 1. An attacker, compromised build process, or another local user gains write access to `/home/worker/code/openclaw-smartlead`. 2. The attacker places a malicious plugin there or modifies the expected plugin. 3. The user executes `setup.sh`. 4. The script links the external directory and enables the plugin without verifying its identity or integrity. 5. OpenClaw loads the unverified plugin. 6. The plugin can process Smartlead webhook content and may gain access to data or capabilities exposed to plugins by the OpenClaw runtime. ### Impact Assessment Successful exploitation could execute attacker-controlled plugin code with the privileges of the OpenClaw process. Depending on ...[truncated 491 chars]
- Remediation
- ## Remediation Suggestions - Include the plugin source within the reviewed project or retrieve it through a versioned, authenticated dependency mechanism. - Resolve a bundled plugin relative to the setup script instead of using a fixed external path. - Pin the plugin to a reviewed version or commit and verify a cryptographic checksum or signature before installation. - Validate that the plugin directory and files are not writable by untrusted users. - Avoid linked/development-mode installation in production environments. - Remove `|| true`; fail closed and display actionable errors if installation or enablement fails. - Review the plugin separately for secret handling, webhook authentication, payload sanitization, outbound network destinations, and runtime permissions.
