Back to skill

Security audit

Akshare Finance

Security checks for vulnerabilities and agentic risk

Overview

This skill is a straightforward AKShare-based financial data lookup helper with expected network-backed queries and no evidence of credential access, persistence, destructive behavior, or hidden execution.

Before installing, use an isolated virtual environment and pin reviewed versions of `akshare` and `pandas` rather than following the unpinned install hint. Expect queries to contact AKShare-backed external data sources and send requested symbols or keywords to those providers.

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
scripts/akshare_query.py:23
Finding

Unpinned Third-Party Dependency Installation Recommendation

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • 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
Findings (6)

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
70% confidence
Finding

Without declared permissions the skill's intent is opaque and cannot be validated.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

L003 将触发场景定义为“查一下股票”“GDP”“CPI”“人民币汇率”“比特币价格”等,并以“等任何中国金融数据查询”收尾,范围非常宽泛,缺少明确边界。这种写法容易覆盖普通对话中的常见金融问题,且未说明何种情况不应激活该技能。

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
85% confidence
Finding

文件中的名称、描述和示例均默认以中文市场与中文查询表述为唯一使用方式,但没有说明是否支持其他语言或允许用户选择输出语言。根据语言/locale 政策,若技能隐含强制单一语言而无用户 opt-in,属于自然语言层面的策略风险。

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

This Python file wraps many AKShare functions that fetch remote financial data, which implies outbound network requests and transmission of user-supplied query parameters such as stock symbols or keywords. Although the script has docstrings and usage examples, it does not visibly warn users that invoking these interfaces contacts external data providers or transmits query inputs off-host.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Low
Category
Not specified by scanner
Confidence
76% confidence
Finding

currency_name() returns a currency name list, which is broader utility functionality and not clearly part of the manifest's stated focus on Chinese market, fund, bond, futures, macro, FX reserve, RMB exchange rate, and crypto price queries. This is a mild scope expansion in functionality relative to the declared purpose.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Low
Category
Not specified by scanner
Confidence
92% confidence
Finding

The manifest description emphasizes '中国 A股/期货/基金/债券/宏观数据查询' and examples centered on Chinese financial data, but the implementation adds stock_hk_spot, stock_us_spot, and globally oriented crypto endpoints. These capabilities expand beyond the described China-focused scope rather than being necessary implementation details of querying A-share and related domestic data.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.