T09 · Insecure Skill Coding Practices
- Location
scaffold-templates.md:80- Finding
Generation of Plaintext Development Database Credentials
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This is a disclosed code-generation skill that can modify project files, with no evidence of hidden execution or data exfiltration, but users should review generated database configuration.
Install only if you want a Chinese-language code-generation workflow that can read project docs/source and write substantial repository changes. Use explicit /gen-code commands, review planned file changes before accepting auto or scaffold modes, and replace any generated plaintext database password template with environment variables or local-only secret handling.
scaffold-templates.md:80Generation of Plaintext Development Database Credentials
The file’s natural-language description and all user-facing instructions are presented exclusively in Chinese, with no indication that the user may choose another language or that the skill is intentionally limited to a Chinese-only context. Under the language/locale policy, forcing a specific language without opt-in is a policy concern.
The alias list includes generic activators like “写代码”, “实现功能”, and “生成代码”, which are common user intents that may arise in many unrelated contexts. Because this skill can scaffold projects, generate multiple files, and auto-execute tasks, broad aliases materially raise the chance of unintended invocation and repository-changing behavior.
The skill defines intent-based triggers such as “生成代码”, “写代码”, and “实现.*功能”, which are broad enough to match ordinary conversational requests rather than an explicit invocation of this specific skill. In an agent environment, this increases the risk of accidental activation, causing the assistant to enter a powerful code-generation workflow that can create or modify repository files without the user's clear, scoped intent.
The file title and all operational instructions are written exclusively in Chinese, indicating a fixed language/locale for the skill experience. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation unless the locale limitation is explicitly justified or optional.
The prompt explicitly instructs the agent to automatically update docs/tasks.md as part of normal execution, but it does not require an upfront, explicit user warning or confirmation before modifying repository files. In an agentic environment, silent state-changing writes can surprise users, corrupt task tracking, or be abused when combined with broad task scopes such as --auto or --continue.
The skill authorizes automatic code generation and scaffold initialization that can create or modify many project files, including root directories and framework boilerplate, without a mandatory upfront disclosure of filesystem impact. This is risky because an agent may perform broad writes in the wrong repository or create unwanted structure before the user understands the scope of changes.
The entire skill file is written in Chinese and provides no indication that language choice is optional or limited to a justified region-specific context. Under the language/locale policy, a forced locale without user opt-in can be a natural-language policy violation.
This markdown file describes behavior that writes .scaffold-initialized and generates scaffold files, but it does not include any explicit warning that the skill will modify the user's workspace. For markdown files, changes affecting user data or system state should be disclosed so invocation does not surprise the user.