T05 · Unauthorized Access and Privilege Escalation
- Location
SKILL.md:226- Finding
Generated Skills Can Escape the Declared Storage Boundary
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:226-238,SKILL.md:294-298, andSKILL.md:476
Vulnerability Type: Storage-boundary violation and activation of generated Agent instructions
Risk Level: MediumVulnerable Code Snippets
The synthesis workflow permits generated Skills to be installed or published:
markdown 6. After user confirmation, the draft can be: - Saved as a local Skill by writing it to the `skills/` directory - Published to ClawHub using `clawhub skill publish`The documented security constraints contradict that workflow:
markdown 2. Never automatically modify system files, configuration files, or files belonging to other Skills. 6. Only write files under the `.learnings/` directory and never cross that boundary.The example interaction also offers installation outside
.learnings/:markdown 1. Save to `.learnings/skill-drafts/` 2. Save and install to the `skills/` directory 3. SkipThese snippets are faithful English translations of the corresponding instructions at the cited locations.
Technical Analysis
The Skill presents
.learnings/as its exclusive write boundary, but its synthesis workflow explicitly permits writing generated content intoskills/. It also permits publishing generated content through the ClawHub command-line tool.Installing a generated SKILL.md is materially different from storing an inert learning record. Content placed in
skills/can become active Agent instructions and may influence later Agent behavior. Publishing also creates an external distribution path that is inconsistent with the claims that data remains local and that the Skill only writes beneath.learnings/.Explicit user confirmation mitigates accidental activation, but it does not preserve the stated least-privilege boundary. Users may approve installation based on the Skill's repeated assurances that it cannot write outside `.learnin ...[truncated 1273 chars]
- Remediation
View remediation
Remediation Suggestions
- Restrict all generated artifacts to
.learnings/skill-drafts/. - Remove direct installation into
skills/and direct publication from the Skill workflow. - If installation remains supported, update every security guarantee to identify
skills/as a separate privileged destination. - Require an independent confirmation specifically for crossing the
.learnings/boundary; prior confirmation to generate or save a draft must not count. - Display the complete generated file and an exact destination path before installation.
- Require a security review that checks generated instructions for external communication, command execution, persistence, secret access, and unauthorized file access.
- For publication, show exactly what data will leave the local environment and require separate confirmation after sanitization and review.
- Prefer a manual export workflow in which the user independently copies a reviewed draft into the Skill directory.
- Restrict all generated artifacts to
