T09 · Insecure Skill Coding Practices
- Location
references/gx_websites.json:136- Finding
Plaintext Credentials and Personal Data Committed to the Skill
- Content
View full analysis
Vulnerability Details
File Location:
references/gx_websites.json:136-241; duplicated inreferences/config-guide.md:202-301; partial account and credential disclosure inSKILL.md:84-102
Vulnerability Type: Hardcoded secrets and plaintext sensitive information
Risk Level: HighRepresentative exact excerpts from
references/gx_websites.json:json "account": "WN141588", "password": "wndl141588",json "account": "310150717", "password": "Wndl717400!@!",json "account": "WNDL822", "password": "Weineng13579!", "phone": "19968289744",The affected records also contain additional platform passwords, sub-account credentials, telephone numbers, email addresses, contact identities, a business-network identifier, and an electronic-seal PIN. Many of these values are duplicated verbatim in
references/config-guide.md.Technical Analysis
Authentication secrets are embedded directly in repository-controlled JSON and Markdown files. Any person, automation system, package registry, backup service, or build process with read access to the Skill can recover the credentials without decrypting or resolving an external secret reference.
Duplicating credentials across configuration and documentation expands the disclosure surface and makes secure rotation more difficult. Removing the values only from the latest revision may also be insufficient because source-control history, cached Skill packages, backups, and previously distributed archives can retain them.
The executable script currently does not automatically submit these passwords. Nevertheless, the exposed records pair account identifiers with target platform URLs, making them directly actionable outside the script. The
--auth-onlypath atscripts/gx_bidding_monitor.py:272-278additionally prints account identifiers, although it does not print passwords.Credential validity and successful authentication were not tested. Cons ...[truncated 1843 chars]
- Remediation
View remediation
Remediation Suggestions
- Immediately rotate every password, sub-account password, and electronic-seal PIN contained in the affected files.
- Revoke existing sessions, recovery tokens, and remembered devices where supported.
- Review authentication, account-change, bidding, submission, and electronic-seal audit logs for unauthorized activity.
- Remove credentials and unnecessary personal data from
references/gx_websites.json,references/config-guide.md, andSKILL.md. - Purge the values from source-control history, release archives, package caches, build artifacts, and backups where operationally possible. Treat all previously published values as compromised even after deletion.
- Store secrets in an approved secret manager, operating-system credential store, or protected environment variables. Configuration files should contain only secret identifiers, such as
secret_ref, rather than secret values. - Grant the runtime access only to the specific secrets it requires and apply restrictive filesystem permissions to generated or local configuration.
- Mask account identifiers in
--auth-onlyoutput unless full display is explicitly required and the output channel is trusted. - Add automated secret scanning to pre-commit hooks and continuous integration, and block releases when credentials or high-risk personal data are detected.
- Enforce unique passwords, multi-factor authentication, login alerts, and least-privilege platform roles to limit the effect of future disclosure.
