T09 · Insecure Skill Coding Practices
- Location
scripts/analyze.mjs:39- Finding
Incomplete Secret Redaction Before Session-Derived Evidence Is Persisted
- Content
View full analysis
e.message); addInstinct( 'discord-message-requires-guild', 'errors', 'when sending Discord messages', 0.6, errorSamples ); ``` ### Technical Analysis The Skill reads error content from privacy-sensitive OpenClaw session transcripts and uses a regular-expression denylist to identify secrets before storing selected error messages as persistent instinct evidence. This denylist does not reliably recognize all common sensitive-data formats. Potentially uncovered examples include: - Quoted JSON fields such as `"access_token":"value"` - Cookie and session identifiers - Basic authorization credentials - JWTs and other structured bearer credentials - Database connection strings not matching the URI-credential expression - Provider-specific API keys without one of the hardcoded prefixes Limiting a string to 120 characters does not make it non-sensitive. A complete credential may fit within that limit. Consequently, the implementation does not fu ...[truncated 1419 chars]- Remediation
View remediation
