CVE-2026-43882WWBN AVideo是一个开源视频平台。在版本29.0及以下版本中,`plugin/Scheduler/downloadICS.php`端点存在一个无需认证的漏洞。由于`ICS::escape_string()`函数仅转义逗号和分号,未过滤CRLF字符,攻击者可以在日历文件属性中注入换行符。这使得攻击者能够生成包含恶意伪造会议事件的`.ics`文件。由于该文件源自受信任的AVideo域名,攻击者可利用此漏洞进行高可信度的日历钓鱼攻击,诱骗受害者在日历中添加攻击者控制的会议。
该漏洞的核心在于AVideo处理ICS(iCalendar)文件生成时的输入验证不足。受影响代码位于`objects/ICS.php`的`ICS::escape_string()`函数(第167-169行),该函数仅对`,`和`;`进行了转义,忽略了`
`和`
`等控制字符。
攻击者通过向`plugin/Scheduler/downloadICS.php`发送特制的GET请求,利用`title`、`description`或`joinURL`参数注入CRLF序列(`%0d%0a`)。通过注入`END:VEVENT`和`BEGIN:VEVENT`标记,攻击者可以终止当前的合法日历事件,并开始一个新的、完全由攻击者定义的事件。生成的`.ics`文件会被服务器当作正常响应返回。当受害者将此文件导入Outlook、Apple Calendar等客户端时,伪造的事件(包含恶意的URL、位置或描述)会被添加到日历中。这种攻击利用了受害者对视频平台域名的信任,绕过了传统的电子邮件钓鱼过滤器。