WPCode 插件原名:Insert Headers and Footers。在2.0.9 版之前的 WPCode 中发现跨站点请求伪造 (CSRF) 漏洞,可能允许攻击者删除服务器上的文件,使用该插件的站点超过100万个。
WPCode 插件简介
WPCode 插件(以前称为 WPBeginner 的 Insert Headers and Footers)是一个流行的插件,它允许 WordPress 发布者将代码片段添加到页眉和页脚区域。如果不使用此类插件,网站开发者需要手动编辑 functions.php 文件,但每次主题升级后,修改后的functions.php文件将丢失。
这对于需要添加 Google Search Console 网站验证代码、CSS 代码、结构化数据甚至 AdSense 代码的发布商非常有用。
跨站请求伪造 (CSRF) 漏洞
CSRF 攻击依赖于欺骗在 WordPress 站点上注册的最终用户单击执行不需要操作的链接。攻击者基本上是利用注册用户的凭据在用户注册的站点上执行操作。
当登录的 WordPress 用户单击包含恶意请求的链接时,该站点有义务执行该请求,因为他们使用的浏览器带有 cookie,可以正确识别已登录用户。
攻击者指望的是注册用户在不知情的情况下执行的恶意操作。
非营利组织 Open Worldwide Application Security Project (OWASP) 描述了一个 CSRF 漏洞:“跨站点请求伪造 (CSRF) 是一种攻击,它迫使最终用户在他们当前已通过身份验证的 Web 应用程序上执行不需要的操作。借助例如通过电子邮件或聊天发送链接,攻击者可能会诱骗 Web 应用程序的用户执行攻击者选择的操作。如果受害者是普通用户,成功的 CSRF 攻击会迫使用户执行状态更改请求,如转账、更改电子邮件地址等。如果受害者是管理帐户,CSRF 可能会危及整个 Web 应用程序。”
美国国家漏洞数据库公布了该漏洞的详细信息:“2.0.9 之前的 WPCode WordPress 插件在删除日志时存在 CSRF 缺陷,无法确保要删除的文件在预期的文件夹内。这可能允许攻击者让具有 wpcode_activate_snippets 功能的用户删除服务器上的任意日志文件,包括博客文件夹之外的日志文件。”
例如:“让具有 wpcode_activate_snippets 功能的登录用户打开下面的 URL:https://example.com/wp-admin/admin.php?page=wpcode-tools&view=logs&wpcode_action=delete_log&log=../../delete-me.log
这将使他们删除 ~/wp-content/delete-me.log”
WPCode 发布安全更新
WPCode 的 v2.0.9 变更日志——负责任地指出,他们修补了一个安全问题。
所有使用 WPCode 或 WPCode Pro v2.0.9 之前版本的用户应该立即升级到最新版。
汇特网提供 WPCode Pro 最新汉化版下载。
在 NVD 网站上了解有关该漏洞的详细信息:CVE-2023-1624 。