Ninja Forms WordPress 插件漏洞允许网站接管和电子邮件劫持

Andrew 2021-02-18
专栏 - 资讯 发布于 2021-02-18 14:12:42 阅读 43 评论 0

流行的插件已安装在超过一百万个网站上,并且具有四个漏洞,这些漏洞允许各种严重的攻击,包括网站接管和电子邮件劫持。

Ninja Forms是一个由超过一百万个站点使用的WordPress插件,其中包含四个严重的安全漏洞,这些漏洞使远程攻击者可以接管WordPress站点并造成各种问题。

Ninja Forms使WordPress网站设计师可以使用拖放功能创建表单,而无需任何编码技能。

这四个漏洞使特权较低的用户(甚至只是简单地注册了站点的用户)也可以进行一系列恶意活动。这包括窃听站点电子邮件,接管管理员帐户,将任意加载项安装到目标站点以及将站点所有者重定向到恶意目标。

其中三个漏洞确实需要社会工程学才能成功。

漏洞1:使用SendWP插件通过身份验证的电子邮件劫持和帐户接管

研究人员说,第一个漏洞使拥有订阅级或更高访问权限的攻击者滥用SendWP拦截所有邮件流量,包括管理帐户的密码重置链接。SendWP是电子邮件传递和日志记录服务,旨在简化使用WordPress的邮件处理。

具有订阅者或更高权限访问易受攻击的WordPress站点的攻击者可以使用自己的SendWP帐户建立一个SendWP连接,以便将WordPress站点中的所有邮件都路由通过并登录到攻击者的SendWP帐户中。

据Wordfence称,如果被利用,最终可能会通过使用管理员帐户修改主题/插件文件或上传恶意主题/插件来导致远程代码执行和网站接管,该漏洞还带来了9.9的CVSS评估。 10(CVE尚待解决所有错误)。

研究人员警告说:“到那时,他们可以监视所有通过电子邮件发送的数据,从表单提交的用户个人识别信息(PII)到您网站上生成的报告。” “此外,如果攻击者可以发现帐户的用户名,则攻击者可能会触发重置管理用户帐户的密码。”

根据周二发布的Wordfence分析,实现这一目标并不困难。

研究人员解释说:“为了提供此功能,该插件会注册AJAX操作wp_ajax_ninja_forms_sendwp_remote_install。” “此AJAX操作与wp_ajax_ninja_forms_sendwp_remote_install_handler函数绑定在一起,该函数检查是否已安装并激活SendWP插件。如果当前未安装该插件,则它将执行SendWP插件的安装和激活。”

成功安装插件后,该函数将返回注册URL,以及client_name,client_secret,register_url和client_url。这用于向用户显示注册页面,并轻松地将其WordPress实例与SendWP连接。

“很不幸,此AJAX操作没有功能检查,也没有任何随机数保护,因此使低级用户(例如订户)可以安装和激活SendWP插件并检索所需的client_secret密钥根据分析,建立“ SendWP连接”。

研究人员指出,SendWP是付费的附加组件,每个站点每月花费9美元,这可能会缓解广泛的自动化利用。

漏洞2:经过验证的OAuth连接密钥披露

第二个漏洞的CVSS估计值为7.7,并且存在于Ninja Forms“附加组件管理器”服务中,该服务是一个集中式仪表板,允许用户远程管理所有购买的Ninja Forms附加组件。

根据Wordfence的说法,攻击者可以使用自己的帐户为易受攻击的WordPress网站建立OAuth连接,并能够在他们选择的目标网站上安装所有购买的插件。

为了完成恶意连接,攻击者将需要诱使站点管理员单击特殊链接,以更改的AJAX操作来更新站点数据库中的client_id参数。

分析称:“该插件注册了AJAX操作wp_ajax_nf_oauth,该操作用于检索包含必需信息的connection_url(例如client_secret),以与Ninja Forms附件管理门户建立OAuth连接。” “不幸的是,没有对此功能进行功能检查。”

这意味着低级用户(例如订户)能够触发操作并检索与仪表板建立连接所需的连接URL。研究人员说,攻击者还可以为已经建立的OAuth连接检索client_id。

漏洞3:跨站点请求伪造OAuth服务断开连接

第三个漏洞是Ninja Forms附加组件管理器仅需单击几下即可轻松断开已建立的OAuth连接的功能。该漏洞的CVSS等级为6.1,使其具有中等严重性。

攻击者可以发送断开当前OAuth连接的请求-Wordfence指出,这“对于网站所有者来说可能是令人困惑的体验”。为此,他们需要制作一个合法的请求,将其托管在外部,并诱使管理员单击链接或附件。

“为了提供此功能,该插件注册了一个AJAX操作wp_ajax_nf_oauth_disconnect并绑定到函数disable()。Wordfence表示,disconnect()函数将通过删除与数据库中的连接设置关联的选项来简单地断开已建立的连接。“很遗憾,此功能没有随机数保护。”

漏洞4:管理员打开重定向

OAuth连接过程中存在最后一个问题。严重等级为CVSS 4.8。

要利用此漏洞,攻击者需要制作一个特殊的URL,并将重定向参数设置为任意站点,然后对管理员进行社交工程以使其单击链接。如果成功,则可以将管理员重定向到外部恶意站点,该站点可能利用恶意软件感染管理员的计算机。

“该插件注册了一个AJAX操作wp_ajax_nf_oauth_connect,该操作已注册到函数connect(),该函数用于在用户完成OAuth连接过程后将网站所有者重定向回WordPress网站的Ninja Forms服务页面,”分析。“默认情况下,此函数使用wp_safe_redirect将网站所有者重定向回admin.php?page = ninja-forms#services页面。”

但是,问题是可以将“ redirect”参数换成不同的值,从而将站点管理员重定向到该参数中提供的任意URL。

研究人员解释说:“重定向URL上没有任何保护措施可以验证重定向的位置,也没有任何保护措施可以防止攻击者使用该功能将站点管理员重定向到恶意位置。” “虽然使用了wp_verify_nonce(),但已将其注释掉并使其无法使用。”

插件的母公司Saturday Drive已修补了所有漏洞,已在3.4.34.1版中修复。

WordPress插件安全问题

WordPress插件仍然存在严重漏洞。今年1月,研究人员警告一个名为Orbit Fox的WordPress插件中的两个漏洞(一个严重),攻击者可以利用该漏洞将恶意代码注入易受攻击的网站和/或控制网站。

同样在1月份,WordPress网站用于构建新闻订阅的弹出广告的名为Popup Builder –响应式WordPress弹出–订阅和新闻通讯插件的开发人员发布了一个严重漏洞。攻击者可能利用此漏洞发送带有自定义内容的新闻通讯,或者删除或导入新闻通讯订阅者。

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!