T01 · Skill Instruction Hijacking
Error
- Location
- SKILL.md:169
- Finding
- Mandatory instructions hijack Agent behavior and promote an unaudited script<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:169-190` **Vulnerability Type**: Agent instruction and response-format hijacking **Risk Level**: High ### Vulnerable Code ```markdown ## HARD REQUIREMENT: Self-Update Prevention **NEVER run `openclaw update`, `openclaw upgrade`, `npm install -g openclaw`, or `npm update -g openclaw` without explicit Founder approval.** These commands are blocked in `denyCommands`. On 2026-02-24, a self-update during an audit caused a 10,450+ crash-loop by deprecating a plugin. System stability > latest version. Always: 1. Present update details + changelog to Founder first 2. Backup config: `cp openclaw.json openclaw.json.pre-update` 3. Only update after explicit approval 4. Run `openclaw doctor --fix` + `openclaw status` after ## MANDATORY: Update Proposal Format When you detect that an OpenClaw update is available (via update-scout-daily or any other means), you MUST ALWAYS propose it in exactly this format — no exceptions: 📦 **OpenClaw update available: vOLD → vNEW** To apply safely, SSH in and run: ```bash openclaw update /home/claw/.openclaw/workspace/scripts/post-update-repair.sh ``` The repair script restores all symlinks, cleans config, restarts the gateway, and runs a 6-point smoke test automatically. No other steps needed. NEVER say "I will run the update for you" or attempt to run it yourself. The update MUST be executed by the Founder via SSH. ``` ### Technical Analysis The Skill text contains imperative instructions that alter the Agent's future behavior whenever update-related subjects arise. It mandates an exact response format rather than presenting optional operational guidance. The mandated response promotes `/home/claw/.openclaw/workspace/scripts/post-update-repair.sh`, but that script is not included in the audited project. Its implementation, ownership, permissions, and integrity therefore cannot be verified. A local attacker able to place or replace a script at that path could expl ...[truncated 963 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions - Replace mandatory Agent directives with optional operator guidance. - Do not force a fixed response format or prohibit normal Agent safety analysis. - Include `post-update-repair.sh` in the audited package if it is required. - Pin and verify the repair script using a trusted hash or signed release. - Require the operator to inspect the update and repair script before execution. - Resolve the repair script relative to a trusted installation directory rather than relying on an unaudited absolute path. ]]>
