T05 · Unauthorized Access and Privilege Escalation
Warning
- Location
- SKILL.md:67
- Finding
- Sensitive User Context May Be Inferred and Transmitted Without Granular Consent## Vulnerability Details **File Location**: `SKILL.md:52-56`, `SKILL.md:67-69`, and `SKILL.md:87-94` **Vulnerability Type**: Excessive collection and external disclosure of inferred sensitive information **Risk Level**: Medium **Relevant Skill Instructions**: ```markdown **Life Decisions** — When peer perspective helps: - Career changes, health concerns, relationship advice - Major purchases, moving decisions, financial planning - Situations where empathy and lived experience matter ``` ```markdown 1. Call `rumi_health_check` first to verify token and check quota 2. Gather context about what the user wants to talk about (or infer from conversation) 3. Call `rumi_find_partner` with a rich description — include interests, mood, what kind of person they want ``` ```markdown ## Writing Good Descriptions The quality of the `description` parameter directly affects match quality. Include: - **What** they want to talk about (specific topics, not vague) - **Why** — the context or mood (learning, venting, sharing excitement) - **What kind of person** — expertise level, personality, shared experiences ``` ### Technical Analysis The skill instructs the agent to derive matching context from the existing conversation and explicitly permits the context to be inferred. The activation criteria include potentially sensitive subjects such as health, relationships, career decisions, major purchases, and financial planning. The inferred information is then incorporated into a “rich description” sent to the external Rumi matching service through `rumi_find_partner`. Although the skill requires confirmation before proactively calling the matching function, it does not require the agent to display the exact description that will be transmitted or obtain field-level approval for sensitive inferred attributes. A user may therefore consent to finding a conversation partner without realizing that contextual details concerning mood, ...[truncated 1696 chars]
- Remediation
- ## Remediation Suggestions 1. Show the exact matching description to the user before invoking `rumi_find_partner`. 2. Require explicit approval of the final payload rather than relying on general consent to find a partner. 3. Do not infer or transmit sensitive attributes concerning health, finances, relationships, age, or emotional state unless the user expressly requests their inclusion. 4. Limit transmitted data to details directly supplied by the user for the stated matching purpose. 5. Provide an editing step that allows the user to remove or generalize contextual information. 6. Add a clear notice identifying Rumi as an external service and describing what information will be transmitted. 7. Establish retention, deletion, and purpose-limitation requirements for descriptions submitted to the service. 8. Replace broad instructions to create a “rich description” with a structured allowlist of minimally necessary matching fields.
