uqcms的后台GetShell和前台越权删除他人图片

颓废 2019年5月19日08:57:43评论770 views字数 1210阅读4分2秒阅读模式
摘要

qucms是一个B2B2C多商户电商系统 结合多年的电商开发经验推出B2B2C多店铺系统,是目前国内最优秀的电商平台之一,系统设计为“平台自营+供应商入驻”的电商运营模式,系统支持佣金结算、区域团购、实时物流、售后服务等基础功能;为电商运营商提供最优质的系统和服务。 该程序采用非常流行的PHP作为开发语言,给很多广大开发者一个容易上手,能快速进入业务,成熟的语言架构,去除无用直达高效的设计,给企业快速开发,赢的市场。


qucms是一个B2B2C多商户电商系统

结合多年的电商开发经验推出B2B2C多店铺系统,是目前国内最优秀的电商平台之一,系统设计为“平台自营+供应商入驻”的电商运营模式,系统支持佣金结算、区域团购、实时物流、售后服务等基础功能;为电商运营商提供最优质的系统和服务。 该程序采用非常流行的PHP作为开发语言,给很多广大开发者一个容易上手,能快速进入业务,成熟的语言架构,去除无用直达高效的设计,给企业快速开发,赢的市场。

1. 后台GETSHELL

打开URLwww.yousite.xxx?m=template后,呈现这个页面:
uqcms的后台GetShell和前台越权删除他人图片
点击进入目录

uqcms的后台GetShell和前台越权删除他人图片
随便点击一个编辑,然后用Burp抓包( 用不用都可以 )

uqcms的后台GetShell和前台越权删除他人图片
单击提交后用Burp抓包,抓到的数据如下图

uqcms的后台GetShell和前台越权删除他人图片
我们将filename修改为phpinfo.php,把content修改为<?php phpinfo();?>

uqcms的后台GetShell和前台越权删除他人图片

修改后的数据包:

然后就会在根目录创建一个名为phpinfo.php的文件,并且内容为<?php phpinfo();?>

uqcms的后台GetShell和前台越权删除他人图片

访问phpinfo.php文件,完成GETSHELL:
uqcms的后台GetShell和前台越权删除他人图片

漏洞代码处:

uqcms的后台GetShell和前台越权删除他人图片

public function save() {

   
        if ($_POST) {             $file = P('filename', '修改的文件名不能为空');             $content = P('content');             $query = file_put_contents($file, stripslashes_deep($content));              if ($query) {                 right_json();             } else {                 error_json('保存失败');             }         } else {             error_json('提交错误');         }     }
加上这三段代码,便于调试:

uqcms的后台GetShell和前台越权删除他人图片

Burp抓的包放到Repeater( 按住ctrl+r )模块里

uqcms的后台GetShell和前台越权删除他人图片
file_put_contents的返回值是第二个参数的长度

这里因为没有做任何过滤,所以这里导致了任意文件写入漏洞

前台任意删除他人图片:

漏洞处:

  1. 进入商家登陆
    uqcms的后台GetShell和前台越权删除他人图片

  2. 登陆后,单击装修
    uqcms的后台GetShell和前台越权删除他人图片

  3. 点击相册列表,并且上传图片
    uqcms的后台GetShell和前台越权删除他人图片

漏洞讲解开始

首先选择这个ID为1566的那张图片点击删除,并且用Burp进行抓包:
uqcms的后台GetShell和前台越权删除他人图片

我们首先随便输入一下错误的语法( 方便看到他的执行了什么语句 ):
uqcms的后台GetShell和前台越权删除他人图片

可以看到他执行的SQL语句是:

1 
select id,shop_id,url from uq_album where shop_id = 4 and id = 1566 or xxxx #查询uq_album表中条件为shop_id=4id=1566id和shop_id和url 

uqcms的后台GetShell和前台越权删除他人图片

我们现在身为test2想把test1的图片删了,那么我们就构造一下sql语句~

1 
select id,shop_id,url from uq_album where shop_id = 4 and id = 1566 or shop_id in (5) 

uqcms的后台GetShell和前台越权删除他人图片

可以看见这里有3条数据被展现出来了,也就是test2上传的图片
uqcms的后台GetShell和前台越权删除他人图片

然后我们开始执行一下这个构造的SQL语句:
uqcms的后台GetShell和前台越权删除他人图片

然后我们发现那3条数据就没了:
uqcms的后台GetShell和前台越权删除他人图片

代码处:

下次补~~

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
颓废
  • 本文由 发表于 2019年5月19日08:57:43
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   uqcms的后台GetShell和前台越权删除他人图片http://cn-sec.com/archives/67978.html

发表评论

匿名网友 填写信息