T08 · Insecure Dependencies
- Location
SKILL.md:82- Finding
Unpinned npm Package Is Downloaded and Executed Automatically
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 82–89
Vulnerability Type: Unpinned third-party dependency execution
Risk Level: Mediumjson { "mcpServers": { "scanblitz": { "command": "npx", "args": ["-y", "@scanblitz/mcp-server"], "env": { "SCANBLITZ_API_KEY": "sb_api_..." } } } }Technical Analysis
The optional MCP configuration invokes
npx -y @scanblitz/mcp-serverwithout pinning an exact package version or verifying package integrity. The-yoption suppresses confirmation, allowing npm to download and execute the package automatically.Because the effective program is retrieved from npm when the command runs, its contents can change after the Skill has been reviewed. Compromise of the package, its publisher account, or the upstream dependency chain could result in arbitrary code execution under the Agent user's account. The package would also be explicitly provided with
SCANBLITZ_API_KEY.This integration is not required for the primary curl-based ScanBlitz workflow, so automatically executing an unpinned package introduces avoidable supply-chain exposure.
Attack Path
- An attacker compromises the
@scanblitz/mcp-serverpackage, its publisher account, or one of its install-time dependencies. - The attacker publishes a malicious version under the existing package name.
- A user follows the documented MCP configuration.
npx -yretrieves the current package version without interactive review.- The malicious package executes with the permissions of the Agent user.
- The package can read the supplied
SCANBLITZ_API_KEY, access other user-readable files and environment variables, and initiate outbound network connections.
Impact Assessment
Successful exploitation provides arbitrary code execution with the privileges of the user running OpenClaw or the MCP server. Potential impact includes theft of the ScanBlitz AP ...[truncated 253 chars]
- An attacker compromises the
- Remediation
View remediation
Remediation Suggestions
- Pin the MCP package to a specific, reviewed version rather than resolving the latest release:
json "args": ["-y", "@scanblitz/mcp-server@1.2.3"] - Use a lockfile and integrity verification where the deployment model supports them.
- Document the package publisher, source repository, review process, and expected integrity digest.
- Avoid
-yfor first-time installation so users can review what will be installed. - Prefer installing the reviewed package in a controlled environment instead of downloading code on every invocation.
- Run the MCP server in a sandbox with restricted filesystem and network access.
- Provide only the minimum required environment variables to the subprocess.
- Rotate
SCANBLITZ_API_KEYimmediately if package compromise is suspected.
- Pin the MCP package to a specific, reviewed version rather than resolving the latest release:
