漏洞预警|WordPress 5.0.0远程代码执行漏洞
2019-03-17
事件来源
近日,RIPS团队在官网公开了一篇WordPress 5.0.0 Remote Code Execution,CVE编号CVE-2019-6977,漏洞是在author权限账号下,可以通过修改Post Meta变量覆盖、目录穿越写文件、文件包含3个漏洞构成一个RCE漏洞。
漏洞描述
此漏洞存在于5.1.1之前的WordPress版本中,可以在默认设置下被利用,根据WordPress官方下载页面,超过33%的互联网网站正在使用WordPress。
文章评论是博客的核心功能并且默认情况下已启用,该漏洞会影响数百万个网站。
技术细节
详细分析整个利用过程,可以简单的把漏洞利用链分为4个部分:
1、通过Post Meta变量覆盖,修改媒体库中图片的_wp_attached_file变量。
这个漏洞是整个利用链的核心点,而WordPress的修复方式也主要是先修复了这个漏洞。WordPress在所有的release版本中都修复了这个问题,由于原文中曾提到整个利用链受到4.9.9和5.0.1的另一个安全补丁影响,所以只有5.0.0受影响。
2、通过图片的裁剪功能,将裁剪后的图片写到任意目录下(目录穿越漏洞)
在WordPress的设定中,图片路径可能会收到某个插件的影响而不存在,如果目标图片不在想要的路径下时,WordPress就会把文件路径拼接为形似http://127.0.0.1/wp-content/uploads/2019/02/2.jpg 的url链接,然后从url访问下载原图,如果构造?或者#后面跟路径,就能造成获取图片位置和写入图片位置的不一致,这部分最大问题在于,前端的裁剪功能并不是存在漏洞的函数,我们只能通过手动构造这个裁剪请求来完成。
3、通过Post Meta变量覆盖,设置_wp_page_template变量。
这部分在原文中一笔带过,也是整个分析过程中最大的问题,现在公开的所有所谓的WordPress RCE分析,都绕开了这部分。其中有两个最重要的点:
如何设置这个变量?
如何触发这个模板引用?
4、如何让图片在被裁剪过之后,保留或者出现包含php敏感代码。
这部分就涉及到了后端图片库的问题,WordPress用到的后端图片处理库有两个,gd和imagick,其中默认优先使用imagick做处理。
imagick
利用稍微比较简单,imagick不会处理图片中的exif部分。将敏感代码加入到exif部分就可以不会改动。gd
gd的利用就比较麻烦了,gd不但会处理图片的exif部分,还会删除图片中出现的php代码。除非攻击者通过fuzz获得一张精心构造的图片,可以在被裁剪处理之后刚好出现需要的php代码。
最后通过链接上述4个流程,就可以完整的利用这个漏洞了。
整个RCE的利用链由4部分组成,深入WordPress的底层Core逻辑,原本来说这4个部分无论哪个都很难造成什么危害,但却巧妙地连接在一起,并且整个部分意外的都是默认配置,大大增加了影响面。
影响范围
WordPress <= 5.1.1
漏洞约束条件:
WordPress commit <= 43bdb0e193955145a5ab1137890bb798bce5f0d2 (WordPress 5.1-alpha-44280)
拥有一个author权限的账号
漏洞危害
严重
漏洞防护
wp默认开启自动更新,最新版本中已经得到修复,若关闭自动更新的环境,请及时检查更新。
参考信息
1.https://wordpress.org/news/2019/03/wordpress-5-1-1-security-and-maintenance-release/
2.https://blog.ripstech.com/2019/wordpress-csrf-to-rce/
3.https://paper.seebug.org/822/
如需帮助请咨询 hscert@hillstonenet.com
关于我们山石瞭望是山石网科一群热爱生活、热爱工作、专注网络安全的安全工程师团队,依赖多年的安全经验搜罗全网,从而推出的一个安全动态和威胁情报共享平台,每天定时推送,可为用户提供及时最新的威胁动态。最终帮助用户更好的了解企业面临的威胁,从传统的“知己”过渡到“知彼知己”。
企业关注山石瞭望,提升企业的安全能力。
个人关注山石瞭望,保护自己的个人信息。
![4ff66ab48787fcdd3cb75e60abaf9cc3.png](https://img-blog.csdnimg.cn/img_convert/4ff66ab48787fcdd3cb75e60abaf9cc3.png)
![0d34b48db229da438cd42ff41105c611.png](https://img-blog.csdnimg.cn/img_convert/0d34b48db229da438cd42ff41105c611.png)