SQL注入绕过某waf的详细过程。

 

0x00起因

看到大家都有绕wafpayload,想了想,这样下去不行啊。总不能找人家要吧,于是我开启了电脑,开始我的bypass之路。

 

0x01过程

准备完毕后,开始,首先判断注入and 1=1

 

 

Ok2=2试试。

也不行,然后试试and -1=-1

然后是-1=-11

Ok判断绕过,于是咱们开始order by

拦截了,那么删除1试试

没有拦截,初步判断,他这里是检测数字,那么我们尝试/*!1*/

ok绕过,然后剩下的字段我就不截图了,得到字段是3,使用union来获取内容。

拦截,怎么看看他的拦截点在哪,

可以看出,拦截点不在于数字,union或者select必有一个

ok没有拦截,那么我们可以大概的猜到,他判断的是union select组合了。那么,突破点也在他们中间。用火狐的插件试试

失败,那么我们就要用到mysql了,因为咱们注入的时候首先要知道的是他mysql中能不能执行这个语句,然后在尝试。

 

 

发现可以查到,但是狗拦截了,于是只能尝试一些字符//,\\,--,/*!,/**/,()等等,开始在mysql里面加

 

成功,尝试绕过

 

 

失败,尝试一些字符看看能不能干扰他的绕过。

利用5位数字来尝试绕过。

OK成功,尝试获取database()

失败他可能检测了我们的这个database()获取过程,那么我们可以用/*!*/尝试

 

 

 

OK成功。其实这个安全狗在注入的时候只能过滤get注入,我们可以尝试post,我直接贴出payload

 

posted @ 2019-05-23 12:56  P4sschen  阅读(3190)  评论(0编辑  收藏  举报