CVE-2018-20129-DedeCMS V5.7 SP2前台文件上传漏洞复现
- 2019 年 10 月 6 日
- 笔记
0x01 漏洞概述
DedeCMS 5.7 SP2版本中的uploads/include/dialog/select_images_post.php文件存在文件上传漏洞,远程攻击者可利用该漏洞上传并执行任意PHP代码。
最新的DEDECMS系统存在前台文件上传漏洞,需要管理员打开会员中心,访问链接:
http://127.0.0.1/dedecms/member/archives_sg_add.php?channelid=-8上传即可绕过。
0x02 环境配置
下载完源码包安装之后,进入到后台在【系统】-【系统基本参数】-【会员设置】中开启会员注册,并开启会员权限开通状态,即就是不用审核。
![](https://ask.qcloudimg.com/http-save/yehe-6304881/fti0j15vxm.jpeg)
然后关闭邮件审核,文章审核以及会员不用知道管理目录就可以上传图片,需要分别修改如下文件代码,当然有些生产环境下的这些功能是正常的,所以其实并不用修改。
![](https://ask.qcloudimg.com/http-save/yehe-6304881/adjaoaa956.jpeg)
![](https://ask.qcloudimg.com/http-save/yehe-6304881/nvoqj6qtjc.jpeg)
![](https://ask.qcloudimg.com/http-save/yehe-6304881/erqgjq6k59.jpeg)
0x03漏洞利用
注册一个会员账户test123,然后登陆会员中心。
![](https://ask.qcloudimg.com/http-save/yehe-6304881/8o3401lawu.jpeg)
然后点击分类信息-发表文章
![](https://ask.qcloudimg.com/http-save/yehe-6304881/2qjcgf7h8f.jpeg)
点击图片,上传准备好的一句话图片文件。
![](https://ask.qcloudimg.com/http-save/yehe-6304881/fn9lq0py0m.jpeg)
使用bp抓包,然后修改文件名为php.gif.p*hp
![](https://ask.qcloudimg.com/http-save/yehe-6304881/cz9bx2s1vy.jpeg)
发送得到shell响应链接:
![](https://ask.qcloudimg.com/http-save/yehe-6304881/qhh94fbito.jpeg)
![](https://ask.qcloudimg.com/http-save/yehe-6304881/k1619q2g6o.jpeg)
然后使用菜刀访问即可链接
![](https://ask.qcloudimg.com/http-save/yehe-6304881/axm6hf8mga.png)
![](https://ask.qcloudimg.com/http-save/yehe-6304881/te3j1a3tsp.png)
![](https://ask.qcloudimg.com/http-save/yehe-6304881/iy1lzm9yth.jpeg)
拿到管理员权限。
0x04 漏洞修复
1.文件后缀名检测进行重写。
2.对上传文件名进行统一重命名,后缀名只允许为image type类型。
3.对上传文件夹进行限制,不允许执行php。