CVE-2025-12371CVE-2025-12371是WordPress Nari Accountant插件中的一个存储型跨站脚本(Stored XSS)漏洞。该插件是一款专为会计功能设计的WordPress插件。漏洞源于插件在处理账户设置时,对用户输入的清理不充分,以及对输出内容的转义处理不当。具体而言,插件未能对用户提交的输入进行适当的输入清理(input sanitization)和输出转义(output escaping),导致恶意脚本代码可以被永久存储在数据库中。攻击者利用此漏洞需要具备编辑级或更高权限,一旦恶意脚本被注入,任何访问包含该脚本的页面的用户都会自动执行攻击者植入的JavaScript代码。值得注意的是,此漏洞仅影响多站点(Multi-site)WordPress安装,以及那些禁用了unfiltered_html功能的单站点安装。在这些配置下,WordPress默认的内容过滤机制被禁用或受限,为XSS攻击提供了可乘之机。攻击成功后,攻击者可以窃取用户会话Cookie、劫持用户账户、进行钓鱼攻击或在受害者浏览器中执行任意JavaScript代码。
该漏洞的根本原因在于Nari Accountant插件在账户设置功能中缺乏适当的安全防护机制。插件在接收用户输入时,未能使用WordPress推荐的安全函数(如sanitize_text_field、esc_html等)对输入进行清理和转义。当这些未经过滤的数据被存储到数据库后,在后续页面渲染时会被直接输出到HTML中,从而触发XSS执行。具体利用过程如下:1) 攻击者以编辑级或更高权限账户登录WordPress后台;2) 导航至Nari Accountant插件的账户设置页面;3) 在相关输入字段中注入恶意JavaScript代码,如<script>alert(document.cookie)</script>;4) 保存设置后,恶意代码被写入数据库;5) 当其他用户访问包含该设置的页面时,恶意脚本在用户浏览器中执行。由于这是存储型XSS,攻击具有持久性,恶意代码会在服务器端持续存在,直到被管理员发现并清除。CVSS 3.1评分4.4(中等)反映了该漏洞需要认证的高权限前提条件,以及攻击复杂度较高(需要绕过内容过滤机制)的特点。