T09 · Insecure Skill Coding Practices
- Location
SKILL.md:306- Finding
Plaintext API Key Disclosure in Troubleshooting Command
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 306
Vulnerability Type: Plaintext sensitive-data exposure
Risk Level: MediumVulnerable Code:
bash echo $MATON_API_KEYTechnical Analysis
The troubleshooting instructions recommend printing the complete
MATON_API_KEYvalue to standard output. This value is used as a bearer credential in authorization headers throughout the Skill.Revealing a bearer credential in terminal output creates an avoidable disclosure risk. Output may be retained in AI-agent transcripts, CI/CD logs, shell session recordings, screen captures, support tickets, or centralized logging systems. Bearer credentials generally do not require additional proof of identity, so possession of the exposed value may be sufficient for unauthorized API access.
Attack Path
- A user or automated agent follows the documented API-key troubleshooting procedure.
- The command prints the complete
MATON_API_KEYvalue. - The output is captured in a transcript, build log, terminal recording, diagnostic bundle, or support conversation.
- An unauthorized party with access to that retained output extracts the credential.
- The party supplies the key as an
Authorization: Bearercredential to Maton endpoints. - The party can attempt operations available to the compromised account and its connected Google Search Console resources until the key is revoked or expires.
Impact Assessment
Successful exploitation discloses the privileges associated with the compromised Maton API key. Based on the documented functionality, this may permit access to connection information and Google Search Console data, including sites and search analytics. It may also permit state-changing actions exposed by the documented workflow, such as creating or deleting connections and submitting or deleting sitemaps.
The precise scope depends on the permissions, active connections, account controls, an ...[truncated 141 chars]
- Remediation
View remediation
Remediation Suggestions
Replace the plaintext output with a presence check that never reveals the credential:
bash if [ -n "${MATON_API_KEY:-}" ]; then echo "MATON_API_KEY is set" else echo "MATON_API_KEY is not set" fiApply the following additional controls:
- Do not print complete API keys in troubleshooting guides, logs, error messages, or agent responses.
- If credential identification is operationally necessary, display only a short masked suffix.
- Ensure CI/CD systems and agent platforms apply secret masking to known credential variables.
- Redact authorization headers and environment-variable values from diagnostic output.
- Rotate any API key that has already been printed into a retained or shared transcript.
- Use least-privilege credentials and provide a documented revocation procedure.
