T08 · Insecure Dependencies
- Location
SKILL.md:4- Finding
Unpinned Remote npm CLI Executes with Financial Credentials
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is for paid API access and is mostly transparent about that, but it asks agents to run an unpinned remote npm CLI with payment and wallet credentials and an unlimited default budget.
Treat this as a Review item before installing. Use only dedicated low-balance or test payment credentials, set a strict daily budget, avoid exposing unrelated wallet or Stripe secrets, and prefer a pinned and reviewed CLI version in an isolated environment. Do not let an agent run `fetch` automatically against endpoints you have not explicitly approved.
SKILL.md:4Unpinned Remote npm CLI Executes with Financial Credentials
YARA rule matched a known malware signature (reverse shell, backdoor, ransomware, C2 framework, or info stealer).
BoltzPay lets AI agents pay for API data automatically. It supports three payment protocols (x402, L402, and MPP) across multiple chains (Base, Solana, Tempo), paying with USDC, Bitcoin Lightning, or Stripe. Agents can discover 5,700+ scored endpoints from the live registry, evaluate pricing, open streaming sessions, and purchase API data in a single workflow.
Fetch data from a paid API endpoint:
npx @boltzpay/cli fetch https://invy.bot/api
| Command | Description | Credentials Needed |
|---|---|---|
| `npx @boltzpay/cli fetch |
The skill repeatedly instructs users to execute npx @boltzpay/cli without pinning an exact package version. Because npx resolves and may download the latest published package at runtime, a compromised maintainer account, malicious update, or dependency hijack could cause arbitrary code execution in an environment that also holds payment credentials and wallet secrets.
This command references npx @boltzpay/cli with no pinned version, allowing whatever version is current in the registry to be executed. In this skill, that risk is amplified because the tool is intended to process payment actions and may access sensitive environment variables such as API keys and wallet secrets.
An unpinned npx package invocation means users may execute newly published code without review. Even for a non-paying command like quote, a malicious package update could still run arbitrary code locally and inspect environment variables or alter outputs to mislead later payment decisions.
The discover example uses an unpinned npx package, which exposes users to supply-chain risk from malicious or compromised future releases. While this specific command may not require credentials, the package still executes on the host and can perform arbitrary actions if tampered with.
Running npx @boltzpay/cli without a version allows unreviewed registry updates to change behavior or execute attacker-controlled code. This is a real supply-chain weakness even if the command only filters registry data, because the package is executed locally before any functional safeguards apply.
The unpinned discover --query command has the same package substitution risk as the other examples: npx may fetch and execute the latest code available from the registry. In a developer or agent environment, arbitrary package code could exfiltrate secrets, tamper with results, or establish persistence.
This diagnose command executes a remotely resolved package without version pinning, creating a straightforward supply-chain execution risk. Because the tool is positioned for automated agent workflows, users may run it in privileged environments where compromise has broader consequences than a normal local CLI.
The budget command still relies on unpinned package execution via npx, so a malicious upstream update could execute arbitrary code before showing spending information. The surrounding context of financial tooling makes the host environment especially attractive because it may contain wallet and payment secrets.
An unpinned history invocation gives the package author or an attacker controlling the package distribution path the ability to change executed code at any time. Since transaction history is financially sensitive, tampering could also misrepresent payment records or harvest related data.
This wallet command uses an unpinned package that may access wallet-related data while executing locally. The combination of floating package resolution and access to payment-related environment variables creates a credible path to credential theft or falsified wallet information.
The discover example later in the document also uses an unpinned npx package, preserving the same supply-chain risk. Repetition increases the likelihood that users will copy unsafe commands directly into environments that may have network and secret access.
This quote example remains vulnerable to registry-side package substitution because no exact package version is specified. Even read-like operations can be abused by a malicious package to execute arbitrary code, collect environment data, or provide deceptive pricing information.
This unpinned fetch command is especially dangerous because it is the operation that performs real payments. A malicious package update could not only execute arbitrary code but also misuse configured payment credentials, trigger unauthorized spending, or alter destination/payment logic.
The skill explains that fetch pays and returns data, but it lacks a strong explicit warning near the command usage that invoking it performs real paid transactions against third-party APIs. In an agent or automation setting, insufficient disclosure can lead to unintended spending, execution against untrusted endpoints, and surprise use of live wallet credentials.
The later diagnose example again executes a floating package version from the registry. In an automation context, repeated unsafe examples normalize a pattern that undermines reproducibility and opens the door to arbitrary code execution via package compromise.
The quick-start and examples collectively encourage using an unpinned remote CLI in a payment-enabled environment. Because this specific occurrence is tied to fetch, exploitation could lead to credential exfiltration, unauthorized purchases, or arbitrary host compromise.
No suspicious patterns detected.