T08 · Insecure Dependencies
Error
- Location
- SKILL.md:17
- Finding
- Unverified Third-Party Packages Are Downloaded and Executed## Vulnerability Details **File Location**: `SKILL.md`, lines 17-24 **Vulnerability Type**: Supply-chain exposure through unpinned and inadequately verified dependencies **Risk Level**: High **Vulnerable Code:** ```bash npm install -g mcporter mcporter config add 1ly --command "npx @1ly/mcp-server@0.1.6" ``` ```text Verify package integrity: `npm view @1ly/mcp-server dist.integrity` ``` ### Technical Analysis The setup instructions globally install `mcporter` without pinning its version and configure it to execute an externally retrieved npm package through `npx`. Although `@1ly/mcp-server` is pinned to version `0.1.6`, its executable content and transitive dependencies are obtained from an external registry at installation or invocation time. The suggested integrity check only displays the registry-provided `dist.integrity` value. It does not compare the downloaded artifact against a trusted digest obtained through an independent channel. If the registry package, publisher account, or distribution metadata is compromised, both the package and its displayed integrity metadata may be controlled by the same attacker. Because the MCP server operates in an environment containing wallet paths, private keys, API credentials, RPC configuration, and spending limits, malicious dependency code could access highly sensitive payment material. ### Attack Path 1. An attacker compromises the npm publisher account, package release, registry delivery path, or a relevant dependency. 2. The user follows the documented setup and runs `npm install -g mcporter`, retrieving an unpinned current release. 3. The user invokes the configured MCP server, causing `npx` to retrieve and execute `@1ly/mcp-server@0.1.6` and its dependency chain. 4. Malicious package initialization or runtime code executes with the user's local privileges. 5. The code reads accessible environment variables, wallet files, API keys, or OpenClaw configuration and m ...[truncated 702 chars]
- Remediation
- ## Remediation Suggestions - Pin `mcporter` to an explicitly reviewed version rather than installing the latest mutable release. - Prefer a project-local installation governed by a committed lockfile over a global installation. - Lock and review transitive dependencies, and use deterministic installation commands such as `npm ci`. - Verify package artifacts against expected hashes or signatures published through an independent, trusted channel. Merely displaying registry metadata is insufficient. - Run the MCP server in a sandbox with restricted filesystem, network, process, and environment access. - Expose only the credentials required for the selected operation, rather than passing all wallet and seller credentials into the same process. - Use a dedicated low-value wallet with strict external transaction controls and monitoring. - Review or vendor the executable package before deploying it in an environment capable of signing financial transactions.
