研究人员发现,在有超过9万个WordPress网站所使用的两个主题中发现了一个重要的权限升级漏洞,这些漏洞可以让威胁者完全接管这些网站。
WordFence威胁情报团队研究员Ramuel Gall发现了这个漏洞,他在周三发表的一篇博文中透露,这是他在4月初至5月初在Jupiter和JupiterX高级WordPress主题中发现的五个漏洞之一。
其中一个漏洞被追踪为CVE-2022-1654,在CVSS上被评为9.9级,即关键级,该漏洞允许任何经过验证的攻击者,包括任何用户或客户级攻击者,获得管理权限并完全接管任何运行Jupiter主题或JupiterX核心插件的网站,并且该插件是运行JupiterX主题所必需的。
该主题受影响的版本是Jupiter Theme 6.10.1或更早,以及JupiterX Core Plugin 2.0.7或更早。
WordFence于4月5日完成了对大部分漏洞的调查,并在同一天向Jupiter和JupiterX主题开发商ArtBees报告了这些漏洞;5月3日,他们向开发商通报了另外一个Jupiter主题漏洞。到5月10日,开发商发布了Jupiter和JupiterX主题的最新版本,修补了其中所有的漏洞。
研究员所发现的关键漏洞存在于一个名为uninstallTemplate的函数中,该函数可以卸载模板后重置一个网站。然而,它也具有将调用该函数的用户提升到管理员角色的功能,Jupiter主题本身就具有该功能。同时在JupiterX中,它存在于JupiterX核心插件中。
他写道,含有漏洞的版本会执行注册AJAX动作,但并不执行任何权限检查或Nonce检查。
在安装了含有漏洞的Jupiter Theme版本的网站上,任何登录的用户都可以通过发送AJAX请求,将动作参数设置为abb_uninstall_template,同时将自己的权限提升到管理员的权限。这将调用uninstallTemplate函数,该函数将调用resetWordpressDatabase函数,从而能够重新安装网站,使得当前登录的用户成为新网站的所有者。
他说,在安装了含有漏洞的JupiterX Core插件的网站上,任何人都可以通过发送AJAX请求,将动作参数设置为jupiterx_core_cp_uninstall_template,来进行其他恶意攻击。
WordPress的插件,通常是由第三方开发者开发的,经常会不可避免的出现各种漏洞。以前这个流行的网站创建平台的插件中也曾经出现过很多漏洞使得网站可能被恶意接管,以及使攻击者能够彻底删除那些不属于他们的网站,或者攻击者能够伪造给用户发送电子邮件。
在Gall发现的其他漏洞中,有三个被追踪为CVE-2022-1656、CVE-2022-1658和CVE-2022-1659被评为中等风险,另一个CVE-2022-1657则被评为高风险。
高风险漏洞会影响到JupiterX Theme 2.0.6或更早版本和Jupiter Theme 6.10.1或更早版本,可以让攻击者获得网站的特权信息,如nonce值,或执行其他受限制的操作。这可以通过包含和执行网站上任何位置的文件来实现。
Gall解释说:"含有漏洞的Jupiter和JupiterX主题允许登录的用户,包括订阅级别的用户进行路径遍历和本地文件包含"。
在JupiterX主题中,可以通过使用lib/admin/control-panel/control-panel.php文件中的jupiterx_cp_load_pane_action AJAX动作来调用load_control_panel_pane函数。攻击者有可能通过使用这个动作,使用slug参数包含本地任意的PHP文件。
他说,Jupiter主题也有一个几乎是相同的漏洞,攻击者可以通过framework/admin/control-panel/logic/functions.php文件中存在的mka_cp_load_pane_action AJAX动作,调用mka_cp_load_pane_action函数来利用这个漏洞。
为保护Wordfence Premium、Wordfence Care和Wordfence Response客户,Wordfence研究人员建议使用受影响主题的人立即更新到修补过的版本。
参考及来源:https://threatpost.com/vulnerability-wordpress-themes-site-takeover/179672/