[CTF][SUCTF2019]easysql

解题思路

1 先尝试可能的注入点
单引号 双引号 数字 字母等等,看界面反应。
最终结果:
from union 等关键字被过滤,flag字符串也被过滤。
可以使用堆叠注入。
输入字符串界面无反应,输入数字会返回,1,2,3等也会返回。
限制输入长度。
基本可以确定,是select … from xxx的句式。
但是会对最后一个字符做处理,如1,2,3,会返回1, 2,1

2 方向
把前面的规则理清了不太难,但是如何注入,很费脑筋。
因为from关键字被屏蔽,表名flag字符串也被屏蔽。同时又限制了输入长度。
可以推测不会是很复杂的注入。
同前面一样,卡在最后一步很长时间,搜了大量字符绕过的资料,但是都不适用。
最终,梳理上面的规则,最后一点未被有效利用。
虽然尝试过 1;select * 的输入,未正确返回,就放弃了尝试,忽略了程序会对最后一个逗号后的字符做处理这一个规则,想到这一点,就尝试1;select *,2 的注入,成功。

总结

不要轻易放过任何一条线索,尤其是在规则很明确的时候。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值