T01 · Skill Instruction Hijacking
- Location
SKILL.md:11- Finding
Mutable External Instructions Are Declared to Have Highest Priority
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill matches its Gate sub-account purpose, but it relies on a changeable external rules file for a financial account workflow, so it needs review before use.
Review this before installing. The local workflow is narrow and requires confirmation for create, lock, and unlock actions, but only use it if you trust the external Gate MCP setup and verify or vendor the referenced runtime rules. Avoid exposing API keys, and do not let raw API errors be shown directly to end users.
SKILL.md:11Mutable External Instructions Are Declared to Have Highest Priority
references/mcp.md:73Verbatim API Error Disclosure Conflicts with Sensitive-Trace Handling Rules
Referenced artifact was not completely inspected
- `SKILL.md` keeps intent routing and permission boundaries.
Skill grants unrestricted tool access without appropriate constraints. An agent with unfettered tool access can perform arbitrary actions including file modification, network requests, and code execution.
## General Rules
⚠️ STOP — You MUST read and strictly follow the shared runtime rules before proceeding.
Do NOT select or call any tool until all rules are read. These rules have the highest priority.
→ Read [gate-runtime-rules.md](https://github.com/gate/gate-skills/blob/master/skills/gate-runtime-rules.md)
- **Only call MCP tools explicitly listed in this skill.** Tools not documented here must NOT be called, even if they
exist in the MCP server.
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
## Safety Rules
- **Write operations** (`cex_sa_create_sa`, `cex_sa_lock_sa`, `cex_sa_unlock_sa`): Always require explicit user confirmation before execution. Never auto-execute.
- **UID validation**: Before lock/unlock, always verify the sub-account exists and belongs to the current main account.
- **State check**: Before lock/unlock, check current state to avoid redundant operations.
- **No sensitive data exposure**: Never expose API keys, internal endpoint URLs, or raw error traces.
The create-sub-account trigger examples are broad enough to match ordinary conversational requests such as 'Help me set up a new sub-account', which can cause the skill to activate in ambiguous contexts and initiate an account-management flow with side effects. In a financial exchange setting, accidental routing into a creation workflow is more dangerous because it can lead to unintended account provisioning unless the agent applies strict intent disambiguation and confirmation before any tool call.