T09 · Insecure Skill Coding Practices
- Location
INSTALLATION_GUIDE.md:20- Finding
Credential-Shaped MILKEE API Tokens and Company Identifiers Embedded in Documentation
- Content
View full analysis
Vulnerability Details
File Location:
INSTALLATION_GUIDE.md:20-22,INSTALLATION_GUIDE.md:79-86,references/configuration.md:18-21,references/configuration.md:57-65, andreferences/api-endpoints.md:13-16
Vulnerability Type: Hardcoded credential-like secrets in distributed documentation
Risk Level: MediumVulnerable Code Snippets
INSTALLATION_GUIDE.md:20-22markdown 4. Combine as: `USER_ID|API_KEY` **Example**: `28014|MqF8I04nbuFd4aT4A5Y6hBqaDDd9T2sjVT5Xu2ZAc799c9d2`INSTALLATION_GUIDE.md:79-86json { "skills": { "milkee": { "env": { "MILKEE_API_TOKEN": "28014|MqF8I04nbuFd4aT4A5Y6hBqaDDd9T2sjVT5Xu2ZAc799c9d2", "MILKEE_COMPANY_ID": "4086" }references/configuration.md:18-21markdown **Example**:28014|MqF8I04nbuFd4aT5Xu2ZAc799c9d2
text references/configuration.md:57-65bash Test configuration: ```bash export MILKEE_API_TOKEN="28014|MqF8I04nbuFd4aT4A5Y6hBqaDDd9T2sjVT5Xu2ZAc799c9d2" export MILKEE_COMPANY_ID="4186" python3 scripts/milkee.py list_projectstext `references/api-endpoints.md:13-16` ```markdown Example:Authorization: Bearer 28014|MqF8I04nb2ZAc799c9d2
text Technical Analysis
The documentation contains several values that conform to the exact production authentication format expected by the implementation: a numeric MILKEE user identifier, a pipe separator, and an API-key-like string. These values are presented alongside realistic numeric company identifiers.
The application reads this token from
MILKEE_API_TOKENand transmits it as a bearer credential to the MILKEE API. Consequently, any valid example token would be directly usable without further transformation. Static analysis cannot establish whether these values are currently active, expired, fabricated, or restricted. Nevertheless, distributing realistic credential-shaped values creat ...[truncated 1652 chars]- Remediation
View remediation
Remediation Suggestions
- Remove every realistic token, user ID, and company ID from all documentation and release artifacts.
- Replace them with unmistakably synthetic placeholders, for example:
text MILKEE_API_TOKEN="USER_ID|REDACTED_API_KEY" MILKEE_COMPANY_ID="YOUR_COMPANY_ID" - If any displayed value originated from a real account, revoke or rotate the corresponding MILKEE API key immediately.
- Review MILKEE authentication and API access logs for use of the exposed identifiers, including access from unexpected addresses or modifications to company data.
- Search repository history, packaged Skill archives, release attachments, mirrors, and caches for earlier copies of the values. Removing them only from the current version does not eliminate historical exposure.
- Add automated secret scanning to version-control hooks and CI release checks. Configure patterns for the documented MILKEE token format as well as high-entropy strings.
- Use clearly invalid example identifiers and explicitly label all examples as placeholders.
- Apply least-privilege permissions to API identities and rotate API keys regularly to reduce the impact of future disclosure.
