Back to skill

Security audit

股票分析雷达入门

Security checks for vulnerabilities and agentic risk

Overview

The skill is a finance-analysis helper, but its instructions are broader and less bounded than its stated purpose, especially around command execution, exports, file handling, and unpinned dependency installation.

Review this skill carefully before installing. Use it only in an isolated Python environment, avoid running it with elevated privileges, and do not treat it as a general report-generation or file-processing tool. The finance purpose is plausible, but the current instructions are overbroad and the dependency setup is not reproducible.

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:125
Finding

Unpinned Third-Party Dependency Installation

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 125 and 220–222
Vulnerability Type: Unpinned and unverified third-party dependencies
Risk Level: Medium

Vulnerable Code Snippets

bash
pip install yfinance pandas numpy
markdown
| yfinance | Python library | Required | `pip install yfinance` |
| pandas | Python library | Required | `pip install pandas` |
| numpy | Python library | Required | `pip install numpy` |

Technical Analysis

The skill directs users or an AI agent to install yfinance, pandas, and numpy without pinned versions, package hashes, a lockfile, or an isolated environment. Package names are obtained from the default package index, so the exact artifacts installed can change after the skill has been audited.

Python package installation can execute package-controlled build or installation logic. A compromised upstream release, package-index account, dependency, or artifact could therefore execute attacker-controlled code during installation or later when imported.

This finding concerns mutable dependency resolution rather than proof that any named package is currently malicious. The reviewed artifact does not contain a requirements.txt, lockfile, hash manifest, vendored dependency, or other mechanism that establishes reproducible and integrity-verified installation.

Attack Path

  1. An attacker compromises an upstream package release, one of its transitive dependencies, its distribution account, or an artifact served through the configured package index.
  2. The user or agent follows the documented setup command: pip install yfinance pandas numpy.
  3. Because no versions or hashes are specified, pip resolves the versions available at installation time rather than a previously reviewed dependency set.
  4. Malicious package installation or build logic executes with the privileges of the account running pip, or the malicious code executes later when the dependency is imported.
  5. The payload ...[truncated 688 chars]
Remediation
View remediation

Remediation Suggestions

  1. Create a reviewed dependency lockfile containing exact versions for all direct and transitive dependencies.
  2. Require cryptographic hashes for every distribution artifact, for example through a generated requirements file used with:
    bash
    python3 -m pip install --require-hashes -r requirements.txt
    
  3. Install dependencies in a dedicated virtual environment rather than the system Python environment:
    bash
    python3 -m venv .venv
    . .venv/bin/activate
    
  4. Use an explicitly approved HTTPS package index and avoid untrusted extra indexes.
  5. Prefer prebuilt, reviewed wheels where appropriate and prevent unexpected source builds.
  6. Regularly scan locked dependencies for known vulnerabilities and review dependency updates before changing pins or hashes.
  7. Run the skill under a non-administrative account with minimal filesystem, credential, and network access.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (9)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The description says to use the skill whenever the user needs finance-radar-tool-free-related functionality, which is circular and overly broad. Ambiguous activation criteria can cause accidental invocation on loosely related requests, especially in multi-skill agent systems where over-selection leads to unnecessary exec exposure.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The description states '支持中文交互,' and the document presents the interaction model as Chinese-only without an opt-in or alternative language option. This can violate language/locale policy when the skill is used in contexts where users have not chosen Chinese.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The skill claims the free edition is limited to single-ticker analysis, but the core capability text also says input_params supports create/query/export operations. That mismatch can cause an agent to invoke the skill for file-export or broader workflow behavior that exceeds the documented finance-only scope, increasing the chance of unintended file generation or unsafe tool use.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The documentation is self-contradictory: it says the free version does not support export/report workflows, yet the core capability section claims export operations. Contradictory security and capability boundaries are dangerous because agents may follow the more permissive interpretation, resulting in unintended actions or privilege creep.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The capability coverage includes generic triggers such as report generation, statistical insights, data visualization, and broad workflow usage, which are wider than the manifest's finance-analysis purpose. Overbroad claims can cause inappropriate routing and make an agent treat this skill as a general-purpose automation component, expanding attack surface beyond its intended domain.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The capability coverage enumerates broad generic keywords like data analysis, report generation, statistical insights, data visualization, and workflow scenarios without strong constraints. This can make the skill match unrelated tasks and be selected as a general automation tool, despite having exec access and a much narrower intended purpose.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

The documentation advertises generic file write handling under core functions, even though the skill is presented as a finance analysis tool and the manifest only declares read and exec tools. This creates unjustified expectations of write-capable behavior and may encourage agents or users to use the skill for broader file-manipulation tasks, which increases misuse risk when exec is available.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

This is a repeated instance of the same unsafe broadening: the skill claims support for reading, parsing, and writing multiple file formats without tying that to the stated finance-analysis purpose. In a skill with exec access, such vague write-capability language can lead to over-trusting the skill for filesystem-affecting workflows.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
78% confidence
Finding

The feature note lists '中文交互' as a core capability but does not indicate that language selection is optional or user-driven. Repeated language framing without opt-in can create an implicit locale restriction.

Content

No source excerpt is available for this finding.