T08 · Insecure Dependencies
- Location
SKILL.md:47- Finding
Unpinned Third-Party CLI Executes with Access to an API Token
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is a coherent Chinese-language stock analysis helper, but it asks users or agents to run a mutable third-party CLI with an API token, which needs review before installation.
Install only if you trust the DAXIAPI CLI source and are comfortable giving it a token. Prefer a pinned, reviewed CLI version, avoid commands that print the token, keep the token out of shell history and logs, and rotate the token if it has already been used with an unreviewed latest package.
SKILL.md:47Unpinned Third-Party CLI Executes with Access to an API Token
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
---
### 方式三:.env 文件
在项目根目录创建 `.env` 文件:
The skill instructs the agent to execute npx daxiapi-cli@latest, which fetches and runs the newest package version at execution time rather than a fixed, reviewed release. This creates a supply-chain risk: if the package is compromised or a breaking/malicious release is published, the agent could execute attacker-controlled code while handling credentials or local environment access.
This command tells the agent to run npx daxiapi-cli@latest config set token ..., again pulling whatever version is current at runtime. Because this step handles a sensitive API token, a compromised upstream package could exfiltrate the token or abuse it, making the unpinned dependency especially dangerous in this context.
The verification step runs npx daxiapi-cli@latest zdt --type zt, which still allows execution of an unreviewed newest release at runtime. Although this invocation is less sensitive than token setup, it remains a supply-chain execution risk because the fetched package code runs locally and could perform unintended actions.
This duplicate finding at the same line corresponds to another unpinned npx daxiapi-cli@latest invocation in the same recovery instruction block. Even in documentation, normalizing runtime download-and-execute behavior for a credentialed CLI meaningfully increases the likelihood of supply-chain compromise if the package or publishing account is ever hijacked.
The documentation instructs users to run npx daxiapi-cli@latest, which resolves and executes whatever package version is current at invocation time rather than a reviewed, fixed version. If the package is compromised, typo-squatted, or a malicious update is published, users of this skill could execute untrusted code on their systems.
This command uses npx ...@latest, causing runtime installation and execution of the newest published package without pinning. That creates a supply-chain risk: a malicious or compromised release would be executed directly by users following the documentation.
The skill documentation again recommends npx daxiapi-cli@latest, which delegates trust to the current registry state at execution time. In a security context this is dangerous because users may unknowingly run attacker-controlled code if the package or publisher account is compromised.
Even in the combined-query example, the docs tell users to invoke npx ...@latest, preserving the same unpinned dependency execution risk. Because npx fetches and runs code, an upstream compromise could lead to arbitrary code execution on analyst or trader workstations.
This second combined-query command repeats the unsafe @latest pattern, meaning the risk is not isolated but systemic across the documentation. Repetition increases exposure because users are more likely to copy-paste and execute the commands without scrutiny.
Although shown as an invalid-parameter example, the command still uses npx daxiapi-cli@latest, so users copying it would execute an unpinned package before seeing the parameter validation behavior. The context is slightly less dangerous because it is illustrative error handling, but the same supply-chain execution risk remains.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
This markdown file contains user-facing instructions only in Chinese, and there is no indication that the skill is region-specific or that users may choose another language. Under the policy, forcing a specific language without opt-in can be a natural-language policy violation.
This markdown file presents all primary instructions and field descriptions in Chinese, with no indication that the user can choose another language or that the document is intentionally limited to a Chinese-speaking audience. Under the policy rule for natural-language violations, forcing a specific language without opt-in is reportable.
The document title and instructions are entirely in Chinese, with no indication that language selection is optional or that the skill is intentionally region-specific. Under the policy, forcing a specific language without user opt-in can be a natural-language policy violation.
No suspicious patterns detected.