T08 · Insecure Dependencies
- Location
SKILL.md:25- Finding
Unpinned npm Package Download and Execution
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 25
Vulnerability Type: Unpinned third-party package execution
Risk Level: MediumVulnerable Code:
shell npx mcp-remote https://app.purrplan.ai/api/mcp --header "Authorization: Bearer YOUR_TOKEN"Technical Analysis
The fallback setup directs users to execute
mcp-remotethroughnpxwithout specifying a fixed package version or verifying package integrity. Depending on the local npm configuration and package availability,npxcan retrieve the current package release from the npm registry and execute it immediately.The reviewed Skill therefore does not bind execution to a known, audited artifact. A compromised maintainer account, malicious package release, registry compromise, or unsafe future update could change the code executed by this command after the Skill itself has been reviewed. This is a supply-chain risk; the audit found no evidence that the current package is malicious.
Attack Path
- An attacker compromises the
mcp-remotepackage, its publisher account, or its distribution path. - The attacker publishes a malicious version under the package name used by the documented command.
- A user follows the fallback setup and runs the unpinned
npx mcp-remote ...command. npxretrieves and executes the attacker-controlled package under the user's local privileges.- The package can inspect local data and capture the PurrPlan bearer token supplied to it.
Impact Assessment
Successful exploitation could permit arbitrary code execution with the privileges of the user running
npx. Accessible resources may include local files, environment variables, MCP configuration, shell credentials, and other secrets available to that account.The malicious package would also receive the PurrPlan bearer token. The resulting remote privileges would depend on the token's assigned scopes and could include creating posts, upload ...[truncated 106 chars]
- An attacker compromises the
- Remediation
View remediation
Remediation Suggestions
- Prefer the client's native HTTP MCP support so that no additional executable package is required.
- If the bridge is necessary, pin
mcp-remoteto a specifically reviewed version rather than resolving the latest available release. - Install the dependency through a lockfile-backed workflow and verify the package's provenance and integrity before execution.
- Periodically review the pinned version and update it through a controlled dependency-review process.
- Execute the bridge with minimum operating-system privileges and isolate it from unrelated credentials and sensitive files where feasible.
- Grant the PurrPlan token only the scopes required for the intended workflow and rotate it immediately if package compromise is suspected.
