T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:16
- Finding
- Unpinned and Unverified Third-Party Dependencies<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:16-23`, `SKILL.md:30-34`, and `references/config.md:32-37` **Vulnerability Type**: Unverified third-party package and executable installation **Risk Level**: Medium ### Vulnerable Code Snippets From `SKILL.md`: ```markdown 1. **Xiaohongshu MCP server** - File: `xiaohongshu-mcp-windows-amd64.exe` - Port: 18060 - Startup method: Run the executable 2. **mcporter CLI** ```bash npm install -g mcporter ``` ``` ```powershell # Run from the xiaohongshu-mcp directory .\xiaohongshu-mcp-windows-amd64.exe ``` From `references/config.md`: ```powershell cd C:\Users\90781\.openclaw\workspace\xiaohongshu-mcp-1 .\xiaohongshu-mcp-windows-amd64.exe ``` ### Technical Analysis The installation instructions direct users to install `mcporter` globally from the npm registry without pinning an exact version or requiring package integrity verification. A global npm installation can execute package lifecycle scripts with the privileges of the invoking user and places package-provided executables in a globally accessible location. The instructions also direct users to execute `xiaohongshu-mcp-windows-amd64.exe` without specifying a fixed release, trusted HTTPS download location, cryptographic checksum, or digital-signature verification procedure. Consequently, users cannot reliably confirm that the executable is the reviewed and intended component. The included implementation in `scripts/publish.js` communicates directly with the local MCP service using Node.js HTTP APIs and does not invoke `mcporter`. The global CLI installation therefore increases supply-chain exposure without being necessary for the included publishing workflow. ### Attack Path 1. An attacker compromises the relevant npm package, its maintainer account, the registry distribution path, or a dependency used by the package. 2. Alternatively, an attacker substitutes a malicious file for `xiaohongshu-mcp-windows-amd64.exe` through ...[truncated 1355 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove `mcporter` from the prerequisites unless it is required by a documented workflow. The included publishing script already communicates directly with the MCP endpoint. 2. If `mcporter` must remain: - Pin a specific reviewed version, such as `mcporter@<reviewed-version>`. - Prefer a project-local development dependency instead of a global installation. - Use a lockfile with integrity metadata. - Disable lifecycle scripts during installation when compatible with the package. - Document the official package owner and registry source. 3. Pin the MCP server to a specific reviewed release and provide its official HTTPS download URL. 4. Publish the expected SHA-256 checksum and require users to verify it before execution. 5. Require verification of the executable's digital signature and expected publisher identity. 6. Advise users to run the service as a non-administrative account with access limited to the image files and resources needed for publishing. 7. Document a secure upgrade process that requires review and integrity verification before changing dependency versions. ]]>
