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

admin 2020年9月26日09:00:50评论311 views字数 1175阅读3分55秒阅读模式


上方蓝色字体关注我们,一起学安全!
作者:daxi0ng@Timeline Sec
本文字数:732
阅读时长:2~3min
声明:请勿用作违法用途,否则后果自负


0x01 简介

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


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


0x02 漏洞概述

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


0x03 影响版本



wpDiscuz7.0.0–7.0.4


0x04 环境搭建

Wordpress5.4.1下载地址

https://cn.wordpress.org/wordpress-5.4.1-zh_CN.tar.gz


wpDiscuz7.0.3下载地址

https://downloads.wordpress.org/plugin/wpdiscuz.7.0.3.zip


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

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


0x05 漏洞复现


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


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


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


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


3、访问上传的文件。

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


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


0x06 修复方式


升级wpDiscuz版本。

https://downloads.wordpress.org/plugin/wpdiscuz.7.0.7.zip


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


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


0x07 踩坑经验


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

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


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


使用其他版本搭建


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


参考链接:

https://xz.aliyun.com/t/8138



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

WordPress评论插件wpDiscuz任意文件上传复现
阅读原文看更多复现文章
Timeline Sec 团队
安全路上,与你并肩前行





  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2020年9月26日09:00:50
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   WordPress评论插件wpDiscuz任意文件上传复现https://cn-sec.com/archives/142728.html

发表评论

匿名网友 填写信息