T08 · Insecure Dependencies
- Location
SKILL.md:47- Finding
Unpinned Third-Party Plugin Installed with LinkedIn Posting Capability
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 47–49
Vulnerability Type: Unpinned third-party dependency from an externally managed package source
Risk Level: MediumVulnerable Code
bash openclaw plugins install clawhub:clawlink-plugin openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json openclaw gateway restartThe same allowlisting and restart instructions are repeated in
SKILL.mdat lines 189–190:bash openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json openclaw gateway restartTechnical Analysis
The Skill instructs the user or agent to install
clawhub:clawlink-pluginwithout specifying an immutable version, integrity digest, or cryptographic signature. It then explicitly allowlists the plugin and restarts the OpenClaw gateway, causing the externally supplied component to be loaded.The plugin implementation is not included in the audited project, so its behavior cannot be verified from the available source. The Skill also states that ClawLink handles hosted credentials and proxies LinkedIn requests. Once connected, the dependency operates across a sensitive trust boundary and can participate in account-level publishing operations.
An unpinned package reference can resolve to implementation code that changes after this Skill has been reviewed. If the package source, publisher account, distribution channel, or a future release is compromised, the documented installation process may load attacker-controlled code. The Skill’s requirement for confirmation before intended publishing actions reduces accidental-posting risk but does not constrain malicious behavior during plugin initialization or execution.
Attack Path
- An attacker compromises the package publisher, registry entry, distribution infrastructure, or a future release associated with
clawhub:clawlink-plugin. - The unversioned package reference begins resolvi ...[truncated 1240 chars]
- An attacker compromises the package publisher, registry entry, distribution infrastructure, or a future release associated with
- Remediation
View remediation
Remediation Suggestions
- Pin the plugin to a reviewed, immutable version rather than installing an unversioned package reference.
- Require verification using a cryptographic digest or trusted package signature before installation.
- Document the expected publisher identity, package provenance, version, and verification procedure.
- Review the plugin source and release artifacts before allowlisting it.
- Restrict plugin capabilities and OAuth scopes to the minimum LinkedIn operations required for the task.
- Require explicit user approval before plugin installation, configuration changes, gateway restart, OAuth connection, and each state-changing LinkedIn action.
- Isolate the plugin in a constrained runtime with limited filesystem, network, credential, and process permissions.
- Avoid automatically loading future or dynamically changed releases without renewed integrity and security review.
- Record and surface the exact installed version and integrity value so users can verify what code is active.
- Update the repeated troubleshooting commands at lines 189–190 to preserve the same version pinning and verification controls.
