T08 · Insecure Dependencies
- Location
SKILL.md:41- Finding
Unpinned npm Package Is Automatically Downloaded and Executed
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 41–42
Vulnerability Type: Supply-chain exposure caused by automatic execution of an unpinned dependency
Risk Level: Highjson { "mcpServers": { "pipeworx-exchangerate": { "command": "npx", "args": ["-y", "mcp-remote@latest", "https://gateway.pipeworx.io/exchangerate/mcp"] } } }Technical Analysis
The documented MCP configuration invokes
npxwith both the automatic-confirmation option (-y) and the mutable package versionmcp-remote@latest. When initialized, this command can download and execute whichever package release the npm registry currently resolves as the latest version.Because the effective dependency is not pinned to a reviewed version, its executable contents can change after this Skill has been audited. Automatic confirmation also removes the opportunity for a user to review the package installation before execution. A compromise of the package, its maintainer account, the publishing process, or the relevant package-distribution infrastructure could therefore turn the documented setup command into a code-execution vector.
Attack Path
- An attacker compromises the
mcp-remotepackage, a maintainer account, or its release pipeline. - The attacker publishes a malicious version that becomes the package resolved by
mcp-remote@latest. - A user or Agent initializes the MCP server using the configuration in
SKILL.md. npx -yretrieves the current package without an interactive confirmation step.- The malicious package executes with the permissions and environment of the user running the Agent.
- The payload can access resources available to that user and potentially communicate extracted information to an external system.
Impact Assessment
Successful exploitation could provide arbitrary code execution with the privileges of the user running the MCP configuration. Dependi ...[truncated 510 chars]
- An attacker compromises the
- Remediation
View remediation
Remediation Suggestions
- Replace
mcp-remote@latestwith an exact, reviewed version such asmcp-remote@X.Y.Z. - Remove
-ywhere practical so installation requires explicit user confirmation. - Install dependencies through a lockfile-controlled workflow and verify package integrity using registry checksums or an equivalent trusted mechanism.
- Review the pinned package and its transitive dependencies before deployment.
- Use an internal package mirror or allowlist for production environments.
- Run the MCP process in a restricted account or sandbox with minimal filesystem, credential, and network access.
- Establish a controlled update process in which new versions are reviewed and tested before the pinned version is changed.
- Replace
