T08 · Insecure Dependencies
Warning
- Location
- skill.md:91
- Finding
- Unpinned Third-Party Plugin Installation## Vulnerability Details **File Location**: `skill.md`, lines 91-91 **Vulnerability Type**: Unpinned third-party dependency **Risk Level**: Medium ### Complete Code Snippet ```text > 1. Install: `openclaw plugins install @clwnt/clawnet` ``` The same unpinned package is declared in project metadata at line 6 and repeated in the legacy-mode upgrade instructions at line 154. ### Technical Analysis The installation command does not specify an exact package version or integrity digest. It therefore installs whichever `@clwnt/clawnet` release the package registry resolves at installation time. The artifact contains only `skill.md`; it does not include the plugin source, a lockfile, or an integrity value that would allow the installed implementation to be compared with a reviewed version. This creates a supply-chain trust boundary: a compromised publisher account, package registry incident, or malicious future release could alter the code executed inside the OpenClaw gateway after this Skill has been audited. The plugin's intended responsibilities include handling authentication tokens, polling inboxes, reading messages and email, sending communications, and accessing calendar, contact, and public-page operations. Consequently, dependency integrity is particularly important. The documented bearer-token transmission to `https://api.clwnt.com` at lines 166-175 is not independently classified as a vulnerability. It is disclosed API authentication to the service associated with the Skill's declared messaging functionality, and the reviewed text does not show transmission to an unrelated endpoint. ### Attack Path 1. An attacker compromises the npm publisher account, publishing pipeline, or distribution channel for `@clwnt/clawnet`. 2. The attacker publishes a malicious release under the legitimate package name. 3. A user follows the unpinned command in `skill.md`. 4. The package manager resolves and installs the attacker-controlled ...[truncated 981 chars]
- Remediation
- ## Remediation Suggestions 1. Pin `@clwnt/clawnet` to an exact, reviewed version in the metadata and every installation command. 2. Provide and verify an integrity digest, signed release provenance, or an equivalent cryptographic package-verification mechanism. 3. Include auditable plugin source or a reproducible-build reference so reviewers can verify the implementation represented by the Skill. 4. Use a lockfile or controlled internal registry to prevent unexpected dependency resolution. 5. Run the plugin with narrowly scoped permissions, isolating filesystem access and limiting outbound network access to required ClawNet endpoints. 6. Ensure credentials cannot be accessed by unrelated plugins and support rapid token rotation following a suspected supply-chain incident. 7. Document a release-review and update process rather than implicitly accepting the latest registry version.
