wordpress 安全服务机构 plugin vulnerabilities 发现,目前有 500 万安装量的 wordpress 页面构建插件存在远程代码执行的漏洞。

plugin vulnerabilities 通过第三方监控数据发现,黑客通过请求以下文件来探测站点是否使用 elementor 的使用:

/wp-content/plugins/elementor/readme.txt

这一不寻常的行为说明可能 elementor 可能存在安全漏洞,所以 plugin vulnerabilities 做了一些标准的安全检查,因为很多应该做权限判断的地方都没有处理,并且还有一处可能存在最严重的安全漏洞:rce(远程代码执行的漏洞)。

尽管利用该漏洞时需要身份验证,但是有漏洞网站的任意权限的登录用户都可以利用该漏洞,包括最普通权限的用户。

rce 漏洞细节

elementor 插件文件 "module.php" 缺乏关键的访问权限检查,导致该文件在 admin_init hook 的每个请求中都被加载,即使没有登录的用户,也是如此。

如果 admin_init 根据请求的调用了upload_and_install_pro() 函数,该函数将安装随请求发送的 wordpress 插件,攻击者就可以将恶意文件放在里面以实现远程代码执行。

该漏洞是在 3 月 22 日发布的 elementor 3.6.0 版本的插件中引入的,根据 wordpress 的最新统计数据,该插件的 30.3% 的用户现在使用的是 3.6.x 版本。

最新的 3.6.3 版本包括一个提交功能,使用 "current_user_can" wordpress 函数判断只有管理员才能执行该操作,实现了对 nonce 访问的额外权限检查。

elementor 值得使用吗?

elementor 这个 wordpress 页面构建起创建的页面,一个页面竟然有100多个 css 文件,还有几十个 js 文件,几乎没法优化!

我一向不太建议使用这些 wordpress 页面构建器,因为基本没有办法去优化,但是很多用户觉得这些页面构建器比较方便。

可能易用性和性能就是一对矛盾体,我自己给花生小店店铺装修做的页面模块功能,为了保证效率,定制能力也只有一定的范围。