CVE-2025-12710CVE-2025-12710是WordPress Pet-Manager Petfinder插件中的一个存储型跨站脚本(XSS)漏洞。该插件是WordPress平台上用于管理宠物信息的流行插件,在全球范围内被广泛使用。漏洞存在于插件的kwm-petfinder短代码处理功能中,由于插件在处理用户提供的属性参数时,没有对输入进行充分的 sanitization(清理)和对输出进行适当的 escaping(转义),导致恶意脚本可以被永久存储在网站的数据库中。攻击者只需要拥有WordPress的Contributor级别权限(低权限角色)即可利用此漏洞。一旦恶意脚本被注入,任何访问包含该短代码的页面的用户都会自动执行攻击者植入的JavaScript代码。这可能导致会话劫持、敏感信息窃取、恶意重定向等严重安全问题。由于攻击是在合法网站上进行的,用户很难察觉正在遭受攻击,这使得该漏洞具有较高的隐蔽性和危害性。
该漏洞的根本原因在于WordPress短代码处理流程中的输入验证和输出编码环节存在缺陷。Petfinder插件的kwm-petfinder短代码接受用户提供的属性参数(如id、name等),但直接将这些未经过滤的参数值插入到HTML输出中。攻击者可以通过构造特殊的payload来注入任意HTML/JavaScript代码。例如,在短代码属性中嵌入<script>标签或事件处理器(如onerror、onload等)。由于这些payload被存储在WordPress的post_content字段中,每次页面加载时都会从数据库读取并执行,形成存储型XSS攻击。漏洞代码位置主要在kwm-petfinder.php文件的133、163、164行附近,这些位置的代码直接输出用户可控的变量而未进行适当的htmlspecialchars()或esc_html()处理。攻击者利用此漏洞可以窃取管理员Cookie、修改页面内容、植入钓鱼页面或进一步利用其他漏洞提升权限。