CVE-2026-33717WWBN AVideo是一个开源的视频托管平台。在26.0及之前的版本中,`objects/aVideoEncoder.json.php`文件的`downloadVideoFromDownloadURL()`函数存在安全漏洞。该函数在下载远程内容时,直接使用原始URL的文件名(包括.php扩展名)将文件保存到Web可访问的临时目录。攻击者可以通过提供无效的`resolution`参数,在临时文件被清理之前触发`forbiddenPage()`导致脚本终止,从而使恶意的PHP文件持久化存在于`videos/cache/tmpFile/`目录下,进而实现远程代码执行。
该漏洞的核心逻辑缺陷在于文件下载后的清理机制与错误处理流程的竞争条件。`downloadVideoFromDownloadURL()`函数首先将远程文件保存至`videos/cache/tmpFile/`。如果攻击者提交一个畸形的`resolution`参数,系统会调用`forbiddenPage()`并执行`die()`立即退出。由于退出操作在清理临时文件的逻辑之前执行,原本应被删除的恶意PHP文件得以保留。因为该目录位于Web根目录下且具有执行权限,攻击者只需直接访问该文件路径,即可触发服务器端解析并执行任意PHP代码,完全控制服务器。