T05 · Unauthorized Access and Privilege Escalation
- Location
SKILL.md:28- Finding
File Access and Migration Exceed the Declared Storage Boundary
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:28-32,SKILL.md:50, andSKILL.md:185-187
Vulnerability Type: Undeclared access to files outside the stated least-privilege boundary
Risk Level: LowVulnerable Code
markdown User preferences and memory live in `~/Clawic/data/spain/` (see `setup.md` on first use, `memory-template.md` for the file format). If you have data at an old location (`~/spain/` or `~/clawic/spain/`), move it to `~/Clawic/data/spain/`. ## Configuration User-dependent variables. Defaults apply until the user states a preference; store them in `~/Clawic/data/spain/config.yaml`. Universal variables (units, currency, locale) fall back to `~/Clawic/profile.yaml` when not set here, then to the table default.markdown - **units / locale** — temperature scale (°C vs °F) and home currency for € conversions — affects how temperatures and prices are quoted; falls back to `~/Clawic/profile.yaml`, then °C and € shown as-ismarkdown ## Security & Privacy **Data that stays local:** Trip preferences in ~/Clawic/data/spain/ **This skill does NOT:** Access files outside ~/Clawic/data/spain/ or make network requests.Technical Analysis
The skill explicitly claims that it does not access files outside
~/Clawic/data/spain/, but other instructions require or encourage three operations beyond that boundary:- Reading
~/Clawic/profile.yamlto obtain units, currency, and locale. - Inspecting legacy locations at
~/spain/and~/clawic/spain/. - Moving data from those legacy locations into the current skill directory.
Reading the shared profile and accessing legacy directories therefore violate the documented least-privilege boundary. The migration instruction is particularly significant because moving a directory changes the user's filesystem state and can remove data from its original location. No explicit confirmation, backup, collision handling, p ...[truncated 1715 chars]
- Reading
- Remediation
View remediation
Remediation Suggestions
- Update the security statement to list every path the skill may access, including
~/Clawic/profile.yaml,~/spain/, and~/clawic/spain/. - Request explicit user confirmation before inspecting or migrating either legacy directory.
- Use a copy-and-verify migration rather than an immediate move:
- Validate that the source is the expected directory and not an unsafe symbolic link.
- Check whether the destination already exists.
- Refuse silent overwrites or merges.
- Copy the data and verify its integrity.
- Preserve the source until the user confirms successful migration.
- Provide a rollback procedure.
- Read only the required profile keys—units, currency, and locale—instead of exposing the entire profile to the skill context.
- If strict directory confinement is intended, remove the profile fallback and legacy migration instructions entirely.
- Keep the documented privacy boundary synchronized with configuration metadata and actual runtime instructions.
- Update the security statement to list every path the skill may access, including
