Back to skill

Security audit

yanmu-financial-data

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed financial-data helper that fetches public stock quotes and formats built-in financial data, with no persistence, credential access, or destructive behavior found.

Install only if you are comfortable with stock symbols being queried against Sina Finance for live prices. Treat the bundled historical and estimate data as demonstration or reference data, not authoritative investment advice, and note that the interface is Chinese-language only.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (7)

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
91% confidence
Finding

The skill documents network access to Sina Finance APIs but does not declare any explicit tool scope or permissions. This creates an authorization and transparency gap: an agent may be allowed to make outbound requests without a clear least-privilege boundary, increasing the risk of unintended data exfiltration or misuse of network-capable tooling.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The natural-language description, headings, workflow, and cautions all require Chinese comprehension, effectively forcing a specific language for use of the skill. The policy requires either offering the user a language/locale choice or clearly documenting and justifying the locale constraint.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

This code file contains user-facing natural-language text in the module docstring that is exclusively Chinese. Under the language/locale policy, forcing a specific language without offering a choice or documenting a justified locale constraint is a policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The argparse description and argument help strings are presented solely in Chinese, which forces a language choice on users of the script. The file does not offer localization, opt-in language selection, or a documented reason for restricting the interface to Chinese.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

The skill sends user-requested stock symbols to a third-party API but does not warn the user that their inputs will be transmitted externally. Even if stock tickers are usually low sensitivity, this still weakens user consent and data-handling transparency, and in some contexts a queried symbol set could reveal research interests or trading intent.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

The script prints warning and status messages in Chinese to stderr during normal execution. Because these are user-facing operational messages and no language choice or locale limitation is documented, they constitute a natural-language locale policy concern.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
94% confidence
Finding

L298 的格式化输出会固定展示“分析师一致预期 (共{num_analysts}家)”,而数据集中不存在 num_analysts 字段,因此实际输出默认为 0 家。该文案给人的含义是代码掌握了分析师覆盖数量,但实际代码既未获取也未维护该信息,属于文案与实际行为不一致。

Content

No source excerpt is available for this finding.