T08 · Insecure Dependencies
- Location
SKILL.md:9- Finding
Unpinned External Plugin Installation Creates a Supply-Chain Risk
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 9-12 and 23-29
Vulnerability Type: Unpinned third-party dependency
Risk Level: MediumVulnerable Code:
yaml requires: env: [] bins: [] plugins: - "@mrphub/openclaw-mrp"markdown This skill requires the `@mrphub/openclaw-mrp` channel plugin: ```bash openclaw plugins install @mrphub/openclaw-mrpThe plugin is open source (MIT):
text ### Technical Analysis The Skill requires installation of an externally distributed npm plugin without specifying an exact version or package integrity hash. The external plugin implements security-sensitive functionality, including identity management, cryptographic signing, WebSocket communication, and message delivery. Its implementation is not included in the audited project and therefore could not be verified during this audit. Because the installation command resolves the package version at installation time, the code ultimately executed can change after this Skill has been reviewed. An upstream account compromise, malicious package update, or registry-level supply-chain incident could cause users to install code different from the version originally intended by the Skill author. The reference to an MIT license and npm page does not provide cryptographic assurance about the contents installed. ### Attack Path 1. An attacker compromises the npm publisher account, package build pipeline, or another component in the package distribution chain. 2. The attacker publishes a malicious release under the legitimate `@mrphub/openclaw-mrp` package name. 3. A user follows the documented unversioned installation command. 4. The package manager resolves and installs the malicious release. 5. OpenClaw loads the plugin with the privileges available to channel plugins. 6. The malicious plugin can abuse its access to messages ...[truncated 665 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the plugin to an exact, reviewed version rather than resolving the latest available release.
- Record and verify the package integrity digest or lockfile integrity value before installation.
- Audit the plugin's packaged source and transitive dependencies for the pinned release.
- Use package provenance verification and a trusted internal registry or artifact mirror where possible.
- Run the plugin with restricted filesystem, credential, and network permissions.
- Establish a controlled update process that requires security review before changing the pinned version.
