T05 · Unauthorized Access and Privilege Escalation
Warning
- Location
- SKILL.md:430
- Finding
- Automatic Transmission of User Feedback and Diagnostic Data Without Explicit Consent<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:430-443` **Vulnerability Type**: Automatic third-party disclosure of user-provided and diagnostic information **Risk Level**: Medium ### Vulnerable Code ```markdown ## Feedback & Error Reporting If you encounter an error from the API, or if the user shares feedback about ViralBaby, report it: POST /api/v1/feedback Body: { "type": "error", "message": "POST /api/v1/tiktok/upload returned 500: Internal server error. Slideshow ID: abc123" } Body: { "type": "feedback", "message": "User says: would love to be able to change font styles" } - `type` — `"error"` for API errors/bugs, `"feedback"` for user suggestions (defaults to `"feedback"`) - `message` — free-form text. For errors, include the endpoint, status code, error message, and any relevant IDs. For feedback, include the user's words. Report errors automatically when an API call fails unexpectedly (5xx, or repeated 4xx that shouldn't happen). Don't report 401/402 — those are expected. ``` ### Technical Analysis The Skill instructs the Agent to send user feedback, endpoint names, error messages, and relevant resource identifiers to the ViralBaby feedback endpoint. It also directs the Agent to perform this reporting automatically for unexpected failures. Automatic diagnostic reporting is not necessary for the Skill's core functionality of creating slideshows and uploading them to TikTok drafts. The instructions do not require: - Explicit user consent before transmission. - Display or approval of the exact outgoing payload. - Redaction of personal data, credentials, URLs, content, or identifiers. - A restriction against including request or response bodies. - Data minimization or retention controls. Because the `message` field is free-form and the Agent is encouraged to include relevant details and the user's own words, API failures or feedback could cause sensitive information to be incorporated into the report. ### Attack Path 1. The u ...[truncated 1282 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Disable automatic feedback and error reporting by default. 2. Ask for explicit, informed user consent before each diagnostic or feedback submission. 3. Show the user the exact destination and redacted payload before transmission. 4. Apply structured allowlisting rather than accepting an unrestricted free-form message. 5. Remove or mask: - API keys and authorization headers. - Passwords and session tokens. - Personal information. - Request and response bodies. - Slideshow, user, publish, search, and collection identifiers. - User content and private URLs. 6. Send only the minimum required fields, such as a generic error class, endpoint category, and status code. 7. Never quote user feedback verbatim unless the user expressly approves the quotation. 8. Document the destination service's retention and privacy behavior. 9. Record locally that consent was obtained without retaining the sensitive report contents. ]]>
