T08 · Insecure Dependencies
- Location
SKILL.md:46- Finding
Unpinned Third-Party Plugin Installation and Allowlisting
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 46–50
Vulnerability Type: Unpinned third-party dependency installed and granted gateway trust
Risk Level: MediumVulnerable Code
bash openclaw plugins install clawhub:clawlink-plugin openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json openclaw gateway restartTechnical Analysis
The skill instructs the user to install
clawlink-pluginfrom ClawHub without specifying an immutable version, cryptographic digest, or verifiable signature. It then adds that plugin to the gateway tool allowlist and restarts the gateway, activating newly downloaded third-party code.Although the document calls the plugin “verified,” the audited package contains no lockfile, checksum, signature, source code, or version constraint with which to verify the installed artifact. Consequently, the code installed when these instructions are followed may differ from the code reviewed when the skill was published.
This creates a supply-chain trust risk: compromise of the package publisher, registry, distribution path, or a later mutable release could cause users to install and authorize malicious plugin code.
Attack Path
- An attacker compromises the
clawlink-pluginpublisher account, package repository, or distribution infrastructure, or causes a malicious mutable release to be served. - A user follows the installation instructions in
SKILL.md. - OpenClaw downloads the current unpinned plugin artifact rather than a specifically audited version.
- The subsequent configuration command adds the plugin to the gateway tool allowlist.
- The gateway restart activates the compromised plugin.
- The plugin can abuse its trusted position and any delegated integration capabilities available to it, potentially issuing unauthorized requests or exposing Salesforce data.
Impact Assessment
Successful exploitation could grant attacker-controlled plugin code the privileges available ...[truncated 711 chars]
- An attacker compromises the
- Remediation
View remediation
Remediation Suggestions
- Pin the plugin to an immutable, audited version rather than installing a mutable package name.
- Verify a cryptographic digest or trusted package signature before installation.
- Document the authoritative publisher identity and package provenance.
- Publish a lockfile, checksum manifest, software bill of materials, or equivalent integrity record.
- Require explicit user approval before modifying the gateway allowlist or restarting the gateway.
- Avoid automatically allowlisting newly installed plugins; enable only the minimum required tools.
- Apply least-privilege Salesforce OAuth scopes and deny unnecessary write, file, metadata, and bulk-operation permissions.
- Preserve mandatory preview and explicit confirmation controls for all write operations, with enforcement outside the mutable plugin where possible.
- Establish a process to revoke the plugin, rotate OAuth credentials, and investigate Salesforce audit logs if package compromise is detected.
