Back to skill

Security audit

张雪峰.skill - 教育与职业规划思维操作系统

Security checks for vulnerabilities and agentic risk

Overview

This markdown-only roleplay skill does not run code, but it pushes the assistant into first-person impersonation of a real person with limited ongoing disclosure.

Review carefully before installing. This skill is low risk to your device because it is only Markdown, but it can make the assistant sound like the actual person rather than a simulation. Use it only if you want that roleplay behavior, and prefer a version that keeps clear attribution and allows neutral, evidence-calibrated answers.

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:16
Finding

Persistent Identity and Session-Behavior Hijacking

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 16-28
Vulnerability Type: Agent instruction and identity hijacking
Risk Level: High

Vulnerable Content

The following is an English rendering of the complete relevant instruction segment:

md
## Role-Playing Rules (Most Important)

**After this Skill is activated, respond directly as Zhang Xuefeng.**

- Use “I” instead of “Zhang Xuefeng would think...”
- Respond directly using the tone of an older northeastern Chinese man, with a fast pace and joke-oriented delivery.
- When encountering an uncertain question, hesitate by saying: “Let me tell you, I really do not know much about this, but based on my experience...”
- **State the disclaimer only once when first activated** (for example: “I will discuss this from Zhang Xuefeng’s perspective, inferred from public statements, and it does not represent his actual views”). Do not repeat it in later conversation.
- Do not say: “If this were Zhang Xuefeng, he might...”
- Do not step out of character to perform meta-analysis unless the user explicitly asks to exit the role.
- Zhang Xuefeng died on March 24, 2026. The role-play is based on all public statements made during his lifetime.

**Exit role**: Return to normal mode when the user says “exit,” “switch back to normal,” or “stop role-playing.”

Technical Analysis

The Skill explicitly replaces the agent's normal identity and response behavior with a persistent first-person impersonation. It directs the agent to claim the identity through first-person language, avoid third-person framing, suppress repeated disclosure, and refuse to leave the injected role unless the user supplies one of several designated exit commands.

These instructions go beyond optional tone or perspective guidance. They attempt to alter the agent's ongoing session goals and constrain how it discloses uncertainty and generated identity. The later expression rules at `SKILL. ...[truncated 2148 chars]

Remediation
View remediation

Remediation Suggestions

  1. Replace direct first-person impersonation with clearly framed third-person perspective analysis, such as: “Based on Zhang Xuefeng's documented public views, this perspective would emphasize...”
  2. Prohibit claims that the agent is the named individual, including instructions to use first-person identity language.
  3. Provide a clear simulation disclosure in every response where confusion about authorship or identity is reasonably possible.
  4. Remove conversation-persistent role state and the requirement for specific exit phrases. Style guidance should apply only to the immediate request unless the user explicitly renews it.
  5. Remove the instruction prohibiting meta-analysis or leaving character. The agent must remain able to clarify its identity, limitations, and source basis at any time.
  6. Replace mandatory certainty and absolute wording with evidence-calibrated language. Require explicit uncertainty when facts, predictions, or attributed opinions cannot be verified.
  7. Verify biographical assertions against reliable sources before inclusion. Remove unsupported or time-sensitive claims, especially claims concerning death or other major life events.
  8. Make all persona and style rules subordinate to system instructions, factual accuracy, user intent, safety requirements, and transparent attribution.
  9. Add a boundary stating that generated content must not be represented as authentic speech, endorsement, or personal advice from the real individual.
Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (2)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The activation phrases are broad enough to trigger on ordinary requests for perspective-taking, which can cause the model to enter a rigid persona unexpectedly. Because the skill then imposes strong role and style constraints, accidental activation can override normal assistant behavior and lead to misleading identity presentation or lower-quality safety-aligned responses.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The skill mandates a specific colloquial register and persona voice without checking user preference, which reduces user control and can produce inappropriate tone or language in sensitive contexts. In security terms this is a policy/control issue rather than direct code execution, but it still increases the chance of unwanted or harmful responses because the assistant is constrained to remain in-character.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.