T01 · Skill Instruction Hijacking
- Location
SKILL.md:11- Finding
Mandatory Delegation to an Unbundled and Unaudited External Skill
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 11-17
Vulnerability Type: Untrusted external instruction delegation
Risk Level: HighRelevant instruction snippet translated into English:
text When this Skill is triggered, ui-ux-max-pro must be executed first: 1. Read and comply with the SKILL.md of ui-ux-max-pro. 2. First complete the UI/UX analysis, layout assessment, visual consistency inspection, and usability evaluation required by ui-ux-max-pro. 3. Use the conclusions from ui-ux-max-pro as design constraints for the subsequent conversion. 4. Then continue with the index.vue to Custom.vue conversion workflow. 5. If ui-ux-max-pro cannot be found, inform the user and pause.Technical Analysis
The Skill mandates loading and obeying another Skill named
ui-ux-max-pro, but that dependency is not included in the audited project. Consequently, its identity, integrity, version, and instruction contents cannot be verified as part of this audit.This creates an instruction-trust boundary: loading the audited Skill automatically transfers part of the agent's control flow to mutable external instructions. An attacker who can create, replace, or influence the externally resolved Skill could introduce directives unrelated to UI analysis, including broader file access, command execution, disclosure of project content, or attempts to override the original task.
The requirement to “read and comply” does not constrain which external directives may be inherited and does not state that higher-priority instructions, user authorization boundaries, or security restrictions must remain authoritative.
Attack Path
- An attacker places or replaces a Skill named
ui-ux-max-proin a location searched by the agent. - The user invokes the audited
lanhu-code-2-el-vueSkill. - The audited Skill requires the agent to resolve and read the external Skill's
SKILL.md. - The agent follow ...[truncated 895 chars]
- An attacker places or replaces a Skill named
- Remediation
View remediation
Remediation Suggestions
- Bundle the required dependency with the Skill package so both instruction sets can be reviewed together.
- Pin the dependency to an immutable version and verify a cryptographic digest before loading it.
- Replace unrestricted “read and comply” language with a narrow interface specifying exactly which UI-analysis output may be consumed.
- Explicitly state that delegated instructions cannot override system instructions, user authorization, security controls, or the current task scope.
- Reject ambiguous Skill resolution and require an exact trusted path or signed registry identity.
- Present the dependency and requested delegation to the user for approval before loading it.
- If the dependency is missing or fails integrity validation, stop without searching arbitrary project or user-controlled directories for substitutes.
