注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力

admin 2025年5月26日19:37:19注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力已关闭评论33 views字数 780阅读2分36秒阅读模式
00
文章背景

    喵了个咪的,本来想写帮同事绕的那个Oracle注入为文章的,结果过了两天一看我RNM,改的这么快,进不去了:

注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力

    那就换,太久没发了,这个我称他为大力出奇迹,具体是什么,请继续往下看:

注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
01
关于WAF

    具体什么钩子原理我们就不细说了,我们简单来说一下,该说不说的,知道的都知道了,不知道你看一下:

注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力

简单来说,WAF其实就是一个安装在服务器上的软件,用来做基于数据处理的操作。

处理的数据量越大那消耗的服务器性能就越多,如果无限制处理,那么就可能导致占用服务器性能过大导致服务器宕机。

    所以,基本上所有的WAF都有一个处理范围,当数据包大小超过限定范围时,WAF将不再对数据包进行处理。那么就意味着,此时WAF会直接放过不会再拦截。
注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
02
请求方式
    如果你对SQL语句、脚本语言中间件的综合了解不多,但在遇到WAF时想要尝试绕过,那么这篇文章一定对你有帮助。
    关于数据包溢出绕过WAF这个操作,只在POST请求时生效,为什么这样呢,这就涉及到两种请求方式的区别了,简单说说吧。
注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
GET请求
    由于GET请求的参数均直接通过URL,而且其数据长度受限,通常几KB就嘎了。这意味这你插入的数据在超出WAF的匹配范围时,同样也超过了GET请求自己的长度限制范围,然后直接嘎掉,如下图可见:
注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
POST请求

POST请求在默认情况下,数据包接受大小就要比GET大得多,这会由于中间件和脚本语言的问题,接受大小有一定差异。

但是,POST请求的数据包接受大小范围,一般来说它在默认情况下也至少都有几MB,所以是可行的:

注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
    其实就是插入一串没用的东西罢了,我是手动插入的,通过一个不存在的参数再加一串足够长的任意字符即可:

注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
    不过有一个插件可以自动给你插入垃圾字符,达到溢出的效果,地址应该是:

https://github.com/assetnote/nowafpls
注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力
注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力

 

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年5月26日19:37:19
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   注入Bypass | 关于那些无能的WAF,原来只需要一招就能让它无力http://cn-sec.com/archives/4099417.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.