漏洞预警:知名WordPress主题Pagelines和Platform存在高危漏洞

jopen 9年前

原文  http://www.freebuf.com/news/57453.html

使用Pagelines和Platform主题的WordPress用户注意了,请尽快更新主题的版本。我们在一次对WAF例行审计时,偶然发现 了两个严重漏洞:一个权限提升漏洞(影响Pagelines和Platform),以及一个远程代码执行漏洞(影响Platform)。

漏洞简介

某个WordPress网站如果使用了Platform主题(版本号小于1.4.4),黑客就可以轻易取得该网站的权限。

黑客可以利用恶意软件、SEO垃圾邮件以及其他方式,执行PHP代码来感染你的网站。在使用了主题Pagelines(版本号小于1.4.6)的 WordPress网站中,黑客只要注册一个账号,就可以使用权限提升exp进行攻击。提升权限后黑客可以做许多事,包括使用WordPress主题文件 编辑器。

技术细节

1.Pagelines和Platform主题的权限提升漏洞:

以上两种主题使用WordPress的ajax hook对某些设置进行了更改:

漏洞预警:知名WordPress主题Pagelines和Platform存在高危漏洞

无论登录用户是什么权限,wp_ajax_钩子对用户来说都是可用的。订阅用户可以使用hook重写在WordPress选项库里的任何一项。比如,他们可以重写default_role的值为administrator,这将给予网站的每一个新用户管理权限!

2.Platform主题的远程代码执行漏洞:

该主题使用了不合理的方式来导入主题设置的备份文件:

漏洞预警:知名WordPress主题Pagelines和Platform存在高危漏洞

如你在图片看到的那样,该主题使用include()函数导入了备份文件。其实它本身不一定存在漏洞,我们到现在还未弄清是否未经认证的用户也能 触发这段代码。由于以上诸多原因,我们决定回过头来审计下代码,结果发现它调用了pagelines_register_settings()。

漏洞预警:知名WordPress主题Pagelines和Platform存在高危漏洞

由上图可知,pagelines_register_settings()是与admin_init的hook挂钩的。因此,当访客访问了 /wp-admin/admin-post.php或者/wp-admin/admin-ajax.php时,就可以通过触发admin_init执行备 份文件里的代码,从而轻松获得网站权限。

漏洞预警:知名WordPress主题Pagelines和Platform存在高危漏洞

如果有站长正在使用上述两种主题存在漏洞的版本,请尽快更新。如果由于某种原因不能切换到新的版本,我们强烈建议使用WAF。

[参考来源 sucuri ,由 FreeBuf小编dawner翻译整理,转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)]

</div>