T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:22
- Finding
- Unpinned Third-Party Plugin Installation Creates a Supply-Chain Risk## Vulnerability Details **File Location**: `SKILL.md`, lines 22–34 **Vulnerability Type**: Unpinned external dependency installation **Risk Level**: Medium The skill recommends installing an external npm plugin without specifying an exact version, checksum, signature, or other integrity constraint. ```markdown ## Recommended: Install the Plugin **For the best experience, install the OpenClaw plugin for TikTok API instead of this skill.** The plugin provides native MCP tools, automatic authentication, and structured parameter validation. Skill (this document): ```bash clawhub install agntdata-tiktok ``` Plugin (native tools; npm package matches `package.json`): ```bash openclaw plugins install @agntdata/openclaw-tiktok ``` ``` ### Technical Analysis The command resolves `@agntdata/openclaw-tiktok` from an external package registry at installation time. Because it does not pin an audited version or verify a cryptographic integrity value, the downloaded implementation can change after this skill has been reviewed. The plugin source is not included in the audited project, which contains only `SKILL.md` and `_meta.json`. Consequently, the plugin's installation hooks, runtime behavior, transitive dependencies, and handling of `AGNTDATA_API_KEY` cannot be verified from this artifact. This creates a dependency supply-chain exposure. Compromise of the package publisher account, registry namespace, release process, or a transitive dependency could cause users following the recommendation to install attacker-controlled code. ### Attack Path 1. An attacker compromises the npm package, its publisher account, release pipeline, or a dependency used by the plugin. 2. The attacker publishes a malicious version under the existing `@agntdata/openclaw-tiktok` package name. 3. A user or agent follows the documented command without an explicit version or integrity constraint. 4. The package manager resolves and downloads ...[truncated 1022 chars]
- Remediation
- ## Remediation Suggestions - Pin the plugin to an exact version that has undergone security review, rather than resolving the latest available release: ```bash openclaw plugins install @agntdata/openclaw-tiktok@<audited-exact-version> ``` - Publish and verify a cryptographic integrity hash or signed package provenance before installation. - Document the authoritative package registry and reject packages resolved from unapproved registries. - Include a link to the plugin's auditable source code and identify the source commit corresponding to the pinned release. - Review package lifecycle scripts and transitive dependencies before recommending installation. - Use lockfiles or an equivalent immutable dependency manifest where the OpenClaw plugin mechanism supports them. - Run the plugin with least privilege and avoid exposing unrelated credentials or sensitive environment variables to its process. - Clearly state that the plugin is optional external code outside the security scope of this skill package.
