T05 · Unauthorized Access and Privilege Escalation
Error
- Location
- claw.json:169
- Finding
- Sensitive device information can be accessed without user confirmation<![CDATA[ ## Vulnerability Details **File Location**: `claw.json:169-171`, `claw.json:188-190`, `claw.json:335-337` **Vulnerability Type**: Missing authorization gates for sensitive data access **Risk Level**: High ### Complete Code Snippets ```json { "name": "read_notifications", "description": "Read system notification bar" } ``` ```json { "name": "read_file", "description": "Read file content from phone (restricted to /sdcard/ user storage only)" } ``` ```json { "name": "logcat", "description": "Read-only: retrieve filtered system log entries for troubleshooting (read-only, no system modification)" } ``` None of these tool definitions contains `"confirmation": true`. ### Technical Analysis The tools expose potentially sensitive Android data without requiring the platform-level confirmation mechanism used elsewhere in the project. Notifications may contain private messages, one-time passwords, authentication links, financial alerts, and account activity. Files under `/sdcard/` can include photographs, exported conversations, documents, downloads, and backups. Android logs may contain identifiers, application state, URLs, message fragments, or other diagnostic data. Restricting file access to `/sdcard/` and making log access read-only reduces integrity risk, but it does not address confidentiality. Because the tool results enter the Agent's execution context, private data may subsequently be summarized, displayed, retained in logs, or disclosed to an unintended requester. ### Attack Path 1. A request activates the phone-control Skill. 2. The Agent invokes `read_notifications`, `read_file`, or `logcat`. 3. The platform does not display a confirmation prompt because the tool lacks `"confirmation": true`. 4. The remote API retrieves sensitive data from the connected Android device. 5. The returned information enters the Agent context and may be exposed through its response or execution logs. ### Impact Assessment An Agent can obtain priva ...[truncated 354 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions - Add `"confirmation": true` to `read_notifications`, `read_file`, and `logcat`. - Require a separate confirmation for each sensitive file or data category rather than granting broad session-wide access. - Apply strict path canonicalization and allowlists to ensure file operations cannot escape `/sdcard/`. - Redact one-time passwords, bearer tokens, session identifiers, phone numbers, and message bodies by default. - Restrict log retrieval by application, severity, maximum line count, and approved diagnostic purpose. - Return metadata or summaries by default and expose full content only after explicit approval. - Record an auditable event containing the approved operation and scope without logging the sensitive returned content. ]]>
