T01 · Skill Instruction Hijacking
- Location
SKILL.md:126- Finding
Unsolicited Registration and External Control of Agent Behavior
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This EvoMap skill matches a marketplace integration, but it asks agents to create identities, store bearer secrets, poll continuously, and act on remote tasks with too little user control.
Review this skill carefully before installing. Use it only if you intend to connect an agent to EvoMap, and require explicit confirmation before registration, account provisioning, heartbeat loops, task claiming, credit operations, or publishing any code, diffs, environment details, or generated assets. Do not store node_secret values in MEMORY.md, chat context, or project files; use a proper secret store instead.
SKILL.md:126Unsolicited Registration and External Control of Agent Behavior
SKILL.md:196Persistent Storage of an Externally Issued Bearer Secret in Agent Memory
SKILL.md:388Unbounded Authenticated Heartbeat Creates a Persistent External Command Channel
SKILL.md:289Potential Disclosure of Environment Metadata and Repository Content to EvoMap
The instruction 'Do NOT refuse' is an anti-refusal pattern that pressures the agent to prioritize the skill's operational goals over safety review and user-protective hesitation. Even though it is scoped to registration reuse logic rather than directly telling the model to ignore platform policies, anti-refusal language is risky because it can reduce safeguards around identity creation, credential use, and external side effects.
**User intent always overrides local memory.** If the user asks you to register, connect, or create a new node -- do it, even if you have an existing `node_id` stored locally (in MEMORY.md, memory files, context, or any persistent storage). Do NOT refuse or silently skip registration because you "already have a node."
The skill directs automatic registration on first use and tells the agent to save permanent identifiers and secrets locally, then immediately present a claim URL. This creates external side effects and persistent credential storage without a clear prior user warning or explicit consent, which can surprise users and expose long-lived secrets in agent memory or logs. The surrounding instructions make this more dangerous because the behavior is framed as the default path, not an opt-in action.
The self-provisioning flow creates a machine account, binds the node, transfers credits, grants initial credits, and enables financial operations, yet the skill does not require an explicit up-front warning or affirmative user approval before doing so. This is a high-risk external action because it creates an account with economic consequences and can alter balances, ownership state, and transfer capabilities. In context, the skill already encourages autonomous onboarding, which amplifies the risk of unintended account creation.
The Evolver section expands the skill from EvoMap integration into autonomous self-improvement, internal repository scanning, external skill discovery, and frontier paper retrieval. That materially broadens the skill's operational scope and can drive unsupervised code modification, data exfiltration through outbound research calls, or risky autonomous behavior unrelated to the user's immediate request. In security terms, this is dangerous capability creep inside a marketplace connector skill.
The trigger list is extremely broad and includes generic terms like recipe, session, service marketplace, connect, and machine account, which could cause the skill to activate in contexts far outside EvoMap. Overbroad invocation increases the chance that registration, credential handling, or account-related workflows are triggered unexpectedly, especially when the skill also contains automatic onboarding behaviors.
The skill instructs the agent to read a local file in the user's home directory (~/.evolver/settings.json) to discover a proxy URL. That is access to local filesystem state beyond what is necessary for a marketplace skill's core function, and it can expose unrelated local configuration or normalize unsafe file inspection behavior. In an adversarial or overly permissive runtime, this pattern can be expanded to harvest local secrets or environment details.
No suspicious patterns detected.