T08 · Insecure Dependencies
- Location
SKILL.md:37- Finding
Unpinned Third-Party Plugin Installation Creates a Supply-Chain Risk
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:37-55; also present atSKILL.md:272andREADME.md:16-18
Vulnerability Type: Unpinned third-party dependency installation
Risk Level: MediumVulnerable Code
markdown **Domestic network environment (mirror recommended):** ```powershell $env:NPM_CONFIG_REGISTRY="https://registry.npmmirror.com" openclaw plugins install @soimy/dingtalkInternational network:
bash openclaw plugins install @soimy/dingtalkWhen a proxy is required:
powershell $env:HTTP_PROXY="http://127.0.0.1:7897" $env:HTTPS_PROXY="http://127.0.0.1:7897" openclaw plugins install @soimy/dingtalktext The automated setup repeats the same installation behavior: ```powershell # Install plugin Write-Host "Installing plugin..." -ForegroundColor Yellow openclaw plugins install @soimy/dingtalkTechnical Analysis
The installation commands identify the package only by name and do not specify a reviewed version, immutable artifact digest, integrity hash, or signature. Consequently, the code installed when a user follows the instructions can differ from the code that existed when this skill was audited.
Some instructions also direct users to resolve the package through the third-party
registry.npmmirror.comregistry mirror. This adds another trust boundary: the installed artifact depends on both the package publisher and the selected registry infrastructure.This does not prove that the current
@soimy/dingtalkpackage or registry is malicious. The vulnerability is the absence of controls that would prevent a future compromised, substituted, or unexpectedly updated package from being installed and enabled.Attack Path
- An attacker compromises the package publisher account, upstream package, or package-distribution infrastructure.
- The attacker publishes a malicious release under the existing
@soimy/dingtalkpackage ...[truncated 1057 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the plugin to a specifically reviewed version instead of installing the moving latest release, for example:
bash openclaw plugins install @soimy/dingtalk@<reviewed-version> - Record and verify an integrity digest or cryptographic signature for the expected package artifact where the plugin manager supports this.
- Prefer the official package registry. If a mirror is operationally required, document its trust assumptions and independently verify artifact integrity.
- Use a lockfile or equivalent immutable dependency manifest for automated deployments.
- Review the plugin source and package contents before updating the pinned version.
- Run the OpenClaw gateway under a dedicated, least-privileged account with restricted filesystem and network access to reduce the effect of a compromised plugin.
- Establish an explicit update process that tests and approves new plugin versions before deployment.
- Pin the plugin to a specifically reviewed version instead of installing the moving latest release, for example:
