T09 · Insecure Skill Coding Practices
Warning
- Location
- SKILL.md:26
- Finding
- Unprotected Disclosure of Conversation Data to Discord## Vulnerability Details **File Location**: `SKILL.md`, lines 26–28 **Vulnerability Type**: External disclosure without mandatory consent, redaction, or destination validation **Risk Level**: Medium **Vulnerable Code:** ```markdown 2. **Post to Discord** (optional): Send summary to a designated archive channel - Keep Discord post concise -- summary + outcomes only - Link to the full file if details are long ``` ### Technical Analysis The workflow permits archived conversation information to be transmitted to Discord but does not require explicit per-archive user authorization, a review of the outgoing content, removal of secrets or personal data, or validation of the destination channel and its access controls. Describing the operation as optional does not establish a secure activation condition or guarantee informed user consent. Conversation summaries may contain confidential project information, internal decisions, personal information, filesystem details, or credentials accidentally included in the source conversation. The instruction to link to the full archive can increase the disclosure scope if the linked resource is accessible to unintended recipients. This finding concerns unsafe external data handling. The audited file does not demonstrate credential theft, arbitrary code execution, privilege escalation, persistence, or malicious intent. ### Attack Path 1. A completed conversation contains confidential or sensitive information. 2. The skill creates an archive summary containing that information or a reference to the full archive. 3. Discord posting is enabled or selected without a mandatory per-item approval step. 4. The skill posts the summary or full-file link to the configured archive channel without sensitivity filtering or destination authorization checks. 5. Channel members or other parties with access to the destination obtain information they were not intended to receive. ### Impact Assessm ...[truncated 583 chars]
- Remediation
- ## Remediation Suggestions - Disable external posting by default and require explicit, informed user approval for every archive sent to Discord. - Present the exact destination and outgoing content for review before transmission. - Scan summaries and links for credentials, tokens, personal data, internal identifiers, and other sensitive information; redact detected material before posting. - Validate that the configured channel is the intended archive channel and that its membership, permissions, bots, webhooks, and retention settings are appropriate. - Do not link to full archive files unless their access controls have been verified and the user has separately approved sharing them. - Minimize Discord posts to non-sensitive metadata whenever possible. - Record an audit entry containing the approval, destination, timestamp, and categories of information transmitted, without duplicating sensitive content in the log. - Document failure behavior so that missing consent, failed redaction, or uncertain destination permissions always prevent transmission.
