Back to skill

Security audit

Methodalgo Market Intel Explorer

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent market-data skill that discloses its CLI, API key, and network use, with a supply-chain caution around the global npm install.

Install this only if you trust the MethodAlgo npm package and service. Prefer pinning or verifying the CLI version, keep METHODALGO_API_KEY limited to the service, and avoid using persistent login on shared machines.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:46
Finding

Unpinned Global Installation of a Third-Party CLI

Content
View full analysis

Vulnerability Details

File Location: SKILL.md:18-25 and SKILL.md:46-49
Vulnerability Type: Unpinned third-party dependency installed globally
Risk Level: Medium

Vulnerable Code

yaml
install:
  - kind: node
    package: methodalgo-cli
    bins: [methodalgo]
bash
npm install -g methodalgo-cli
methodalgo --version

Technical Analysis

The Skill directs users or agents to globally install methodalgo-cli without specifying an exact package version or verifying package integrity. The documented minimum version does not constrain npm resolution, so the command installs whichever release is currently associated with the package's default distribution tag.

npm package installation can execute package lifecycle scripts. A global installation also exposes the resulting executable throughout the user's environment. The dependency subsequently receives METHODALGO_API_KEY and performs network requests, but its source code is not included in this project. Consequently, the audit could not verify its credential handling, network destinations, or enforcement of the documented restriction against signed Binance endpoints.

This is a supply-chain exposure rather than evidence that the current package is malicious. The project contains no embedded malicious scripts, credential-harvesting instructions, persistence mechanisms, SSH operations, or prompt-hijacking instructions.

Attack Path

  1. An attacker compromises the npm publisher account, package repository, release process, or a transitive dependency.
  2. The attacker publishes a malicious release under the legitimate methodalgo-cli package name or modifies a release selected by npm's default distribution tag.
  3. A user or agent follows the Skill instruction and runs npm install -g methodalgo-cli.
  4. npm downloads the mutable package release and may execute attacker-controlled installation lifecycle scripts with the invoking use ...[truncated 1183 chars]
Remediation
View remediation

Remediation Suggestions

  1. Pin methodalgo-cli to an audited exact version instead of resolving the latest release:

    bash
    npm install --global --ignore-scripts methodalgo-cli@1.0.36
    

    Enable lifecycle scripts only if they are required and have been reviewed.

  2. Prefer a project-local dependency governed by a committed lockfile rather than a global installation:

    bash
    npm install --save-exact methodalgo-cli@1.0.36
    npm ci
    
  3. Commit and verify npm lockfile integrity metadata. In controlled environments, validate the downloaded package hash or signed provenance before installation.

  4. Review every dependency update before changing the pinned version. Use dependency scanning and inspect package lifecycle scripts, maintainers, provenance, and transitive dependencies.

  5. Run the CLI under a dedicated, least-privileged account or sandbox with access only to the required API key and network destinations.

  6. Restrict outbound network access to documented MethodAlgo service endpoints and required public Binance endpoints where operationally feasible.

  7. Ensure the API key has the minimum service permissions, avoid exposing unrelated environment variables to the process, and support prompt key rotation if compromise is suspected.

  8. Document the precise trusted package version and expected service endpoints so the installation and runtime behavior can be independently verified.

Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • System Prompt LeakageDirect Leakage, Indirect Extraction, Tool-Based Exfiltration
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (3)

Direct Prompt Extraction

High
Category
System Prompt Leakage
Confidence
85% confidence
Finding

Skill contains instructions that could directly expose system prompts, internal rules, or hidden instructions to users or external parties.

Content

Scanner excerpt · SKILL.md (reported line 204)May include surrounding context.

md
| Macro regime check | `macro dashboard`; `macro recession`; `macro liquidity --tail 52`; optional `macro compare` or `macro zscore`. |
| Binance microstructure | `binance price`; `binance klines`; `binance funding`; `binance oi`; `binance sentiment`. |

## Output Rules

- Parse JSON with structured logic, not string matching.
- Surface authentication and version errors explicitly.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill instructs the agent to prefer Chinese-language fields when present, without conditioning that behavior on the user's requested language. That can override user intent and create output-integrity issues, especially in multilingual contexts where the agent should preserve the user's language preference.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
87% confidence
Finding

This markdown file includes natural-language content in both English and Chinese, such as metric labels and an example error message, but does not explain whether localization is user-selectable or limited to a specific locale. That can violate language/locale policy because it implicitly forces non-English output in a general reference file without opt-in or justification.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.