T08 · Insecure Dependencies
- Location
SKILL.md:43- Finding
Unpinned Third-Party Plugin Installation and Activation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 43–47
Vulnerability Type: Unreviewed and unpinned third-party dependency
Risk Level: Mediumbash openclaw plugins install clawhub:clawlink-plugin openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json openclaw gateway restartTechnical Analysis
The skill instructs the user or agent to install a third-party plugin, add it to the OpenClaw tool allowlist, and restart the gateway to activate it. The installation command does not pin an immutable plugin version or cryptographic digest. Consequently, the installed implementation can differ from the version that existed when this skill was audited.
The plugin's source code is not included in the audited project, so its handling of OAuth credentials, API requests, and local tool execution cannot be independently assessed here. Describing the package as “verified” does not supply locally auditable integrity evidence or eliminate the supply-chain risk.
Attack Path
- An attacker compromises the plugin package, its publisher account, distribution infrastructure, or a future mutable release.
- A user follows the documented setup and installs
clawhub:clawlink-pluginwithout an immutable version or digest. - The setup explicitly adds the plugin to
tools.alsoAllow. - Restarting the OpenClaw gateway loads and activates the installed plugin.
- The user pairs the plugin and connects a Strava account through the hosted OAuth flow.
- The compromised plugin observes or manipulates OAuth-backed Strava requests and may misuse the available read or write operations within the granted scopes.
Impact Assessment
A compromised dependency could execute with the permissions granted to the OpenClaw plugin and access data made available through the connected Strava integration. Depending on OAuth scopes and local plugin privileges, exposed data could include athlete profile informati ...[truncated 550 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the plugin to an immutable, security-reviewed version rather than installing a mutable package reference.
- Verify the package using a publisher signature or cryptographic digest before installation and fail closed if verification does not succeed.
- Publish the plugin source and reproducible-build information so its effective behavior can be independently audited.
- Require explicit, informed user consent before installation, allowlisting, gateway restart, account pairing, and OAuth authorization.
- Request only the minimum Strava OAuth scopes needed for the user's requested operation and separate read-only access from write access where possible.
- Constrain the plugin through process isolation, restricted filesystem and network access, and a narrowly scoped tool allowlist.
- Enforce write confirmation outside the plugin, at a trusted mediation layer, so a compromised dependency cannot bypass confirmation requirements.
- Document package provenance, version-update policy, rollback procedures, token revocation steps, and incident-response guidance.
- Log plugin installation, OAuth connection, sensitive reads, and write operations without recording tokens or unnecessary personal data.
