T08 · Insecure Dependencies
- Location
SKILL.md:11- Finding
Unverified Globally Installed MCP Dependency
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 11–20
Vulnerability Type:T08: Insecure Dependencies
Risk Level: MediumVulnerable Code
yaml install: command: npm args: - install - -g - "pipiads-mcp-server@1.0.3" primaryEnv: PIPIADS_API_KEY emoji: "📊" homepage: https://www.pipiads.com mcpServers: pipiads: command: pipiads-mcp-server env: PIPIADS_API_KEY: "{{PIPIADS_API_KEY}}"Technical Analysis
The skill directs
npmto retrievepipiads-mcp-server@1.0.3from the configured package registry, install it globally, and execute its binary with access toPIPIADS_API_KEY.Pinning an exact version limits unintended version drift, but the project provides no lockfile, package integrity hash, vendored source, signature verification, or other mechanism that would allow the downloaded artifact to be authenticated and audited from this repository. A global npm installation may also run package lifecycle scripts and places files outside the project directory.
This is a supply-chain trust risk rather than proof that the named package is malicious. The reviewed project contains only
SKILL.md, so the dependency's implementation and behavior could not be verified locally.Attack Path
- An attacker compromises the package publisher, registry account, package distribution infrastructure, or the client-side npm registry configuration.
- The skill installation invokes
npm install -g pipiads-mcp-server@1.0.3. - npm downloads the unverified artifact and may execute its installation lifecycle scripts with the installing user's privileges.
- The globally installed
pipiads-mcp-serverbinary is subsequently launched. - The process receives
PIPIADS_API_KEYthrough its environment. - Malicious dependency code could read and disclose that credential, misuse the associated API account, or access files and resources available to the ...[truncated 546 chars]
- Remediation
View remediation
Remediation Suggestions
- Vendor and review the MCP server source, or otherwise independently audit the exact package artifact before deployment.
- Record and verify a trusted registry integrity digest or signature for the approved artifact.
- Avoid global installation. Install the dependency in an isolated, project-scoped environment with a lockfile and immutable dependency resolution.
- Disable npm lifecycle scripts during installation where compatible, or explicitly audit every lifecycle script before allowing it to run.
- Run the MCP server in a sandbox or container under a dedicated, least-privileged account with restricted filesystem and network access.
- Supply a narrowly scoped, revocable API key and rotate it if dependency compromise is suspected.
- Pin the registry origin and enforce trusted package provenance in the deployment pipeline.
- Monitor API usage and establish spending or credit limits to reduce the impact of credential misuse.
