0x00 前言

因为我是跟着视频操作的,这回真的没理解为什么定位到了这个存在漏洞的文件。。。 /do/fujsarticle.php

因为没有前文,所以这里无法分析这个$FileName为什么可以$_GET传值,此处我只看结果。

后来看的时候发现可以逆推过来,应该是本来有哪个功能用到fujsarticle.php文件,这里就不纠结了。

0x01 操作

在包含全局配置文件前后输出一下这个变量$FileName。

可以看到文件包含后的变量被改写了,test.php写入成功。可以看到do文件夹下会生成一个文件,内容与你选的type有关。

意思就是可以任意生成文件,但不能自定义其内容,并且是覆盖性质的,[w]写入新文件。这里就可以去覆盖掉重要的配置文件,使其失去初始化配置。比如说,我们的数据库初始文件。

C:\phpStudy\PHPTutorial\WWW\qibo_v7\data\mysql_config.php
<?php
/**
* 以下变量需根据您的服务器说明档修改
*/
$dbhost = 'localhost'; // 数据库服务器(一般不必改)
$dbuser = 'root'; // 数据库用户名
$dbpw = 'root'; // 数据库密码
$dbname = 'qibo7'; // 数据库名
$pre='qb_'; // 网站表区分符
$database = 'mysql'; // 数据库类型(一般不必改)
$pconnect = 0; // 数据库是否持久连接(一般不必改)
$dbcharset = 'gbk'; // 数据库编码,如果出现网页乱码,你可以尝试改为gbk或latin1或utf8或big5,即可解决
?>

可以看到,这样操作后,数据库连接受到破坏,已经不能正常访问网站。

http://192.168.79.147/qibo_v7/do/fujsarticle.php?type=pic&FileName=../data\mysql_config.php

我们可以打开该配置文件看看

接下来是写入变量,重新写入数据库连接的变量。

http://192.168.79.147/qibo_v7/index.php?dbhost=localhost&dbuser=root&dbpw=root&dbname=qibo7&pre=qb_&database=mysql&pconnect=0&dbcharset=gbk

这里是设置连接数据库的ip和口令,及数据库名,类型等。

理论上来讲我们是可以用自己建的数据库去替代,但是这在漏洞利用中有些鸡肋,因为,即便如此,你也无法获得他本来的数据。

然鹅!这真的不是很可用的漏洞,你在访问其他的页面时还得每次都赋值,因为这些变量不会写到配置文件中去。

以上,此次学习又让我长见识了啊~

PHP代码审计理解(二)----齐博CMS7.0文件覆盖的更多相关文章

  1. 齐博软件 著名的老牌CMS开源系统 X1.0基于thinkphp开发的高性能免费开源PHP开放平台齐博x1.0基于thinkphp框架开发的高性能免费开源系统 主推圈子 论坛 预定拼团分销商城模块

    齐博X1--标签变量大全 1.网站名称: {$webdb.webname} 2.网址: {$webdb[www_url]} {:get_url('home')} 3.网站SEO关键词: 首页:{$we ...

  2. 齐博X1到底是个什么鬼?

    什么是齐博/齐博CMS之X1? 齐博X1是齐博软件基于thinkphp5开发的内容管理系统,拓展性非常强,后台一键升级,后台提供丰富的频道模块云市插件市场.风格市场.钩子市场,所有都是一键在线安装. ...

  3. 齐博x1到底是怎么的存在?

    齐博X1是齐博软件基于thinkphp5开发的内容管理系统,拓展性非常强,后台一键升级,后台提供丰富的频道模块云市插件市场.风格市场.钩子市场,所有都是一键在线安装. 系统已经对接好QQ.微信登录,同 ...

  4. 齐博cms 7.0 漏洞分析

    ** 0x01 原理分析 ** 还是很早之前爆出来的漏洞,现在拿出来学习一下,参考阿里巴巴: https://security.alibaba.com/... 漏洞发生在/inc/common.inc ...

  5. PHP代码审计理解(一)----Metinfo5.0变量覆盖

    0x01 漏洞简介 这个漏洞是metinfo5.0变量覆盖漏洞,并且需要结合文件包含.我使用的cms版本是5.3,事实上已经修复了这个漏洞(5.0的cms源码已经找不到了哈),但是我们可以借他来学习理 ...

  6. 齐博x1标签实例:标签的嵌套用法,调用聚合数据

    齐博标签非常强大,可以让不懂程序的你,轻松就能实现所见即所得. 下面跟大家讲解一下,最复杂的运用, 同时使用了union 动态变量参数 与 分页处理标签 比如下面这张图,不仅仅想调用圈子,还想同时调用 ...

  7. 齐博x1模块安装文件讲解

    频道模块存放的目录是/application/频道目录/ 插件存放的目录是/plugins/插件目录/ 他的安装目录都是/install/ 推荐参考默认的/application/cms/instal ...

  8. Senparc.Weixin.MP SDK 微信公众平台开发教程(十二):OAuth2.0说明

    紧接上一篇<Senparc.Weixin.MP SDK 微信公众平台开发教程(十一):高级接口说明>,这里专讲OAuth2.0. 理解OAuth2.0 首先我们通过一张图片来了解一下OAu ...

  9. 齐博软件(地方门户系统) 文件加密破解工具

    原文:齐博软件(地方门户系统) 文件加密破解工具 本程序为针对"齐博软件地方门户系统5.0官方原版"的破解工具,一个垃圾系统居然弄出这么恶心的加密方式,有个鸟用!以后见一个破一个! ...

随机推荐

  1. STM32CubeMx——串口收发

    生成代码 1.配置串口1 2.选择模式 3.开中断 4.其他的RCC.调试都一样,弄完直接生成代码. 串口发送 1.定义一个用来测试的数组并初始化 /* USER CODE BEGIN 0 */ ui ...

  2. 044.集群存储-StorageClass

    一 StoragClass 1.1 StorageClass概述 StorageClass作为对存储资源的抽象定义,对用户设置的PVC申请屏蔽后端存储的细节,一方面减少了用户对于存储资源细节的关注,另 ...

  3. window的三种系统弹框介绍

    <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8 ...

  4. Python python 函数参数:关键字参数

    # 关键字参数 '''关键字参数代表传入任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict ''' def student(name,sex,**keywords): print(' ...

  5. YII2自动初始化脚本

    #!/usr/bin/expect spawn ./init expect "Which environment do you want the application to be init ...

  6. Premultiplied Alpha

    Xcode 的工程选项里有一项 Compress PNG Files,会对 PNG 进行 Premultiplied Alpha.游戏开发中会更加关注这个格式,省一些运行时计算. Premultipl ...

  7. mysql的Ft_hints: no_ranking

    是不是发现找遍全网也没有找到相关资料? 巧了,我也是,所以我这里来进行一次大胆分析(基本靠猜) 在使用mysql的fulltext索引(全文索引)时,使用explain则会在extra中出现这句提示: ...

  8. PHP序列化及反序列化分析学习小结

    PHP反序列化 最近又遇到php反序列化,就顺便来做个总结. 0x01 PHP序列化和反序列化 php序列化:php对象 序列化的最主要的用处就是在传递和保存对象的时候,保证对象的完整性和可传递性.序 ...

  9. python数据分析工具 | matplotlib

    不论是数据挖掘还是数学建模,都免不了数据可视化的问题.对于 Python 来说,matplotlib 是最著名的绘图库,它主要用于二维绘图,当然也可以进行简单的三维绘图.它不但提供了一整套和 Matl ...

  10. Java并发基础10:原子性操作类的使用

    在 java5 以后,我们接触到了线程原子性操作,也就是在修改时我们只需要保证它的那个瞬间是安全的即可,经过相应的包装后可以再处理对象的并发修改,本文总结一下Atomic系列的类的使用方法,其中包含: ...