Back to skill

Security audit

Company Research (CN)

Security checks for vulnerabilities and agentic risk

Overview

The skill is a research assistant, but it also gives concrete investment actions and mandatorily saves potentially sensitive research records without clear consent.

Review before installing if you may use this for confidential diligence or investment decisions. The main concerns are that it can produce specific financial actions and will save research details to a predictable memory file by default. Use only where that retention and decision-support behavior is acceptable, and avoid confidential, personal, or regulated investment contexts unless the skill is revised to require consent and clearer scope controls.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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)

T09 · Insecure Skill Coding Practices

Warning
Location
SKILL.md:233
Finding

Mandatory Persistent Storage of Potentially Sensitive Research Data

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 233-241
Vulnerability Type: Unconditional persistence of sensitive research metadata in plaintext
Risk Level: Medium

Vulnerable Code

markdown
### 阶段 6:记忆归档(必做)

完成后**必须**写入 `memory/YYYY-MM-DD.md`:
- 报告主题、研究边界
- 飞书链接(如有)
- 核心发现摘要
- 数据来源汇总
- [来源] 标注是谁发起的研究
- (多角色模式)风控评级 + CIO 决策摘要一句话

Technical Analysis

The Skill requires every completed research task to be recorded in a persistent Markdown file, irrespective of whether the user requested or consented to retention. The required record can contain:

  • The research subject and scope
  • Core due-diligence findings
  • Data-source information
  • The identity or attribution of the requester
  • A link to an externally stored Feishu document
  • Investment risk ratings and CIO decision summaries

Company due diligence can involve non-public commercial information, investment strategy, holdings-related context, and personally attributable request metadata. Persisting this information in a predictable plaintext path increases its lifetime and exposure beyond the active session.

The instruction does not require sensitivity classification, redaction, restrictive file permissions, user consent, retention limits, secure deletion, or authorization checks before later access. This is best classified as an insecure data-handling practice rather than agent memory poisoning: the retained content consists of research metadata and conclusions, not attacker-controlled behavioral instructions intended to alter future agent behavior.

Attack Path

  1. A user requests confidential company research, investment analysis, or due diligence.
  2. The Skill processes potentially non-public or commercially sensitive information.
  3. Upon completion, the mandatory archival stage writes the topic, findings, requester attribution, document link, and investment decision metadata to memory/YYYY-MM-DD.md.
  4. The plaintext record remains available after the active tas ...[truncated 1110 chars]
Remediation
View remediation

Remediation Suggestions

  1. Make archival explicitly opt-in

    • Do not write any persistent record unless the user has affirmatively requested it.
    • Present the exact fields to be stored before requesting consent.
  2. Default to no persistence for sensitive work

    • Disable archival by default for due diligence, non-public company information, personal data, portfolio details, and investment decisions.
    • Provide an explicit ephemeral or no-memory mode.
  3. Apply data minimization

    • Store only the minimum operational metadata required.
    • Exclude requester identity, holdings information, risk ratings, CIO decisions, and external document links by default.
    • Redact confidential names and identifying details.
  4. Classify content before writing

    • Add checks for non-public information, personal data, financial information, credentials, access-bearing URLs, and confidential business material.
    • Block persistence or require renewed consent when sensitive content is detected.
  5. Protect retained records

    • Use a dedicated storage location with restrictive permissions and per-user access isolation.
    • Avoid predictable shared plaintext files where practical.
    • Encrypt sensitive records at rest if retention is genuinely required.
  6. Define lifecycle controls

    • Establish a short retention period appropriate to the task.
    • Support user-visible review and deletion.
    • Securely remove expired records and document the retention policy.
  7. Sanitize external links

    • Do not persist Feishu or other document URLs containing access tokens or sensitive identifiers.
    • Store a non-access-bearing document identifier only when necessary and authorized.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (10)

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The manifest says the skill is not for investment reports, but the body explicitly enables investment-decision workflows and portfolio guidance. This mismatch defeats safety routing and can cause the wrong skill to activate for regulated or high-risk financial advice, leading to unreviewed buy/sell/hold recommendations.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

These instructions direct the agent to produce actionable investment recommendations, including position sizing, timing windows, and stop-loss triggers, despite the declared scope excluding investment reporting. That creates a direct path to regulated advice generation and materially increases the risk of harmful financial recommendations being delivered without proper safeguards.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

Internal guidance describes investor-facing decision support as a built-in mode even though the manifest frames the skill as research-oriented and excludes investment-report use. Contradictory instructions are dangerous because orchestration, reviewers, and users may rely on the safer manifest while the actual behavior expands into higher-risk advice generation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

Forcing source language by company geography can silently narrow the evidence base and ignore user preferences, bilingual contexts, or diaspora/overseas reporting. In security terms this is a quality and integrity risk: the model may omit critical sources, misrepresent coverage, or bias conclusions used for diligence or investment decisions.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill mandates writing research details, provenance, and possibly links or summaries into persistent memory files without notifying the user or obtaining consent. This can store sensitive commercial, strategic, or personal information beyond the immediate task and create later confidentiality leaks or unauthorized reuse.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The archival instructions require storing research boundaries, summaries, provenance, and initiator information in natural-language memory entries, which can capture sensitive deal context, internal projects, or personally attributable data. Because this memory is persistent and human-readable, it increases the chance of later disclosure through unrelated prompts, debugging, or file access.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

This markdown file contains only Chinese-language content and does not indicate that the user can choose another language or that the skill is intentionally limited to a Chinese-speaking or region-specific audience. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

Sending output to Feishu is an external data transfer, but the skill provides no privacy or confidentiality warning before doing so. Users may inadvertently cause proprietary diligence notes, company assessments, or personal data to be transmitted to a third-party system with different access controls and retention policies.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

This markdown file contains user-facing natural language exclusively in Chinese, beginning with the title at L01 and continuing throughout the document. Under the policy rule, forcing a specific language without user opt-in can be a locale-policy violation when no justification or alternative is provided.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

This markdown file contains all user-facing instructions and output templates in Chinese, with no indication that another language can be used. Under the policy, forcing a specific language without user opt-in is a natural-language policy concern.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.