T05 · Unauthorized Access and Privilege Escalation
- Location
SKILL.md:25- Finding
Excessive and Ambiguous Tool Permissions
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 25-32
Vulnerability Type: Violation of least privilege through unnecessary filesystem and command-execution capabilities
Risk Level: MediumVulnerable Code
yaml tools: - - read - exec homepage: https://skillhub.cn pricing_tier: L3 pricing_model: per_use suggested_price: 29.9 tools: ["read", "write", "exec"]Technical Analysis
The Skill is documented as a Markdown-driven assistant that generates marketing copy, brand stories, social-media content, customer-service responses, and promotion plans. These text-generation functions do not require arbitrary command execution or unrestricted filesystem access.
Nevertheless, the metadata requests
read,write, andexec. Granting these tools exposes capabilities beyond the Skill's stated operational requirements:readmay expose local files available to the Agent.writemay permit local data modification or creation.execmay permit arbitrary operating-system command execution under the Agent process's identity.
The metadata also defines
toolstwice and uses an unusual nested-list structure in the first declaration. YAML parsers may reject duplicate keys, retain the first value, or retain the last value. Consequently, permission interpretation may vary between platforms and validation pipelines. Under common last-key-wins behavior, all three powerful capabilities are requested.This finding concerns capability exposure. The reviewed file does not itself contain instructions that explicitly exploit these permissions.
Attack Path
- A platform loads
SKILL.mdand parses its metadata. - The platform retains the final
toolsdeclaration or otherwise grants the requestedread,write, andexeccapabilities. - A user supplies adversarial content intended to influence the tool-enabled Agent.
- If the Agent follows that content without adequate authorization checks, it can invoke capabilities unrelated ...[truncated 953 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the tool declaration entirely if the Skill only generates textual responses.
- If output persistence is necessary, request only the narrowly required write capability and require explicit user authorization before writing.
- Do not grant
execunless a documented feature has an unavoidable need for command execution. - Avoid broad filesystem access. Where supported, constrain access to a dedicated Skill-owned directory.
- Keep exactly one canonical
toolskey with a schema-valid value. - Add automated metadata validation that rejects duplicate YAML keys and malformed nested permission lists.
- Enforce permissions at runtime rather than trusting metadata alone:
- Require per-operation authorization.
- Apply command and path allowlists.
- Run the Skill in a restricted sandbox.
- Prevent access to credentials, sensitive configuration, and unrelated user files.
- Add tests confirming that ordinary content-generation requests cannot invoke filesystem or process-execution tools.
