waf过滤了危险字符串_SQL注入绕过WAF(下)

42126e5635ee23398e81a5c5ebe5b393.gif

a57768b60c3082b798b3930c202f7397.png

6.特殊符号

特殊字符是什么?除了字符串和数字都是特殊字符  比如~!@#¥%…………&*()—

乌云的一篇waf绕过技巧的文章的几个例子

1.使用反引号`,例如select`version()`,可以用来过正则跟空格,特殊情况下还可以把它当成注释符来用

2.神奇的"- .", select id-1 1.from users; " "是用于字符串链接的,"-"和"."在此也用于连接,可以逃过空格和关键字过滤

3.@符号,select@……1.from users; @用于变量定义如@var_name,一个@表示用户定义,@@表示系统变量

4.Mysql function() as xxx 也可不用as和空格   select-count(id)test from users; //绕过空格限制

7.HTTP参数控制

这种方法是HTTP分割注入,使用控制字符 , 执行换行

也是比较好使的一种方法,

举个栗子: 77169.com/?id=1 union/*&b=*/select 1,user/*&c=*/from users--

这里是不同的参数之间进行分割,到了数据库执行查询时再合并语句

8.缓冲区溢出

缓冲区溢出用于对WAF,有不少WAF是C写的,而C语言本身没有缓冲区保护机制,因此如果WAF在处理测试量时超出其缓冲区长度,就会引发bug从而实现绕过

举个栗子: ?id=1 and(select 1)=(Select 0xA*1000) uNiOn SeLeCt 1,2,version(),4,5,database(),version(),8,9,10,11,12,13,14,15,16,17,18

栗子上的 0xA*1000  指的是0XA后面的 "A" 重复1000次,一般来说对应用软件构成缓冲区溢出都需要比较大的测试长度,这里1000仅供参考,在一些情况下也可以更短

9.番外篇-唠嗑

这里也就简单唠嗑一下,绕WAF其实也是很多人比较头疼的一件事情,当然以前我也很头疼,其实当你摸清了WAF你就会发现,原来可以这样操作,

像我们搞渗透,为什么去做绕WAF这个操作,简单来讲 就相当于一个客户的Site 一堆漏洞,当他装了一个WAF就说没有漏洞了,你觉得这样行得通吗?

这样肯定是不行的,因为这种是欺骗自己,如果恶意黑客绕过了你的WAF利用你的漏洞造成了业务数据的泄露或者损失财产,那后果是不可估量的!

我们绕WAF只是为了对客户的负责,能让他们重视起来程序自身的安全,如果程序自身的安全无法做到,那么就别去指望外壳去保护它,因为如果哪天外壳没有了,那你也将是恶意黑客下的一枚shell。

其实我这里讲的比较笼统,具体操作一定要去根据实际情况去判断,去整合下再选择去进行绕过测试,如果你觉得绕WAF很难,那先去搭建一个WAF尝试下被拦截的感觉

当然你也可以当WAF是根据你的关键字进行过滤的(规则模块) 

打个比方 select    WAF会提前匹配规则,如果符合了规则模块的过滤,那么将被拦截  但是你这个时候再去试着 s/**/e/**/l/**/e/**/c/**/t 看看这样是否会被拦截

如果没有被拦截 那么就印证了我们说的  是根据你的关键字来进行过滤的,我们所做的 只是让WAF认不出我们的关键字就可以了

唠嗑也比较啰嗦  有研究WAF绕过的 可以加 我QQ:2514616764  备注来意   互相交流

10.绕过总结

其实这个是不用写的,但是我还是写了,因为绕过很多时候URL双重编码或者其他编码方式不一定绕过,我们可以采用组合绕过方式,比如先大小写混合,再同等函数替换 再编码去试试看

不要刻意的去指望一种方法绕过,我这几篇文章也只是简单写写的,也体现了绕过方式的核心  模糊关键字  这样对方将无法认出你的关键字

这里只是每种方式简单说了一种

c3b5bb1babb34dc7ab11ffa4d83564c7.png

f2c1eef31b5d0c4c193760eb1e05b553.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值