CVE-2025-13773CVE-2025-13773是WordPress插件Print Invoice & Delivery Notes中的一个严重远程代码执行漏洞。该插件用于为WooCommerce生成发票和配送单,在全球范围内被广泛使用。漏洞源于多个安全缺陷的组合:首先,WooCommerce_Delivery_Notes::update函数缺少必要的权限检查,允许未认证用户调用;其次,Dompdf PDF生成库中启用了PHP代码执行功能;最后,模板文件template.php中缺少输入转义机制。攻击者可以通过构造恶意请求,在服务器上执行任意PHP代码,从而完全控制目标网站服务器。由于该漏洞无需认证即可利用,且CVSS评分高达9.8(严重等级),对使用该插件的所有WordPress网站构成严重威胁。建议网站管理员立即采取修复措施。
该漏洞是一个典型的无需认证的远程代码执行漏洞,由三个独立的安全缺陷组合形成:
1. **权限检查缺失**:WooCommerce_Delivery_Notes::update函数(第347行)没有进行权限验证,允许任何未认证用户调用该函数修改插件配置。这是最关键的缺陷,因为正常情况下这类管理功能应该仅对管理员开放。
2. **Dompdf PHP执行启用**:插件集成的Dompdf PDF库配置中启用了PHP评估器功能(PhpEvaluator.php第52行)。Dompdf默认是安全的,会禁用PHP代码执行,但该插件的配置错误地启用了这一危险功能,使得PDF模板中的PHP代码会被服务器执行。
3. **模板输入未转义**:template.php文件(第36行)中直接输出用户可控的数据而未进行适当的转义处理。攻击者可以在发票模板中注入PHP代码。
攻击者利用这三个缺陷的组合,通过发送恶意请求修改插件设置或直接在模板中注入PHP代码,当服务器生成PDF时,注入的PHP代码会被执行,从而实现远程代码执行。