知名WordPress主题Pagelines和Platform存在高危漏洞 -备考资料

备考资料 时间:2019-01-01 我要投稿
【www.unjs.com - 备考资料】

    使用Pagelines和Platform主题的WordPress用户注意了,请尽快更新主题的版本,

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

。我们在一次对WAF例行审计时,偶然发现了两个严重漏洞:一个权限提升漏洞(影响Pagelines和Platform),以及一个远程代码执行漏洞(影响Platform)。

    漏洞简介

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

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

    技术细节

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

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

   

    无论登录用户是什么权限,wp_ajax_钩子对用户来说都是可用的,

备考资料

知名WordPress主题Pagelines和Platform存在高危漏洞》(https://www.unjs.com)。订阅用户可以使用hook重写在WordPress选项库里的任何一项。比如,他们可以重写default_role的值为administrator,这将给予网站的每一个新用户管理权限!

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

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

   

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

   

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

   

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

    使用Pagelines和Platform主题的WordPress用户注意了,请尽快更新主题的版本,

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

。我们在一次对WAF例行审计时,偶然发现了两个严重漏洞:一个权限提升漏洞(影响Pagelines和Platform),以及一个远程代码执行漏洞(影响Platform)。

    漏洞简介

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

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

    技术细节

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

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

   

    无论登录用户是什么权限,wp_ajax_钩子对用户来说都是可用的,

备考资料

知名WordPress主题Pagelines和Platform存在高危漏洞》(https://www.unjs.com)。订阅用户可以使用hook重写在WordPress选项库里的任何一项。比如,他们可以重写default_role的值为administrator,这将给予网站的每一个新用户管理权限!

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

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

   

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

   

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

   

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