前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WordPress评论插件wpDiscuz任意文件上传复现

WordPress评论插件wpDiscuz任意文件上传复现

作者头像
Timeline Sec
发布2020-10-09 14:36:42
1.3K0
发布2020-10-09 14:36:42
举报
文章被收录于专栏:Timeline SecTimeline Sec

wpDiscuz是WordPress评论插件。创新,现代且功能丰富的评论系统,可充实您的网站评论部分。

0x02 漏洞概述

Wordfence的威胁情报团队在一款名叫wpDiscuz的Wordpress评论插件中发现了一个高危漏洞,而这款插件目前已有超过80000个网站在使用了。这个漏洞将允许未经认证的攻击者在目标站点中上传任意文件,其中也包括PHP文件,该漏洞甚至还允许攻击者在目标站点的服务器中实现远程代码执行。

0x03 影响版本

wpDiscuz7.0.0–7.0.4

0x04 环境搭建

Wordpress5.4.1下载地址

代码语言:javascript
复制
https://cn.wordpress.org/wordpress-5.4.1-zh_CN.tar.gz

wpDiscuz7.0.3下载地址

代码语言:javascript
复制
https://downloads.wordpress.org/plugin/wpdiscuz.7.0.3.zip

用phpstudy搭建Wordpress,然后将wpdiscuz放到\wordpress\wp-content\plugins目录下,进入Wordpress后台插件页面启动即可。

0x05 漏洞复现

1、进入首页默认文章的评论处。点击图片标签。

2、wpDiscuz插件会使用mime_content_type函数来获取MIME类型,但是该函数在获取MIME类型是通过文件的十六进制起始字节来判断,所以只要文件头符合图片类型即可。

3、访问上传的文件。

http://127.0.0.1////wordpress////wp-content////uploads////2020////09////1-1600845408.8181.php

0x06 修复方式

升级wpDiscuz版本。

代码语言:javascript
复制
https://downloads.wordpress.org/plugin/wpdiscuz.7.0.7.zip

isAllowedFileType函数中对extension后缀进行了检测,当MIME与后缀不一样时会在进入最后一步之前返回False,也就是说使用MIME的白名单来对上传文件的后缀进行了限制。

0x07 踩坑经验

分析有很多师傅分析过了,我就说下我遇到的问题。

1、搭建wp的时候,getMimeType函数的前两个if判断默认函数是否被定义都返回False,然后跳到了wordpress自带的wp_check_filetype函数中,就会绕过失败。后换了一个工具搭建wp就没有这个问题。

使用其他版本搭建

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-09-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Timeline Sec 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
网站建设
网站建设(Website Design Service,WDS),是帮助您快速搭建企业网站的服务。通过自助模板建站工具及专业设计服务,无需了解代码技术,即可自由拖拽模块,可视化完成网站管理。全功能管理后台操作方便,一次更新,数据多端同步,省时省心。使用网站建设服务,您无需维持技术和设计师团队,即可快速实现网站上线,达到企业数字化转型的目的。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档