T01 · Skill Instruction Hijacking
- Location
SKILL.md:279- Finding
Unscoped Skill Instructions Claim Highest Priority and Override Normal Session Behavior
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is a coherent HR diagnostic assistant, but it can automatically store sensitive HR case details and use external tools without enough user-facing control.
Install only if you are comfortable with a Chinese-language HR diagnostic workflow that uses local HR knowledge-base files and may persist case details. Before using it with real employee, compensation, investigation, or legal-risk data, configure a dedicated KB path, avoid --force unless you intend overwrites, require explicit approval for case/taxonomy writes and external searches, redact PII, and review or fix the citation checker.
SKILL.md:279Unscoped Skill Instructions Claim Highest Priority and Override Normal Session Behavior
SKILL.md:917Attacker-Controlled Diagnostic Content Is Persisted and Reused as Agent Memory
scripts/citation_checker.py:59Citation Verification Fails Open and Accepts Ambiguous Substring Matches
scripts/citation_checker.py:136Unescaped Citation Data Allows XML Output Injection
The skill claims to perform HR analysis, but it also describes knowledge-base initialization, template generation, and file creation/overwrite behavior including forceful writes. That is materially different from analysis-only behavior and can lead to unauthorized persistence, accidental overwrite, or silent modification of local HR documents.
The skill claims to perform HR analysis, but it also describes knowledge-base initialization, template generation, and file creation/overwrite behavior including forceful writes. That is materially different from analysis-only behavior and can lead to unauthorized persistence, accidental overwrite, or silent modification of local HR documents.
The skill states that analyses may be automatically written to case memory and failure taxonomy, but it does not provide a clear user-facing warning or consent step. In HR contexts this is particularly dangerous because the stored content may include employee performance, compensation, disputes, or organizational-risk details that are sensitive and regulated.
The skill instructs use of web search and external skills during analysis without a clear warning that user-provided HR data may be transmitted to external services. Because HR investigations often involve salary, performance, conduct, and labor matters, sending raw context to outside tools can cause confidentiality breaches and compliance issues.
The skill describes file read/write capabilities and local knowledge-base initialization behavior, but it does not declare any explicit tool scope or permission boundary. That creates an authorization gap: a caller or hosting runtime may not realize the skill can access or persist data on disk, increasing the chance of unintended file access or modification.
The manifest description says the skill is '不适用于简单问答、政策查询、模板生成、邮件起草等日常 HR 事务', implying those uses are outside the skill's scope. However, the same file later instructs the agent to directly answer policy queries, generate JDs/templates, and perform simple operations in normal mode, which broadens behavior beyond the stated purpose.
The implicit trigger table includes generic terms like "为什么", "最近", "感觉", and broad patterns such as "干部怎么培养", which overlap with ordinary user queries rather than clearly signaling a request for this specialized workflow. Although the skill asks for confirmation before entering the mode, the activation criteria themselves are still ambiguous and insufficiently constrained, increasing the chance of unnecessary invocation prompts.
The core description and overview consistently frame the skill as a deep organizational diagnosis engine for complex HR analysis. In contrast, the normal-mode routing table explicitly allows direct template generation and simple operational requests, including '帮我写个JD', which is materially different from diagnostic analysis.
Automatic case-memory writing introduces persistent storage of user analysis content, organizational context, and outcomes beyond the immediate response. In an HR setting, that can capture highly sensitive personnel, culture, or labor-risk data and retain it without clear minimization, consent, or retention controls.
This markdown file presents all skill framework descriptions in Chinese and does not indicate that users can choose another language. The policy explicitly calls for flagging language or locale constraints when a skill forces a specific language without user opt-in or justification.
The document mandates operational behavior in Chinese and does not indicate that users may choose another language or that the locale restriction is intentional and justified. Under the policy, forcing a specific language without user opt-in is a natural-language policy concern.
The spec instructs the evaluator to append records to FAILURE_TAXONOMY.md, which is a persistent side effect outside a narrowly scoped quality-checking role. In an agent setting, this can cause unauthorized repository modification, pollute project state, and create a pathway for prompt-driven file writes without explicit user approval.
The markdown directs appending failure records to a repository file without any notice that the skill may modify files. This violates user expectation and safe agent design, because a read/evaluate task can silently become a write operation affecting versioned artifacts or downstream automation.
The title and introductory text specify output examples in Chinese and present them as the standard for LLM responses. This enforces a specific language/locale in natural-language guidance without any user opt-in or explanation that the skill is intentionally region-specific.
SQP-3 applies to all file types and covers language or locale policy violations. This markdown file presents all instructions in Chinese and does not provide any opt-in, alternative language, or explanation that the skill is intended only for a Chinese-language context.
The skill description and all instructional content are written in Chinese, and there is no natural-language indication that users may choose another language or locale. Under the policy, forcing a specific language without opt-in is a reportable locale-policy issue unless the regional limitation is explicitly justified.
The manifest description and section headings are written primarily in Chinese, and the file presents the skill workflow and outputs in Chinese without indicating that users may choose another language. This can violate a language/locale policy when the skill implicitly enforces one language by default without opt-in or justification.
The description, headings, instructions, and examples are all presented in Chinese, and the file does not indicate that use of Chinese is optional or limited to a region-specific context. This can violate language/locale policy when a skill effectively forces one language without user opt-in.
The description, headings, instructions, and required output conventions are entirely in Chinese, and the guardrails state mandatory execution requirements without any indication that users may choose another language. Under the policy, forcing a specific language without opt-in is a natural-language policy violation unless the locale constraint is explicitly justified, which is not present here.
The manifest description and the full instructional content are written entirely in Chinese, and the file does not indicate that the skill is region-specific or provide any language/locale opt-in. This can violate language-choice policy by implicitly requiring a specific language for use.
This markdown skill file uses Chinese for the manifest description and instructional content, which effectively forces a specific language for users. Under the policy, language constraints should either be optional or explicitly justified as region-specific.
The description, headings, instructions, template fields, and examples are all written to direct operation in Chinese, and there is no indication that users may choose another language. This creates a natural-language locale constraint that is not opt-in and is not justified as a region-specific or compliance-bound skill.
The architecture document explicitly routes '工具/模板任务' and other non-diagnostic requests to direct execution, while the skill metadata states the skill is intended only for deep HR diagnosis and is not suitable for routine tasks like template generation or drafting. This creates a scope mismatch that can cause the agent to handle requests outside its declared safety and operational boundaries, increasing the chance of misuse, poor controls, or accidental invocation in unsupported contexts.
The document title and all required template content are written as mandatory Chinese output, and nowhere does the specification indicate that another language may be used based on user preference. This creates a natural-language locale constraint without opt-in, which matches the policy category for forced language behavior.
The template explicitly includes a <tot_paths_raw> field for '完整推理日志' inside the generated XML while also claiming it is '仅存储,不传递'. In practice, scaffolds like this are often followed literally by agents, so placing raw reasoning in the output structure materially increases the chance of chain-of-thought or internal analysis leakage to users, logs, downstream tools, or other agents.
No suspicious patterns detected.