CVE-2026-8626WordPress的SponsorMe插件在所有0.5.2及之前的版本中存在严重的反射型跨站脚本(XSS)漏洞。该问题的根源在于插件未能对`PHP_SELF`参数进行充分的输入清理和输出转义。未经身份验证的攻击者可以利用此漏洞,通过诱导目标用户点击精心构造的恶意链接,在`wp-admin/admin.php`的URL路径中注入攻击载荷。当受害者访问该链接时,恶意脚本会被注入到页面的表单action属性和锚点href属性中并执行。这可能导致攻击者窃取用户会话信息、执行未授权操作或进行钓鱼攻击。
该漏洞的核心原理在于对PHP超全局变量`$_SERVER['PHP_SELF']`的不安全使用。在SponsorMe插件的`sponsorme.php`源码中,开发者直接引用该变量以动态生成表单的`action`属性和锚点标签的`href`属性,完全忽略了输入验证和输出转义。在PHP配置中,`$_SERVER['PHP_SELF']`的值不仅包含脚本文件名,还包含URL路径中由用户提供的部分数据。攻击者利用这一特性,构造包含恶意JavaScript代码的URL(例如:`/wp-admin/admin.php/page_sponsorme/%22%3E%3Cscript%3Ealert(1)%3C/script%3E`)。当受害者点击此链接时,服务器端脚本会将该恶意路径原样输出到HTML响应中。由于缺乏`htmlspecialchars`等转义处理,浏览器会将插入的引号闭合原有属性,并将`<script>`标签作为可执行代码解析。尽管该漏洞属于反射型XSS,需要用户交互触发,且影响范围主要限于客户端,但若针对WordPress管理员进行定向攻击,可能导致会话劫持,进而完全控制网站后台。