WordPress 核心中的一个新漏洞允许匿名访客留下评论,从而在页面上植入隐藏脚本。如果登录的管理员稍后打开该页面,则该脚本可以在网站服务器上运行代码。
WordPress 于 9 月 17 日在版本 7.1.1 中修复了该漏洞,追踪编号为 CVE-2026-93485,称其为“Comment2Shell”,并告知网站所有者立即更新。没有迹象表明该漏洞已被用于攻击,并且它不在美国政府的主动利用软件漏洞列表中。
分配该标识符的公司 Patchstack 将该漏洞在 CVSS 评分中评为 7.1 分(满分 10 分)。
WordPress 在保存评论时会检查危险的 HTML,然后在页面显示时重新格式化它,而该漏洞存在于这两个步骤之间的空隙中。
报告该漏洞的安全研究员 Rafie Muhammad 在 9 月 21 日的文章中详细阐述了整个链条。这个技巧是在评论的允许 HTML 标签的属性内部放置一个换行符。
当 WordPress 为显示重新格式化评论时,其一个步骤将该标签拆分,并将攻击者的文本移动到浏览器将其视为实时事件处理程序的位置。该处理程序在页面加载时自动运行,无需点击。
该脚本在打开页面的任何人的浏览器中运行,无论他们是否登录,并且以该人对网站的访问级别进行操作。
在服务器上运行代码需要一个额外的条件。必须由登录的管理员打开携带评论的页面。
然后,脚本可以利用管理员自己的会话上传包含 Web Shell 的插件,这是一个小文件,可以执行攻击者发送的任何命令。通过这种方式上传插件是从管理员的浏览器控制服务器的已知途径。
该攻击还依赖于网站如何显示其评论。它在使用块主题或以相同方式格式化评论的经典主题的网站上有效,而在其他网站上则无效。
为了使这一切发生,评论必须首先出现在页面上。WordPress 将该漏洞描述为仅在“评论审核的情况下”可被利用。
但是,评论审核默认是关闭的,并且可以绕过首次评论者的设置,因此评论可以在未经任何人批准的情况下到达页面。正如 Patchstack 所说,“审核不是一种安全控制。”
该怎么办
更新到 WordPress 7.1.1,或者如果您的分支仍然获得安全修复,则更新到最新版本。受影响的版本从 4.7 到 7.1,这些是当前分支的修复版本:
WordPress 7.1:更新到 7.1.1
WordPress 7.0:更新到 7.0.5
WordPress 6.9:更新到 6.9.8
较旧的分支,回溯到 4.7:安装您分支的修复版本,最早可追溯到 4.7.36,具体列在 WordPress 的发布文档中
无法立即更新的网站可以通过关闭帖子评论或在整个网站上关闭评论来阻止此方式,并且 Web 应用防火墙或安全插件可能会阻止该构造的评论。
WordPress 和研究人员都没有发布单独的解决方法。更新修复了漏洞,但不会撤销攻击者已经做出的任何更改。怀疑被攻击的网站还应检查其不认识的插件或文件。
WordPress 7.1.1 总共修复了 11 个安全问题。这个评论漏洞是唯一一个没有账户的攻击者可以访问的漏洞,而其他大多数漏洞都需要登录用户具有某种级别的访问权限。
同一版本还修复了第二个漏洞,称为 Click2Shell,其中一个构造的链接可以使 WordPress 安装一个主题,并与该主题中的第二个弱点一起在服务器上运行代码。它也需要登录的管理员打开该链接。
WordPress 核心今年还出现了其他严重漏洞。今年 7 月,一个名为 wp2shell 的漏洞让攻击者可以完全不登录就运行代码,随后美国当局将其列为在真实攻击中使用的漏洞。
在 8 月,研究人员利用登录页面中的脚本漏洞以管理员身份执行代码。这些是与评论漏洞不同的独立漏洞。
觉得这篇文章有趣吗?请在 Google 新闻、Twitter 和 LinkedIn 上关注我们,阅读更多我们发布的独家内容。