T09 · Insecure Skill Coding Practices
- Location
SKILL.md:47- Finding
Plaintext Account Credentials Embedded in Skill Documentation
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 47–49, 57–60, and 99–101
Vulnerability Type: Hardcoded credentials and plaintext sensitive data
Risk Level: HighVulnerable Code
markdown ### Login Information - **Website**: https://www.qqthj.com - **Username**: 13327325057 - **Password**: 1234567890The credentials are also repeated in the login procedure:
markdown | 1 | Open website | URL: https://www.qqthj.com | 2-3 seconds | | 2 | Click login | "Login" button in the upper-left corner | 1 second | | 3 | Enter username | 13327325057 | - | | 4 | Enter password | 1234567890 | - | | 5 | Click login | Submit button | 1-2 seconds |They appear again as default parameters:
markdown | Username | 13327325057 | Login account | Mobile number | | Password | 1234567890 | Login password | - |Technical Analysis
SKILL.mdstores an apparent mobile-number account identifier and its reusable password in plaintext. Anyone who can read the project, a copied Skill package, an Agent transcript containing the Skill, or an artifact generated from the repository can recover these credentials without further exploitation.The documented workflow instructs the Agent to submit these values to
https://www.qqthj.com, demonstrating that they are intended as operational credentials rather than placeholders. Repetition across several sections further increases the chance of disclosure through logs, generated prompts, documentation extracts, or repository mirrors.Hardcoded credentials cannot be securely scoped to individual operators, are difficult to rotate without changing the distributed artifact, and prevent reliable attribution when multiple Skill users authenticate through the same account.
Attack Path
- An attacker obtains read access to the Skill package, repository copy, audit artifact, or content derived from
SKILL.md. - The attacker reads the plainte ...[truncated 1229 chars]
- An attacker obtains read access to the Skill package, repository copy, audit artifact, or content derived from
- Remediation
View remediation
Remediation Suggestions
- Remove all usernames, passwords, phone numbers used as account identifiers, and other operational secrets from
SKILL.md. - Immediately rotate the exposed password and revoke active sessions or tokens associated with the account.
- Retrieve credentials at runtime from an approved secret manager or request them through a secure interactive mechanism.
- Pass secret references rather than secret values in configuration; for example, use environment-variable names or secret-manager identifiers.
- Ensure runtime logs, Agent transcripts, exported artifacts, and error messages redact usernames, passwords, session cookies, and authentication tokens.
- Use separate least-privilege accounts for individual users or workloads instead of distributing a shared account.
- Enable multi-factor authentication where the target service supports it.
- Review repository history, mirrors, build artifacts, and prior distributions for the exposed credentials. Purge them where practical, while treating rotation as mandatory because deleting current-file content does not invalidate historical copies.
- Add automated secret scanning to pre-commit and CI workflows to prevent future credential commits.
- Replace the documented values with clearly nonfunctional placeholders, such as
${QQTHJ_USERNAME}and${QQTHJ_PASSWORD}.
- Remove all usernames, passwords, phone numbers used as account identifiers, and other operational secrets from
