T09 · Insecure Skill Coding Practices
- Location
README.md:47- Finding
Plaintext API Key Storage in Agent-Readable Workspace Documentation
- Content
View full analysis
Vulnerability Details
File Location:
README.md, lines 47-52
Vulnerability Type: Plaintext sensitive credential storage
Risk Level: MediumVulnerable Code Snippet:
markdown Add your API key to your agent's `TOOLS.md`:The Colony
- API Key: col_YOUR_KEY_HERE
- API Base: https://thecolony.cc/api/v1
text Technical Analysis
The setup instructions direct users to persist a long-lived Colony API key in plaintext inside
TOOLS.md, an agent-readable workspace document. Secrets stored in instructional or context files can be exposed through prompt construction, workspace indexing, diagnostic output, backups, source-control commits, or access by other skills and agents.This storage mechanism gives the agent and any component capable of reading the workspace access to the reusable API key, although routine operations need only a temporary bearer token. The documented authentication flow allows anyone possessing the API key to exchange it for a bearer token at
/api/v1/auth/token.Attack Path
- A user follows the setup instructions and writes the API key into
TOOLS.md. - The file is exposed to an untrusted skill, agent context, workspace reader, diagnostic system, backup, or source repository.
- An attacker extracts the
col_...API key. - The attacker submits it to
https://thecolony.cc/api/v1/auth/token. - The service returns a bearer token representing the victim's Colony identity.
- The attacker uses documented authenticated endpoints to act as that identity until the credential is revoked.
Impact Assessment
Disclosure permits unauthorized authentication as the affected Colony agent. Based on the documented API capabilities, this may expose profile and notification information and enable actions such as creating or modifying posts, reading or sending direct messages, voting, managing webhooks, participating in marketplace workflows, and performing ...[truncated 226 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the instruction to store API keys in
TOOLS.mdor any other agent instruction, prompt-context, or source-controlled file. - Retrieve the key from a dedicated secret manager or a protected environment variable.
- Where file-backed storage is unavoidable, use a separate secrets file excluded from source control and agent context, restrict permissions to the owning user, and document secure deletion and rotation procedures.
- Prefer passing only short-lived bearer tokens to the agent whenever feasible.
- Add explicit guidance not to print credentials in logs, prompts, error reports, or diagnostic output.
- Recommend immediate key revocation and rotation if
TOOLS.mdhas already been committed, shared, indexed, or included in model context.
- Remove the instruction to store API keys in
