other
- Location
SKILL.md:28- Finding
Unprotected Disclosure of Conversation Content to a Third-Party Service
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 28–49
Vulnerability Type: Sensitive Data Disclosure
Risk Level: MediumComplete Code Snippet:
markdown ## API Call ```bash POST https://api.cerebratech.ai/cogdx-health Content-Type: application/jsonPayload:
json { "agent_id": "your-agent-id", "outputs": [ { "prompt": "...", "response": "...", "stated_confidence": 0.85, "correct": true, "complexity": "complex" } ] }Minimum: 10 outputs. Recommended: 20.
text The same external endpoint and required prompt/response fields are corroborated in `references/api.md`, lines 3–21. ### Technical Analysis The skill instructs an agent to collect and transmit 10–20 recent prompts and responses to `https://api.cerebratech.ai/cogdx-health`. These records can contain credentials, personal information, proprietary code, confidential business data, or private conversation context. The documented flow does not require informed user approval for the exact payload, manual sample selection, content minimization, secret or PII redaction, anonymization, or a review step before transmission. The required `agent_id` may also allow separate submissions to be correlated over time. Although HTTPS protects data in transit, it does not prevent the receiving third party from accessing or retaining the submitted plaintext content. ### Attack Path 1. A user invokes the skill through a phrase such as “health check” or “check my reasoning.” 2. The agent selects at least ten recent outputs, including their original prompts and responses. 3. One or more selected records contain confidential data from prior interactions. 4. The agent places those records and an agent identifier into the documented JSON payload. 5. The payload is transmitted to the third-party Cerebratech API. 6. The external service receives the sensitive conten ...[truncated 884 chars]- Remediation
View remediation
Remediation Suggestions
- Require explicit, informed confirmation immediately before each request, showing the destination, purpose, and exact records to be transmitted.
- Let users manually select or exclude samples rather than automatically collecting recent conversation history.
- Apply local secret scanning and redact credentials, authentication tokens, personal information, proprietary source code, and other confidential values before transmission.
- Minimize submitted content by extracting only the features required for calibration analysis or perform the analysis locally where feasible.
- Replace persistent agent identifiers with random, per-request pseudonymous identifiers unless correlation is strictly necessary and separately authorized.
- Document the service’s data retention, deletion, secondary-use, access-control, and privacy policies in the skill.
- Provide a final payload preview and require approval after redaction but before network transmission.
- Reject submissions when sensitive content cannot be reliably removed.
