T05 · Unauthorized Access and Privilege Escalation
- Location
SKILL.md:45- Finding
Unrestricted Approval Mode Removes Agent Authorization Boundaries
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 45-47
Vulnerability Type: Unrestricted agent permissions
Risk Level: Highbash # 5. 设置权限(ACP 是非交互的,必须设) openclaw config set plugins.entries.acpx.config.permissionMode approve-allTechnical Analysis
The documented configuration sets the ACP plugin's permission mode to
approve-alland presents this setting as mandatory for non-interactive operation. This eliminates per-operation authorization for an autonomous coding agent that may be able to read and modify files, execute commands, access environment variables, and invoke development tools.The absence of an approval boundary means that malicious instructions in an untrusted repository, prompt injection delivered through a bound conversation, or an incorrect agent decision can result in immediate tool execution. The effective privileges are those of the operating-system account running the OpenClaw gateway or Claude Code process.
Attack Path
- An operator enables ACP using the documented
approve-allconfiguration. - The operator binds Claude Code to a repository or conversation.
- An attacker places malicious instructions in repository content, contributes hostile project documentation, or sends prompt-injection content through the bound conversation.
- Claude Code interprets the content as instructions and requests a sensitive tool operation, such as reading credentials, changing source files, or executing a shell command.
- The
approve-allpolicy authorizes the operation without human confirmation. - The operation executes with the permissions of the account hosting the agent.
Impact Assessment
Successful exploitation can permit unauthorized command execution, source-code or configuration modification, access to credentials available in files or environment variables, and destructive actions within the host account's permission scope. If the gateway runs under a priv ...[truncated 207 chars]
- An operator enables ACP using the documented
- Remediation
View remediation
Remediation Suggestions
- Replace
approve-allwith an interactive, deny-by-default, or least-privilege permission mode. - Require explicit authorization for shell execution, writes outside the selected workspace, credential access, network operations, and destructive commands.
- Restrict the agent to a dedicated workspace and run it as an unprivileged operating-system account.
- Use an isolated container or sandbox for non-interactive workflows, with a read-only base filesystem and no access to host credentials.
- Apply command and path allowlists rather than granting unrestricted tool access.
- Provide only short-lived, task-specific credentials and prevent unnecessary environment variables from reaching the agent process.
- Treat repository content and bound-chat messages as untrusted input, and require confirmation before acting on instructions discovered in those sources.
- Record and review tool calls, filesystem changes, and command execution for auditability.
- Replace
