T05 · Unauthorized Access and Privilege Escalation
- Location
- references/openclaw-team-example.json5:165
- Finding
- Overprivileged Host Filesystem, Command Execution, and Network Access<![CDATA[ ## Vulnerability Details **File Location**: `references/openclaw-team-example.json5:165-184` and `references/openclaw-team-example.json5:340-355` **Vulnerability Type**: Excessive host-level permissions and insufficient sandboxing **Risk Level**: High ### Vulnerable Code ```json5 "tools": { "allow": [ "read", "write", "edit", "exec", "memory_search", "memory_get", "sessions_list", "sessions_history", "sessions_send", "sessions_spawn", "session_status", "browser", "web_search", "web_fetch" ], "sessions": { "visibility": "all" // Orchestrator needs to see all sessions for coordination } } ``` ```json5 // File system restrictions "fs": { "workspaceOnly": false // Set to true if you want strict workspace-only file access // Set to false if agents need to read team-shared/ via symlinks }, // Exec security "exec": { "security": "allow", "ask": "auto" // "deny" = no exec at all // "allow" + "ask": "always" = ask before every exec // "allow" + "ask": "auto" = ask for risky commands } ``` ### Technical Analysis The example configuration gives the planner simultaneous access to filesystem read and write operations, command execution, cross-agent session tools, and network-capable browser and web tools. The planner is not configured with a sandbox, while the global filesystem policy explicitly permits access outside the workspace. This exceeds the minimum privileges required for ordinary team coordination. A coordinating agent generally needs task delegation and narrowly scoped access to team status data, but it does not inherently require unrestricted host filesystem access or command execution. The project documentation correctly notes that workspaces are not sandboxed by default and that absolute paths can reach other host locations. Nevertheless, the supplied copyable configuration retains the unsafe defaults. Prompt injection received through Discord, Telegram, web content, or shared projec ...[truncated 1448 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Change the global filesystem policy to workspace-only access: ```json5 "fs": { "workspaceOnly": true } ``` 2. Apply an agent-scoped sandbox to every agent, including the planner: ```json5 "sandbox": { "mode": "all", "scope": "agent", "workspaceAccess": "rw" } ``` 3. Remove `exec`, `process`, `write`, and `edit` from the planner unless a documented workflow specifically requires them. 4. If command execution is required, use `"ask": "always"` and a narrowly defined command allowlist. 5. Grant browser and web tools only to agents that need external research. 6. Expose shared memory through a narrowly scoped, sandbox-mounted directory instead of disabling workspace restrictions globally. 7. Require explicit user confirmation before accessing host paths, modifying files, executing commands, or transmitting file contents. 8. Separate the coordination role from any role that performs host-level execution. ]]>
