CVE-2025-32957baserCMS是一个基于PHP的网站开发框架。在5.2.3版本之前,其应用程序的恢复功能存在严重安全缺陷。该功能允许用户上传.zip格式的备份文件,系统随后会自动解压该文件。由于代码在处理解压后的文件时,未对文件名进行有效的验证或限制,直接使用require_once包含压缩包内的PHP文件,这允许攻击者精心构造包含恶意PHP脚本的ZIP压缩包。一旦管理员上传并触发恢复流程,恶意代码将被服务器执行,从而导致任意代码执行。
该漏洞的核心在于baserCMS的恢复功能中存在不安全的文件处理逻辑。具体来说,当系统处理用户上传的ZIP备份文件时,会将其解压到指定目录。随后,应用程序为了执行某些恢复操作,会遍历解压后的文件并利用require_once函数包含其中的PHP文件。然而,该过程严重缺乏安全检查,未验证文件后缀的合法性,也未对文件路径进行规范化处理。攻击者利用这一漏洞,首先需要获取系统的高权限账号(CVSS PR:H),然后创建一个特制的ZIP包,内部包含一个带有恶意代码(如WebShell)的PHP文件。通过恢复功能上传此ZIP包后,服务器端脚本在解压并包含该PHP文件时,会将恶意代码作为PHP逻辑执行。由于是在服务器上下文中执行,攻击者即可获得远程代码执行能力,进而完全控制服务器。