T08 · Insecure Dependencies
Warning
- Location
SKILL.md:57- Finding
Unpinned Third-Party Plugin Installation and Authorization
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 57–62
Vulnerability Type: Unpinned executable dependency from a third-party package registry
Risk Level: MediumVulnerable Code
markdown Install the verified ClawLink plugin from ClawHub. After the user confirms, complete the full setup so ClawLink tools are visible in the next OpenClaw chat. ```bash openclaw plugins install clawhub:clawlink-plugin openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json openclaw gateway restarttext ### Technical Analysis The installation command references `clawhub:clawlink-plugin` without pinning an immutable version, package digest, or verified source revision. The instructions then add that plugin to the OpenClaw tool allowlist and restart the gateway, activating executable third-party functionality. Although the document describes the plugin as “verified,” the audited project contains no checksum, signature-verification procedure, lock manifest, or bundled source code through which that assertion can be independently validated. Consequently, the implementation installed at setup time may differ from the implementation reviewed when this skill was published. This creates a software supply-chain trust boundary. Compromise of the registry account, package distribution infrastructure, or a future mutable release could cause users following these instructions to install attacker-controlled code. The plugin also brokers OAuth-authenticated Google Contacts operations, making the dependency particularly sensitive. ### Attack Path 1. An attacker compromises the plugin publisher account, package registry, distribution channel, or another mechanism controlling the mutable `clawlink-plugin` package. 2. The attacker publishes a malicious package under the same unversioned package identifier. 3. A user or agent follows the skill instructions and runs `openclaw plugins install clawhub:clawlink-pl ...[truncated 1320 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the plugin to an immutable, explicitly approved version rather than installing the latest package associated with a mutable name.
- Prefer a content-addressed package digest or cryptographically signed release and verify it before installation.
- Publish the expected checksum, signer identity, and exact verification commands in the setup procedure.
- Maintain a lock manifest recording the reviewed plugin version, source revision, and integrity digest.
- Provide a link to auditable source code corresponding exactly to the distributed package and use reproducible builds where possible.
- Restrict plugin and tool permissions to the minimum required Google Contacts operations. Do not grant access to unrelated integrations or system capabilities.
- Separate read and write permissions where supported, and require explicit user confirmation immediately before every write or destructive operation.
- Run the plugin in a sandbox with restricted filesystem, network, process, and credential access.
- Verify the installed package after installation and before adding it to the allowlist or restarting the gateway.
- Document a secure update process that requires integrity verification and review before activating a new plugin release.
