T09 · Insecure Skill Coding Practices
- Location
SKILL.md:54- Finding
Secret-scanning commands expose complete credential values in command output
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This code-quality skill is mostly purpose-aligned, but it includes unsafe local commands that can expose secrets and overwrite a repository pre-commit hook.
Review this skill carefully before installing. Use it only on repositories where local command execution is acceptable, avoid running the documented secret scans unless output is redacted, and do not apply the pre-commit hook snippet without rewriting it to preserve existing hooks and validate the command logic.
SKILL.md:54Secret-scanning commands expose complete credential values in command output
SKILL.md:200Malformed pre-commit installation overwrites an existing hook and disrupts repository commits
The trigger description is extremely broad, covering general code generation, debugging, testing, and deployment contexts rather than a narrowly scoped quality check. Overbroad activation increases the chance that the skill is invoked in situations where its exec-based behavior is unnecessary, exposing repositories and local environments to avoidable command execution.
The description explicitly states '支持中文交互', presenting the skill as Chinese-language oriented without offering language selection or opt-in. Under the policy criteria, forcing or implicitly constraining language/locale without user choice is a natural-language policy concern unless justified as region-specific.
The example invocation is generic enough to match many normal development requests and does not limit operation scope or clarify whether commands will be run. In an agent setting, vague triggers can cause unintended skill selection and execution against the current project without sufficiently informed user intent.
The manifest frames the skill as a checking/reporting tool, but the body instructs the agent to generate fixes and create repository files such as configuration and hook scripts. That mismatch can lead to unintended repository modification by a user who expected read-only analysis, increasing the risk of persistence, workflow tampering, or accidental code changes.
The skill states that the agent can automatically generate repair patches after analysis, but it does not present a clear warning that this may alter repository files. In a tool-enabled agent, undocumented modification capability is dangerous because users may expect a report-only workflow while the skill transitions into code changes with security or operational consequences.
The document says checks run locally and no extra API key is needed, yet elsewhere it references API integration and network-dependent operation. Contradictory security statements undermine informed consent and make it difficult for users to assess where code or metadata may flow, which is a trust and policy risk in agent environments.
The skill is presented as a local code-quality checker, but the documentation expands its behavior to API integration and network-dependent operation. This creates scope ambiguity that can cause an agent or user to permit broader actions than expected, including outbound communication or handling external data paths that were not part of the declared trust model.
The skill advertises file processing including write operations, but there is no user-facing warning about repository modification risk or persistence changes. In context, this is more dangerous because the skill also has exec access, making it easier to combine analysis with silent creation or alteration of local project files.
Claiming external API integration for a simple local code-quality skill broadens the apparent capability surface without justification. Even if no API calls are implemented here, the claim normalizes unnecessary external connectivity and may cause downstream agents or users to accept riskier behavior than the skill's purpose requires.
The highlighted core-functionality line repeats that the skill provides '中文交互', again implying a fixed language mode rather than a user-selectable preference. Because no alternative language path is documented nearby, this may violate the language/locale policy guidance.
No suspicious patterns detected.