0x00 环境准备

XIAOCMS官网: http://www.xiaocms.com/

网站源码版本:XiaoCms (发布时间:2014-12-29)

程序源码下载:http://www.xiaocms.com/download/XiaoCms_20141229.zip

测试网站首页:

0x01 代码分析

1、漏洞文件位置:/admin/controller/database.php 第38-56行:

  1. public function importAction() {
  2. $dir  = DATA_DIR .  'bakup' . DIRECTORY_SEPARATOR;
  3. $path = $this->get('path');
  4. if ($path && is_dir($dir . $path)) {
  5. $fileid = $this->get('fileid');
  6. $this->importdb($path, $fileid);
  7. exit;
  8. }
  9. if ($this->post('submit')) {
  10. 10.             $paths    = $this->post('paths');
  11. 11.             if (is_array($paths)) {
  12. 12.                 foreach ($paths as $path) {
  13. 13.
  14. 14.                     delete_dir($dir . $path .'/' );
  15. 15.                     @rmdir($dir . $path );
  16. 16.                 }
  17. 17.             }
  18. 18.             $this->show_message('操作成功', 1,url('database/import'));
  19. 19.         }

在这段函数中,首先判断参数path/dir是否存在,如果存在就导入数据备份文件,继续往下走,判断是否获取sumbmit、paths参数,遍历数组,接着删除数组中提交的文件目录。可以看到参数并未进行任何过滤或处理,导致程序在实现上存在任意文件删除漏洞,攻击者可通过该漏洞删除任意文件。

0x02 漏洞利用

1、在网站根目录新建test目录。作为漏洞测试目录:

2、构造URL参数,可成功删除根目录下的test目录

3、当提交的参数paths[]=..\\..\\时,可删除整个网站根目录,如果继续往上遍历,将删除整个服务器文件,存在较大的威胁。

0x03 修复建议

1、对于要删除的文件,通过正则判断用户输入的参数的格式,看输入的格式是否合法。

最后

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

【代码审计】XIAOCMS_后台database.php页面存在任意文件删除漏洞的更多相关文章

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  9. Wordpress4.9.6 任意文件删除漏洞复现分析

    第一章 漏洞简介及危害分析 1.1漏洞介绍 WordPress可以说是当今最受欢迎的(我想说没有之一)基于PHP的开源CMS,其目前的全球用户高达数百万,并拥有超过4600万次的超高下载量.它是一个开 ...

随机推荐

  1. C#高级编程9 第18章 部署

    C#高级编程9 第18章 部署 使用 XCopy 进行部署 本主题演示如何通过将应用程序文件从一台计算机复制到另一台计算机来部署应用程序. 1.将项目中生成的程序集复制到目标计算机,生成的程序集位于项 ...

  2. Matplotlib新手上路(下)

    接上篇继续,这次来演示下如何做动画,以及加载图片 一.动画图 import numpy as np import matplotlib.pyplot as plt import matplotlib. ...

  3. 嵌入式Linux学习(一)

    嵌入式系统 嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分.通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板.事实上,所有带有数字接口的设备,如手表.微波炉.录像机.汽车等, ...

  4. Detour3.0 win7 64bit下的安装

    最近在做API hook相关的东西,用了inline hook后感觉不错,但是查找资料发现inline hook并不稳定 inline hook 的原理是在系统访问一个函数的时候先替换原函数入口处的内 ...

  5. 给你的 CentOS 7 安装中文支持

    今天给大家分享个给 CentOS 7 安装中文支持的方法,所谓“中文支持”目前明月观测到的是指命令行提示支持中文提示显示,还有就是 Vim 启动后看到的也是有中文提是的界面包括 Vim 内各种提示也会 ...

  6. [Spring Unit Testing] Spring Unit Testing with a Java Context

    For example, we want to test against a implemataion: package com.example.in28minutes.basic; import o ...

  7. Effective Java 第三版——45. 明智审慎地使用Stream

    Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...

  8. Blink

    https://help.aliyun.com/document_detail/66088.html?spm=a2c4g.11186623.6.602.58ff5686FP4Ihh

  9. flink source code

    https://github.com/apache/flink/tree/master/docs https://github.com/flink-china/1.6.0 https://github ...

  10. 每日英语:The Right Way to Network

    With startup-themed conferences, hackathons, meet-ups and cocktail hours regularly taking place, ent ...