CVE-2025-54723CVE-2025-54723是WordPress DentiCare主题中的一个高危安全漏洞,CVSS评分达到9.8分(严重级别)。该漏洞属于不安全反序列化(Deserialization of Untrusted Data)类型,允许攻击者在受影响系统中注入恶意PHP对象。DentiCare是由BoldThemes开发的牙科诊所WordPress主题,广泛应用于医疗健康领域的网站构建。漏洞存在于主题的PHP代码中,当应用程序对用户提供的序列化数据进行反序列化操作时,未进行充分的输入验证和安全检查。攻击者可以通过构造特定的序列化Payload,利用PHP的魔术方法(如__wakeup、__destruct、__toString等)在反序列化过程中触发恶意代码执行,从而实现远程代码执行(RCE)、文件操作、甚至完全接管服务器。由于该漏洞无需认证即可利用(PR:N),且攻击复杂度低(AC:L),对互联网暴露的WordPress站点构成严重威胁。所有使用DentiCare主题版本低于1.4.3的网站都受到影响。
该漏洞的根本原因在于DentiCare主题代码中使用了PHP的unserialize()函数处理用户可控的输入数据,而未实施适当的安全防护措施。在PHP中,不安全反序列化是一种严重的安全漏洞,攻击者可以通过构造包含恶意对象的序列化字符串来触发代码执行。当PHP对象被反序列化时,如果类中定义了特定的魔术方法,这些方法会自动被调用。攻击者常利用__destruct()或__wakeup()等魔术方法来执行危险操作,例如文件删除、数据库操作或命令执行。在WordPress环境中,攻击者可能利用PHP-GTK、SoapClient、phar://协议或其他存在RCE gadget的类来实现远程代码执行。攻击者通常需要找到可利用的反序列化入口点(如通过Cookie、POST数据或数据库字段),然后构造包含恶意对象的Payload。由于WordPress插件生态系统庞大,攻击者有更多机会找到可链接的gadget链来扩大攻击效果。修复此漏洞需要移除所有不安全的unserialize()调用,改用json_decode()或自定义解析逻辑,并实施输入验证和白名单机制。