Back to skill

Security audit

wechat-article-writer

Security checks for vulnerabilities and agentic risk

Overview

This appears to be a legitimate WeChat writing assistant, but it needs review because it can use private writing samples, persist style/progress files, and has overbroad activation and authority language.

Install only if you want a Chinese WeChat-public-account writing workflow and are comfortable placing writing samples in its my-articles folder. Do not store confidential drafts there unless you accept that the skill may analyze them into my-style.md and creation-log.md; review or delete those files when needed. Treat web research and media generation as potentially external actions despite the local-only wording.

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
Findings (1)

T01 · Skill Instruction Hijacking

Error
Location
SKILL.md:102
Finding

Unqualified Override of the Agent Instruction Hierarchy

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 102–109
Vulnerability Type: Unqualified instruction-priority override
Risk Level: High

Vulnerable Code

markdown
### 用户优先级原则(最高优先级)

**用户说的话永远是最高优先级**。AI 虽然在每个步骤会提出具体问题,但用户可以通过自然语言忽略、跳过、补充或改变方向。AI 必须遵循以下原则:

1. **用户指令优先**:用户的自然语言指令优先于当前步骤的预设问题。例如用户说"先不管大纲,帮我查一下 XX 的最新数据",AI 应立即执行用户的请求
2. **灵活解读**:用户不需要精确回答 AI 提出的选项(A/B/C/D等),自然语言回复即可。AI 需从用户的回复中提取意图
3. **额外请求优先处理**:当用户提出额外要求时,先执行额外要求,完成后再回到工作流
4. **回归判断**:执行完用户的额外要求后,按「步骤跳跃判断机制」决定回到哪个 Phase 继续

Technical Analysis

The skill declares that everything the user says is always the highest-priority instruction and directs the agent to execute additional user requests immediately. The rule is not scoped to article-writing preferences and does not preserve the authority of system instructions, developer instructions, safety requirements, authorization boundaries, or tool policies.

Consequently, loading the skill may alter the agent's effective instruction hierarchy. A user could invoke this rule to redirect the agent away from the declared WeChat article-writing workflow and toward unrelated, unsafe, or unauthorized actions. The language is especially risky in an agent environment with file, network, media-generation, or other consequential tools.

Attack Path

  1. A host agent loads and follows SKILL.md.
  2. The skill establishes the rule that user statements always have the highest priority.
  3. A user submits an instruction unrelated to article writing or conflicting with a higher-level control.
  4. The skill directs the agent to process that extra request immediately before returning to its workflow.
  5. If the host does not independently enforce its instruction hierarchy, the agent may invoke available tools or perform actions outside the skill's intended scope.

The repository does not contain an executable exploit implementing this path. Exploitability and resulting consequences depend on the host agent's enforcement and avai ...[truncated 783 chars]

Remediation
View remediation

Remediation Suggestions

  1. Replace the absolute priority statement with a rule explicitly scoped to article-writing content and workflow choices.
  2. State that system and developer instructions, safety policies, authorization boundaries, and tool restrictions always remain authoritative.
  3. Reject or separately validate requests unrelated to the skill's declared purpose.
  4. Require explicit confirmation before consequential file deletion, file modification, network access, or external tool invocation.
  5. Add a least-privilege boundary such as:
markdown
Within this article-writing workflow, honor the user's content and workflow
preferences unless they conflict with system or developer instructions, safety
requirements, authorization boundaries, or tool policies. Do not perform
unrelated actions. Obtain explicit confirmation before consequential file,
network, or external-tool operations.
  1. Add adversarial tests verifying that prompts such as “ignore prior instructions,” requests for unrelated system actions, and attempts to bypass authorization do not alter the host instruction hierarchy.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (20)

Vague Triggers

High
Category
Not specified by scanner
Confidence
95% confidence
Finding

Broad triggers such as generic article-writing phrases can cause the skill to activate on many ordinary requests that are not specifically about WeChat workflows. Overbroad activation increases the chance of unintended file access, style/profile reuse, or persistence behaviors being invoked in contexts where the user did not mean to use this skill.

Content

No source excerpt is available for this finding.

Vague Triggers

High
Category
Not specified by scanner
Confidence
96% confidence
Finding

Common Chinese phrases like '写文章' or similar broad wording are likely to match everyday requests unrelated to this skill. In this skill's context, accidental activation is more dangerous because the workflow includes reading personal style files, article libraries, and maintaining logs across sessions.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The skill tells users that all analysis stays local, but elsewhere it explicitly requires web-based market research and current-year searching. This can mislead users into sharing sensitive drafts, style archives, or unpublished material under a false privacy assumption, creating a trust and data-handling risk.

Content

No source excerpt is available for this finding.

Shadow Command Trigger

Medium
Category
Trigger Abuse
Confidence
90% confidence
Finding

The trigger 'write article' overlaps with a common built-in writing command, creating a shadowing risk where this skill may intercept broad requests unexpectedly. In this skill, that matters because activation can start a multi-phase workflow that reads/writes local state and personal style artifacts.

Content

No source excerpt is available for this finding.

Shadow Command Trigger

Medium
Category
Trigger Abuse
Confidence
87% confidence
Finding

The trigger 'review article' conflicts with a generic built-in review command, increasing the chance of unintended activation. Because this skill includes persistence, style reuse, and specialized workflow behaviors, command shadowing can route users into operations they did not request.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

These additional triggers are ambiguously scoped and cover generic writing, editing, comparison, and management actions. While less severe than the broadest phrases, they still increase unintended activation risk and could route unrelated user requests into a stateful workflow with persistence and file access behaviors.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill requires persistent creation-log updates and reuse of user preferences and article-state across sessions. Storing natural-language summaries, decisions, and preferences can capture sensitive unpublished content or personal information, and later replay or expose it in unintended contexts if not tightly scoped and consented.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The language rule requires that all interaction with the user be conducted in Chinese, which forces a specific language regardless of user preference. Under the stated policy, this is a language/locale constraint that should either be optional or clearly justified as a region-specific limitation.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The language rules say article body text must not use emoji icons. Later, Phase 4 directs the assistant to appropriately use emoji in titles, subheadings, and bullet points, and Phase 5 includes emoji usage as a review criterion, which conflicts with the earlier prohibition.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

Automatically analyzing user articles and learning from post-edit versions creates a content-retention and reuse risk, especially for private drafts or proprietary writing. Users may not expect their submitted text to become part of a reusable style profile, which can lead to unauthorized capture of confidential material and accidental resurfacing later.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The file states that AI will automatically analyze articles in my-articles/ and populate a personal style profile, but it does not present a clear consent prompt, scope limitation, or warning about processing potentially sensitive personal content. In a writing-assistant skill, this creates a real privacy risk because users may not realize their stored writings will be ingested, summarized, and persisted into a derived profile.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger list is broad and includes generic phrases like 'write article', 'article review', and '对比分析', while the file explicitly allows comparison mode to activate 'at any time.' This can cause unintended mode switching during ordinary conversation, making the assistant perform comparison actions on the wrong content or at the wrong workflow phase, which is a real safety and reliability issue in a multi-step writing skill.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The template hard-codes Chinese-language workflow text and required dialogue phrases, which can override the user’s language preference and force the assistant into a non-user-requested interaction mode. In a writing assistant skill, this is a real security/quality boundary issue because embedded instructions in reference files can steer behavior away from explicit user intent, causing prompt-context hijacking and degraded reliability.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The file's instructions and user-facing prompts are fully in Chinese, and there is no indication that the skill is region-specific or that users may opt into another language. Under the stated policy, forcing a specific language without user choice is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
82% confidence
Finding

The entire skill is written as a mandatory Chinese workflow and includes required Chinese-formatted output such as the report date and quoted reader phrases, but it does not offer the user a language choice or explain that the skill is intentionally limited to a Chinese-language/China-market context. Under the policy, forcing a specific language or locale without opt-in is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The checklist hard-codes Chinese-only punctuation and formatting rules for article review without any conditional logic for the user's requested language. In a multilingual writing assistant, this can override user intent, corrupt non-Chinese content, and cause incorrect rewrites or formatting changes during the mandatory review phase.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The entire skill file is written as a Chinese-only procedural guide and does not indicate that language choice is optional or limited to a China-specific workflow. Under the policy, forcing a specific language or locale without user opt-in is a natural-language 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 instructions in this file are presented only in Chinese, with no indication that the user can choose another language. This may violate a language/locale policy if skills should not force a specific language without user opt-in.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

Lines L14-L15 state that the AI will analyze the user's past articles and generate my-style.md, which involves processing personal written content and creating a new file. The document does not include any warning that uploaded articles may contain sensitive personal data or that the tool will create a derived file from that content.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
81% confidence
Finding

整个技能文档以中文固定呈现,并要求用户使用中文触发短语“重新分析我的风格”,未体现可选择其他语言或根据用户偏好切换语言。按规则,若技能在自然语言层面强制特定语言且没有用户 opt-in,属于语言/地区策略风险。

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.