wordpress会有漏洞吗

2021-07-30 0 4,569

wordpress会有漏洞吗

根据CVE官方漏洞通报得知wordpress新出一个组合式rce漏洞,漏洞编号分别为CVE-2019-8943和CVE-2019-8942,下载漏洞版本源码,分析漏洞触发过程,注:漏洞复现时一定要断网搭建,wordpress在联网状态时会自动更新代码包。找到漏洞发生文件post.php,wordpress有多个post.php文件,这里简要说明一下各自的作用,wp-includes/post.php为post的源文件,wp-admin/includes/post.php为有后台权限的post接口,wp-admin/post.php为后台post的请求处理,具体调用代码如下:

wp-admin/post.php:require_once( dirname( __FILE__ ) . '/admin.php' );
wp-admin/admin.php:require_once(ABSPATH . 'wp-admin/includes/admin.php');
wp-admin/includes/admin.php:require_once(ABSPATH . 'wp-admin/includes/post.php');
wp-admin/admin.php::require_once(dirname(dirname(__FILE__)) . '/wp-load.php');
wp-load.php:require_once( dirname( ABSPATH ) . '/wp-config.php' );
wp-config.php:require_once(ABSPATH . 'wp-settings.php');
wp-settings.php:require( ABSPATH . WPINC . '/post.php' );
define( 'WPINC', 'wp-includes' );

根据以上调用流程,漏洞利用流程为上传一个图片到媒体库,然后进行更新操作,调用wp-admin/post.php函数,并根据switch到case:editpost,如下图所示:

wordpress会有漏洞吗

其中edit_post为漏洞函数,进入函数声明,如下图所示:

wordpress会有漏洞吗

$post_data为post数组,并未作任何过滤防护,对此产生了之后的漏洞,对比修复后的代码,如下图所示:

wordpress会有漏洞吗

在此我多说两句,因一开始并未发现wordpress在联网时会进行自动更新,所以,我定位了另一个类似漏洞点,如下图所示:

wordpress会有漏洞吗

以上代码会根据传入的meta数组进行update_meta,根据代码中的$key(数据库中的meta_id),$value[‘key’](数据库中的meta_key),$value[‘value’](数据库中的meta_value),构造meta[1][key]=_wp_attached_file&meta[1][value]=123,最终执行类似以下数据库语句UPDATE `wp_postmeta` SET `meta_key` = '_wp_attached_file', `meta_value` = '123' WHERE `meta_id` = 2,实现过程,如下图所示:

wordpress会有漏洞吗

相关推荐:《WordPress教程》

根据meta_id更新wp_postmeta表中内容,最终执行do_action函数,如下图所示 :

wordpress会有漏洞吗

但是由于第三个和第四个if的限制,导致无法执行成功,这也算是一个漏洞复现上的一个有趣的点吧,继续跟踪,如下图所示:

wordpress会有漏洞吗

找到可利用的点,并根据代码所示,进入wp_updae_post函数,如下图所示:

wordpress会有漏洞吗

此函数会经过一些获取参数的操作,将数组中的变量提取出来并进行赋值,跟踪到漏洞发生点,如下图所示:

wordpress会有漏洞吗

发现返回wp_insert_attachment函数,跟踪此函数,如下图所示:

wordpress会有漏洞吗

返回wp_insert_post函数,跟踪此函数,在此函数中定位到漏洞发生点,如下图所示:

wordpress会有漏洞吗

所以根据以上漏洞点,可传入meta_input[_wp_attached_file] =../evil.jpg?shell.php,执行SQL语句为UPDATE `wp_postmeta` SET `meta_value` = '../evil.jpg?shell.php ' WHERE `post_id` = 8 AND `meta_key` = '_wp_attached_file',测试条件为前提必须知道post_id,不过正常情况下更新图片时会自带此参数,如果是测试的话,可以观察数据库填写相关内容。具体SQL语句嵌套执行方法,如下图所示:

wordpress会有漏洞吗

通过传入参数,赋值到相对应的表名和列名,最终执行do_action函数,如下图所示:

wordpress会有漏洞吗

在此完成wordpress目录遍历漏洞,并在之后利用本地文件包含漏洞执行rce,wordpress官方使用图像库为GD和Imagick,如下图所示:

wordpress会有漏洞吗

其中Imagick并不是wordpress自带,需要下载插件,所以默认可以使用绕过GD库的方法执行任意代码。

以上就是wordpress会有漏洞吗的详细内容,更多请关注php中文网其它相关文章!

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

收藏 (0) 打赏

您的支持是我们前进最大的动力!

打开微信扫一扫,即可进行扫码打赏哦
点赞 (0)

本站声明: 根据2013年1月30日《计算机软件保护条例》2次修订第17条规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬,鉴于此,也希望大家遵守相关法律法规使用、研究软件。 1、本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解。 2、下载用户仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。 3、站内资源均来源于网络公开发表文件或网友投稿发布,如侵犯您的权益,请联系管理员处理。 4、本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用,如有链接无法下载、失效或广告,请联系客服处理。 5、所有资源均收集于互联网仅供学习、参考和研究,请理解这个概念,所以不能保证每个细节都符合你的需求,也可能存在未知的BUG与瑕疵,因本站资源均为可复制品,所 以不支持任何理由的退款兑现,请熟知后再下载。

彤彤模板团 WordPress教程 wordpress会有漏洞吗 https://www.xiaoyuerqingfen.cn/13811.html

一家有态度的精品资源分享平台

常见问题
  • 模板团承诺演示效果图均和网站95%一样,并且我们的模板和数据都没有留后门,请放心使用。
查看详情
  • 因为模板具有可复制性和可传播性,模板一旦发货,非质量问题,不支持退换;所以务必请您一定看清楚后再购买。
查看详情

相关文章

评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务

  • 0 +

    访问总数

  • 0 +

    会员总数

  • 0 +

    资源总数

  • 0 +

    今日发布

  • 0 +

    本周发布

  • 0 +

    运行天数

开通会员,尊享海量资源下载特权