Back to skill

Security audit

joinquant聚宽平台的策略助手,DR成熟框架

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent JoinQuant coding aid, but it needs review because its examples can automate real stock orders and liquidation without prominent live-trading safeguards.

Before installing, treat the included code as trading-capable examples. Use it first in JoinQuant backtesting or paper-trading mode, review every order, liquidation, and scheduled trading path, and add explicit live-trading confirmations, position limits, and dry-run controls before connecting it to a real account.

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
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (17)

Missing User Warnings

High
Category
Not specified by scanner
Confidence
96% confidence
Finding

The file provides direct trading code snippets that place live buy, sell, liquidation, and batch orders, but it does not include any warning that these actions may execute real trades or cause financial loss. In an agent skill context, executable examples can be copied, invoked, or adapted with little friction, making accidental or unsafe order placement materially more likely.

Content

No source excerpt is available for this finding.

Missing User Warnings

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The market and industry risk-control logic can liquidate many or all holdings when drawdown thresholds are met, yet the document provides no explicit warning about portfolio-wide sell behavior. In the context of an agent skill, broad automatic liquidation is especially dangerous because a user may deploy it as-is and trigger mass trades from transient or miscomputed market data.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill documentation is written entirely in Chinese and all example commands and guidance are presented only in Chinese, with no indication that users may choose another language. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation unless the locale constraint is explicitly justified.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

This documentation provides multiple examples and helper functions that directly place, modify, and cancel real trading orders, including batch operations and full liquidation, without any visible warning that these actions may execute against a live brokerage environment. In an agent skill context, users or downstream systems may copy or automate these examples verbatim, increasing the risk of unintended financial loss or irreversible market actions.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The example code automatically places sell orders via order_target(stock, 0) when a stop-loss condition is met, but the surrounding Markdown does not clearly warn that this is live trading logic rather than illustrative pseudocode. In an agent skill context, users may copy or invoke the snippet directly and unintentionally trigger real liquidation of positions.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

These position-control examples automatically reduce holdings using order(...) and order_target_value(...) without a user-facing warning that portfolio positions will be modified. In a skill or automation setting, this can cause unintended rebalancing or losses if the example is treated as safe default behavior.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill provides concrete trading-signal interpretations such as golden cross/death cross, overbought/oversold, breakout, and volume expansion cues without any disclaimer that the material is educational only and not investment advice. In an agent skill context, users may treat these outputs as actionable recommendations, which can improperly influence financial decisions and create harm through misplaced reliance.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The file contains a Chinese-language title/comment ('基础策略模板 - 适用于聚宽平台') and all user-facing documentation/comments are written in Chinese, which can impose a specific language without user opt-in. The policy explicitly flags language or locale constraints when no choice or justification is provided.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

This Python file performs safety-critical operations by submitting portfolio orders through order_target_value_send, which can affect user funds. Although the code logs some buy actions later, there is no visible upfront disclosure, confirmation step, or warning near the order-execution path about live trading impact.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The file’s human-facing strings, comments, docstrings, and log messages are all in Chinese, which imposes a specific language on users/operators. The policy allows locale constraints only when they are explicitly justified or when users are given a language choice, neither of which appears here.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

The README presents all user-facing instructions and usage guidance in Chinese, and does not indicate that the skill is region-specific or provide an opt-in language choice. Under the policy for natural-language violations, forcing a specific language without user opt-in can be a locale-policy issue.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
94% confidence
Finding

This markdown file is entirely presented in Chinese, starting with the title at L001, and does not indicate that other languages are available or that the Chinese-only scope is intentional. Under the language/locale policy rule, a skill or documentation artifact that mandates a specific language without user opt-in can be a policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
78% confidence
Finding

All user-facing natural-language content in the file is presented in Chinese, with no indication that users may choose another language or that the locale restriction is intentional and justified. The policy calls for flagging language or locale constraints when they are imposed without user opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
90% confidence
Finding

This file presents all user-facing instructions and examples in a single language, which can violate a language/locale policy when no user opt-in or justification is provided. The content does not indicate that the skill is intentionally limited to Chinese-speaking users or a China-specific compliance context.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

All headings, comments, and usage guidance in the file are presented only in Chinese, which can amount to forcing a specific language without offering an alternative. The policy allows locale or language constraints when they are documented and justified, but no such justification or opt-in is present here.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
82% confidence
Finding

All natural-language headings, descriptions, and comments are in Chinese, which effectively forces a single language for users without any opt-in or documented locale justification. Under the policy, language restrictions should be optional or explicitly justified.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

Comments, docstrings, and log messages are written in Chinese throughout the file, which effectively forces a specific language for user-visible behavior and developer guidance. The policy allows locale constraints only when users are given a choice or when the limitation is clearly justified.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.