官网:http://www.dcrcms.com/
简介:稻草人cms基于PHP+Sqlite/MySQL的开源简单小巧的免费企业网站系统
一、down下来源码,首先老规矩,审计工具走起。
发现只有56个漏洞,本着漏洞误报的心理,挑漏洞进行复现。
二、环境搭建
还是使用phpStudy进行一键式搭建。我这里是在虚拟机搭建的,本机做访问使用。
把网站的源码复制进根目录,启动phpStudy。
一路安装
安装完成
三、漏洞复现
1、直接访问数据库文件型
二、重安装漏洞型(Getshell)
由于安装文件一般是漏洞的重灾地,于是这里直接跳到了安装文件,果然找到了漏洞点。
在install_action.php中,安装完成后会把前端文件重命名,但是后端逻辑文件依旧存在,所以如果知道安装文件位置即可重安装
这里只重命名了前端文件
而且在文件280行,存在写文件操作,文件名为php且文件内容可控
由于文件内容可控,我们可以通过tablepre=exp来写入一个恶意php文件
tablepre=dcr_qy_';?><?php phpinfo()?>
由于写入的是配置文件,所以访问站点任意文件都会包含此文件,所以还可以当后门来用。
三、任意文件删除漏洞(unlink函数)
全局搜索unlink函数的使用
姿势1、在fmanage_action.php中提供了文件删除功能,但是未对文件路径做过滤,于是可以删除任意文件
cms把所有url变量注册为了全局变量,于是只需访问action=del_file&cpath=../../../../../../../1.txt即可删除任意文件
姿势2、cls_dir类中也存在一个任意文件删除漏洞
cache_clear.php引用了这个类
通过控制url参数tpl_dir即可任意文件删除。
想了解更多 欢迎关注 跪求多多转发
本文分享自微信公众号 - 洛米唯熊(luomiweixiong)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
来源:oschina
链接:https://my.oschina.net/u/4581868/blog/4381243