T01 · Skill Instruction Hijacking
Error
- Location
- SKILL.md:21
- Finding
- Mutable External Vault Instructions Can Override Audited Skill Rules## Vulnerability Details **File Location**: `SKILL.md:21-39, 52-58` **Vulnerability Type**: `T01: Skill Instruction Hijacking` **Risk Level**: High ### Complete Vulnerable Snippet The following is a faithful English rendering of the relevant source instructions: ```markdown First read `zmm/references/Family-Constitution.md`. If it cannot be read, state that the constitution cannot be read and stop. Then read `zmm/references/Interaction-Specification.md`. The built-in criteria are in `references/Rule-Cards.md`. When corresponding rule files exist in `{vault}`, the vault takes precedence and the rule cards are only the baseline. Then read these seven items in order: 1. `config.paths.format` 2. The latest retrospective in `config.paths.retro` and `_draft/*-requirements.md` 3. `{vault}/00-Rules-and-Indexes/Spoken-Script-Generation-Standards.md` 4. `config.paths.voice` 5. `config.paths.feedback_rules` 6. `config.paths.published_index` 7. Selected sections of `{vault}/docs/SOT-Commercialization.md` `{vault}/00-Rules-and-Indexes/Copywriting-Framework-Main-Entry.md` is the sole navigation for how a piece of copy is written. Default to executing it. The user does not need to say which framework to use. Any user feedback is automatically written back according to section 5. ``` ### Technical Analysis The packaged skill delegates authoritative control to numerous mutable files outside the audited project. It explicitly states that rules found in the external vault take precedence over the bundled rule cards and identifies an external document as the sole workflow authority. This creates a trust-boundary violation. The package itself may be benign when reviewed, but its effective instructions can change whenever the vault or configured paths change. Content loaded from those paths is treated as executable agent instruction rather than untrusted reference data. No integrity check, schema validation, signature ...[truncated 2191 chars]
- Remediation
- ## Remediation Suggestions 1. Remove the rule that external vault content automatically overrides packaged security-critical instructions. 2. Treat all vault and configuration-derived text as untrusted reference data, not executable agent policy. 3. Package and version all mandatory workflow and safety rules with the skill. 4. Allowlist external paths and resolve canonical paths before access to prevent redirection outside approved directories. 5. Validate loaded files against a strict schema that permits data and writing preferences but rejects tool instructions, permission changes, persistence directives, and safety overrides. 6. Require explicit user confirmation before applying a newly discovered or modified external rule. 7. Display the source path, version, checksum, precedence, and proposed behavioral effect before activation. 8. Use signed manifests or pinned cryptographic hashes for external policy files when external storage is unavoidable. 9. Enforce a fixed precedence model in which system, platform, and packaged safety requirements cannot be overridden by vault content. 10. Record an audit log of every external rule loaded and every behavior it changes.
