E安全1月18日讯,近日,据外媒报道,两个WordPress中的插件InfiniteWP Client和WP Time Capsule出现相同的身份验证漏洞该漏洞可以使攻击者无需密码就可以访问网站的后端。据悉,该漏洞于2020年1月7日首次被发现,第二天,开发人员就及时发布了新版本的插件,随后,WebArx在本周星期二公开披露了这些错误。

据了解,本来这两个插件的服务目的是允许用户从一个中央服务器对多个WordPress安装进行身份验证。根据WordFence表示,该插件可以使站点的拥有者可以执行维护指令,例如在所有站点上对核心的插件和主题进行一键式更新和备份等操作,以及同时在多个站点上对插件和主题进行激活和停用。

对此,WebArx的研究人员表示,攻击者只需得到WordPress插件的管理员用户名,他们就可以利用此漏洞来创建概念验证并发起攻击。WebArx研究小组在周三的博客文章概述中表示,两个插件的系统都包含逻辑问题,使黑客无需密码即可登录管理员帐户,这个漏洞是非常危险的。根据了解,根据WordPressd的插件库数据统计,有大约300,000个网站正在运行易受攻击的InfiniteWP Client插件版本。与此同时,根据研究小组的数据统计,WP Time Capsule插件在也在大约20,000个网站上有效。

InfiniteWP客户端错误

据WebArx表示,针对此次泄露受到特别严重影响的是1.9.4.5以下的InfiniteWP Client插件版本。对这个版本概念验证的方法非常简单,通用漏洞评分系统(CVSS)上该漏洞得了9.8级,或者说是临界等级。

对于,概念验证攻击首先需要使用JSON编码的有效负载,然后是Base64,接下来,它将以POST请求的形式将其原始信息发送到目标站点。对于该漏洞,主要问题出在init.php文件中的函数iwp_mmb_set_request中。WebArx解释称,这个函数可以检查IWP_MMB_Core类的request_params变量是否为空,而且只有在有效负载满足某些特定条件时才会填充该变量。WebArx还表示称,对于此次漏洞的攻击,攻击者提供的用户名将用于以用户身份登录,而无需执行任何进一步的身份验证,没有密码更没有问题。

有研究人员对此表示,在本例中,黑客攻击的主要条件是负载的iwp_action参数必须等于readd_site或add_site,因为它们是惟一没有进行授权检查的操作,而缺少授权检查就是这个漏洞存在的原因

WP Time Capsule漏洞

至于WP Time Capsule中的漏洞,研究人员表示低于1.21.16的版本是易受攻击的。对于WP Time Capsule插件,其有效负载可以说是更简单的,只需要在原始POST请求的正文中包含某个字符串即可。研究人员表示,该问题位于wptc-cron-functions.php第12行中,parse_request函数调用decode_server_request_wptc函数,该函数应该检查原始POST有效负载是否包含字符串‘IWP_JSON_PREFIX’。

所以,该漏洞的简短版本应该是“如果请求包含此字符串,那么它将调用wptc_login_as_admin,同时它将获取所有可用的管理员帐户,并使用列表中的第一个帐户,您将以管理员身份登录”。

如何缓解漏洞带来的影响

对于针对漏洞攻击的防御,WebArx还表示称,在涉及此漏洞时,防火墙可能会给用户带来错误的安全感。因为,由于身份验证绕过漏洞通常是代码中的逻辑错误,并且实际上并不涉及看似可疑的有效载荷,因此很难找到并确定这些问题的来源。他们补充表示,由于对有效负载进行了编码,因此可能很难将其与合法的有效负载区分开。

研究人员还表示由于该漏洞的性质,基于云的防火墙可能无法在恶意或合法流量之间产生影响,因此可能无法有效地防御此漏洞。所以,要解决问题需要更新两个插件的软件版本。

声明:本文来自E安全,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。