other
Warning
- Location
- SKILL.md:20
- Finding
- Unredacted Legal Case Information Transmitted to a Third-Party API<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 20–25; supporting privacy disclosure at line 42 **Vulnerability Type**: `other: Privacy Data Exposure` **Risk Level**: Medium The skill requires user-supplied legal case descriptions or summaries to be submitted to an external API. Legal narratives may contain names, addresses, financial information, injury details, accusations, case identifiers, and other sensitive personal information. The relevant mandatory workflow is: ```markdown **第 3 步:调用接口** - 根据需求调用对应接口: - 法律条文 → `get-laws` - 类似案例 → `get-cases` - 两者都要 → 两个都调用 - 入参 `content` 使用用户描述的案件关键词或摘要 ``` The documentation separately acknowledges the transmission: ```markdown > ⚠️ **隐私风险提示**:本技能将用户描述的案件内容发送至第三方 API 进行检索,可能包含姓名、金额等个人隐私。请确认符合当地隐私法规,必要时建议用户自行判断是否适用。 ``` ### Technical Analysis The workflow directs the agent to use the user's case description, keywords, or summary as the `content` parameter of authenticated POST requests to `https://h5.wintaocloud.com`. Although the documentation discloses that information is sent to a third party, it does not require: - Explicit user consent immediately before transmission. - A preview of the exact content and destination. - Removal of names, addresses, identifiers, account details, or unrelated facts. - Data minimization to abstract legal search terms. - Verification of the provider's retention, processing, and logging practices. The trigger rules also permit direct retrieval when the user mentions legal keywords. Consequently, a detailed case narrative can be transmitted without a separate confirmation step. Disclosure alone does not adequately prevent unintended processing of sensitive legal or personal data. This is not evidence of covert exfiltration or malicious intent: the external request supports the advertised legal-retrieval function, and the privacy risk is disclosed. The vulnerability is the absence of enforceable consent and redaction controls before the transmission o ...[truncated 1679 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Require explicit opt-in consent immediately before every external request involving user-provided case information. 2. Show the user the destination domain and the exact proposed request content before transmission. 3. Automatically remove or replace names, addresses, telephone numbers, identification numbers, account details, case identifiers, and other unique identifiers. 4. Convert narratives into minimal, abstract legal-search terms whenever possible, such as dispute type, relevant conduct, jurisdiction, and remedy sought. 5. Do not transmit information about third parties unless it is necessary and the user confirms that they are authorized to provide it. 6. Provide a local-only option in which the skill generates search keywords without contacting the external API. 7. Document the external provider's privacy policy, retention period, logging practices, processing location, and deletion procedure. 8. Ensure request and error logs do not record authorization headers or unredacted request bodies. 9. Add a mandatory preflight check that blocks transmission when sensitive identifiers remain in the request. 10. Permit users to cancel the operation or edit the redacted query before it is sent. ]]>
