sql-labs前16关Write Up

Sql-labs练习

Less1

首先判断注入类型,我们使用id=2-1来判断,发现与id=2的回显相同,可以判断是字符型注入。然后需要判断闭合方式是什么,测试完后确定是’闭合。之后用order by来判断其列数为3列,接着就是用联合查询注入去爆库,爆表,爆字段,爆数据。

Less2

先判断注入类型,使用id=2-1判断,发现与id=1回显相同,可以判断是数字型注入,然后直接用order by判断字段数,依旧用联合查询注入爆库,爆表,爆字段,爆数据。

Less3

先判断注入类型,使用id=2-1判断,发现与id=1回显不同,可以判断是字符型注入,再判断闭合方式,使用’--+判断发现报错,再使用’) --+判断发现就是’) 注入,然后依旧order by查询字段数,接着联合查询注入爆库,爆表,爆字段,爆数据。

Less4

先判断注入类型,使用id=2-1判断,发现与id=1回显不同,可以判断是字符型注入;然后判断注入类型,使用’判断发现没有报错,直接用”判断发现有报错,注释另一边后发现还是报错,换成”) --+发现回显正常,可以判断是”)闭合方式,依旧order by查询字段数,爆库,爆表,爆字段,爆数据。

Less5

还是先判断注入类型,id=1’发现报错,然后加上--+发现回显是you are in,然后尝试更改id值,发现回显都是you are in,大概可以判断是一个盲注,但我们可以使用一些报错函数使他报出我们想要的值,这一题我们使用extractvalue函数来进行爆库爆表爆数据。

Less6

先判断注入类型,发现是”注入,发现和第五题一样也是回显只有you are in,那我们还是可以使用报错函数来回显我们想要的值,这次我们使用updataxml函数来实现爆库爆表爆数据,payload:updatexml(1,concat('~',(sql语句),'~'),1)--+

Less7

先判断注入类型然后判断闭合方式,输入一个’后报错,再加一个’还是报错,判断可能是’)的闭合方式,’) --+还是报错,那可能就是’))的闭合方式,判断后发现就是’))闭合,然后这道题和前面两个一样,输入正确只会回显you are in,输入错误会提示sql语句错误,再尝试使用报错注入,发现报错注入无法解决,那我们就可以使用布尔盲注,进行sql注入,使用length函数去分别判断库名长度,表名长度和列长度,再用ascii()函数结合substr()函数输出库名,表名,列名,最后得到结果。

Less8

第八关和第五关类似,但是第八关只能判断真假值,其他什么信息都拿不到。依旧先判断类型和闭合方式和字段数,然后可以使用python脚本帮我们完成查询字段长度,和匹配字段值的操作。

Less9

第九关就是完全的盲注了,无论输入sql语句是否正确,页面回显值都不变,这种情况可以使用时间盲注的方法,用sleep函数来判断正确和错误,当输入正确的值时,页面回显时间要比输入错误的值的回显时间要长。可以使用python脚本,来帮助我们完成繁琐的判断。最后拿到我们需要的值

Less10

第十关尝试判断注入类型,发现还是时间盲注,不管输入什么,回显值都只有一个,依旧还是使用sleep函数来构造sql语句,使用python脚本帮助我们判断,最后得到值

Less11

第十一关进入后发现页面有所变化,出现了一个登录框,判断是请求方式变成了POST,其实跟我们之前做的题是一样的,只是现在的一个注入点换到了登录框里,依旧使用判断注入类型为字符型,闭合方式是’闭合,字段数是2,最后使用联合注入方式爆库,爆表,爆数据。

Less12

第十二题还是POST请求方式,还是先判断是字符型注入,闭合方式是”)闭合,然后使用联合注入依次爆库,爆表,爆数据。

Less13

第十三题还是先判断是字符型注入,闭合方式是’)闭合,输入错误的sql语句会报错,但是发现在注入正确的sql语句后页面回显为空,那我们可以利用报错函数来让服务器回显出数据。利用报错函数来构建查询语句最终爆出数据。

Less14

第十四题判断是”闭合,然后order by查询字段数发现是2,发现注入正确的sql语句之后,也没有任何回显,那就使用报错注入的来爆出信息。

Less15

第十五关使用1’ or 1=1判断闭合方式为单引号闭合,但是不管输入什么都不会有报错回显,使用报错注入也行不通,只能使用时间盲注的方法。
爆库长:admin’ and if(length(database())=8,sleep(5),null) #

爆库名:从左边第一个字母开始,判断库名第一个字母是不是s

admin’ and if(ascii(substr(database(),0,1))=115,1,sleep(5))#

admin’ and if((select (substr(database(),1,1))=“s”) ,sleep(5), null)#

.......

Less16

第十六题和十五题做法相同,只是闭合方式变成了”。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值