T08 · Insecure Dependencies
- Location
SKILL.md:24- Finding
Unpinned Third-Party Package Is Executed Through npx
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 24–32
Vulnerability Type: Unpinned third-party dependency execution
Risk Level: MediumVulnerable Code
yaml metadata: openclaw: requires: env: - KABUZZ_API_KEY primaryEnv: KABUZZ_API_KEY bins: - npx mcp: command: npx args: - "@kabuzz/mcp-server"The documented connection example at lines 67–74 confirms the same behavior:
json { "mcpServers": { "kabuzz": { "command": "npx", "args": ["@kabuzz/mcp-server"], "env": { "KABUZZ_API_KEY": "kabuzz_agent_live_XXXXXXXXXXXXX" } } } }Technical Analysis
The Skill invokes
@kabuzz/mcp-serverthroughnpxwithout specifying an exact package version or enforcing a reviewed integrity value. Depending on the local npm configuration and cache state,npxcan retrieve and execute the package version currently resolved by the registry.Consequently, the code that ultimately executes can change after this Skill has been audited. Compromise of the package publisher, npm account, package release process, or registry delivery path could cause a malicious future release to run automatically. The MCP process is also supplied with
KABUZZ_API_KEY, which is documented as authorizing financially consequential marketplace operations.The reviewed project contains only
SKILL.md; therefore, the implementation of the external npm package was not available for inspection. This finding identifies an unsafe supply-chain configuration and does not assert that the current package is malicious.Attack Path
- An attacker compromises the npm publisher account, release pipeline, or another component capable of publishing
@kabuzz/mcp-server. - The attacker publishes a malicious package release that is selected by the unversioned package reference.
- A user loads the Skill and launches its MCP configuration.
- `npx @kabuzz/mcp-server ...[truncated 1007 chars]
- An attacker compromises the npm publisher account, release pipeline, or another component capable of publishing
- Remediation
View remediation
Remediation Suggestions
-
Pin the dependency to a reviewed, exact version, for example:
yaml mcp: command: npx args: - "--no-install" - "@kabuzz/mcp-server@1.0.0" -
Install the pinned package through a lockfile-based deployment process and use
npx --no-installso execution fails rather than downloading an unexpected package dynamically. -
Verify package integrity using npm lockfile integrity metadata or an equivalent cryptographic verification mechanism.
-
Review package source and release artifacts before approving version updates. Automate dependency scanning while requiring explicit approval for changes.
-
Run the MCP server in a sandbox or dedicated low-privilege account with restricted filesystem, process, and network access.
-
Use a narrowly scoped, revocable API key and rotate it immediately if package compromise is suspected.
-
Require explicit human confirmation for financially consequential operations such as purchases, payment-method changes, offer acceptance, and shipping-label purchases.
-
Monitor API activity for anomalous transactions and provide a rapid key-revocation mechanism.
-
