稻草软件论坛's Archiver

那一刻 发表于 2010-9-25 15:07

第一代各种Web应用防火墙的缺陷汇总

[p=30, 2, center][font=黑体][size=15pt][color=#000000]第一代各种Web应用防火墙的缺陷汇总[/color][/size][/font][/p][p=30, 2, left][font=Calibri][size=3][color=#000000] [/color][/size][/font][/p][p=30, 2, left][color=#000000][b][i][size=12pt][font=Calibri]0x01 [/font][/size][/i][/b][b][i][font=宋体][size=12pt]部署[/size][/font][/i][/b][b][i][size=12pt][/size][/i][/b][/color][/p][p=30, 2, left][size=3][color=#000000][b][font=Calibri]a.[/font][/b][b][font=宋体]伪透明模式:[/font][/b][font=宋体]第一代的[/font][font=Calibri]WAF[/font][font=宋体]大多只能支持[/font][font=Calibri]200[/font][font=宋体]个[/font][font=Calibri]Web[/font][font=宋体]以下,或者同一个[/font][font=Calibri]D[/font][font=宋体]类子网内的透明。无法做到网线级别的透明。第一代多数为伪透明部署(需要设置[/font][font=Calibri]IP[/font][font=宋体]地址、端口、域名等信息),无法做到自适应(接入即可防护)。[/font][/color][/size][/p][p=30, 2, left][size=3][color=#000000][b][font=Calibri]b.[/font][/b][b][font=宋体]极少有支持路由模式的:[/font][/b][font=宋体]第一代的[/font][font=Calibri]WAF[/font][font=宋体]多数没有这个功能。路由模式可以只将[/font][font=Calibri]HTTP[/font][font=宋体]流量给[/font][font=Calibri]WAF[/font][font=宋体]检测。比如出口是[/font][font=Calibri]1000Mbps[/font][font=宋体]的,而[/font][font=Calibri]Web[/font][font=宋体]带宽只有[/font][font=Calibri]100Mbps[/font][font=宋体],如果不支持路由模式,就只能浪费的去使用[/font][font=Calibri]1000Mbps[/font][font=宋体]的设备。[/font][/color][/size][/p][p=30, 2, left][size=3][color=#000000][b][font=Calibri]c.[/font][/b][b][font=宋体]鸡肋的代理模式:[/font][/b][font=宋体]这个几乎都有的功能,性能之差可想而知,一次请求要建[/font][font=Calibri]2[/font][font=宋体]次连接。并发数降低一半,带宽消耗增加一倍,非常不好。[/font][/color][/size][/p][p=30, 2, left][font=Calibri][size=3][color=#000000] [/color][/size][/font][/p][p=30, 2, left][color=#000000][b][i][size=12pt][font=Calibri]0x02 [/font][/size][/i][/b][b][i][font=宋体][size=12pt]检测手段[/size][/font][/i][/b][b][i][size=12pt][/size][/i][/b][/color][/p][p=30, 2, left][size=3][color=#000000][b][font=Calibri]a.IPS[/font][/b][b][font=宋体]修改而来:[/font][/b][font=宋体]基本依赖字符串匹配与正则表达式,修改国外[/font][font=Calibri]SNORT[/font][font=宋体]的引擎而来,解码不完善、效率极低。[/font][font=Calibri]Unicode[/font][font=宋体]编码的几乎很少有支持的。数据包碎片很容易绕过检测引擎。[/font][/color][/size][/p][p=30, 2, left][size=3][color=#000000][b][font=Calibri]b.[/font][/b][b][font=宋体]基于策略:[/font][/b][font=宋体]国外厂商比较喜爱,但配置及其复杂,网页个数多的情况下,性能呈几何方式下降。在一个超过[/font][font=Calibri]30[/font][font=宋体]个网站的网络里,几乎不可用。利用一些[/font][font=Calibri]CMS[/font][font=宋体]的漏洞,很容易绕过国外厂商此种[/font][font=Calibri]WAF[/font][font=宋体]的检测。[/font][/color][/size][/p][p=30, 2, left][font=Calibri][size=3][color=#000000] [/color][/size][/font][/p][p=30, 2, left][font=Calibri][size=3][color=#000000] [/color][/size][/font][/p][p=30, 2, left][color=#000000][b][i][size=12pt][font=Calibri]0x03[/font][/size][/i][/b][b][i][font=宋体][size=12pt]规则[/size][/font][/i][/b][b][i][size=12pt][/size][/i][/b][/color][/p][p=30, 2, left][size=3][color=#000000][b][font=Calibri]a.[/font][/b][b][font=宋体]简单的字符串过滤规则:[/font][/b][font=宋体]比如把[/font][font=Calibri]select[/font][font=宋体]、[/font][font=Calibri]insert[/font][font=宋体]等加为过滤关键字,一旦遇到此种字符串就视为攻击,误报极为严重。绕过方法也很简单,稍微大小写变化即可,比如写成:[/font][font=Calibri]sEleCt[/font][font=宋体],[/font][font=Calibri]INsErT[/font][font=宋体]。有的甚至把一个短语写好多种写法,比如[/font][font=Calibri]and[/font][font=宋体],规则写[/font][font=Calibri]6[/font][font=宋体]条[/font][font=Calibri]AND/aND/AnD/And/anD/aNd[/font][font=宋体]。如果一个短语很长,这种规则如何匹配呢?[/font][/color][/size][/p][p=30, 2, left][size=3][color=#000000][b][font=Calibri]b.[/font][/b][b][font=宋体]规则过多:[/font][/b][font=宋体]无用规则占多数,检测速度极为缓慢。如有的厂商采用美国开源的“[/font][font=Calibri]SNORT[/font][font=宋体]”或者“[/font][font=Calibri]MOD_SECURITY[/font][font=宋体]”规则,规则数量很多,但误报严重,有的甚至为鸡肋。国内[/font][font=Calibri]CMS[/font][font=宋体]的漏洞无法防御。[/font][/color][/size][/p][p=30, 2, left][font=Calibri][size=3][color=#000000] [/color][/size][/font][/p][p=30, 2, left][font=Calibri][size=3][color=#000000] [/color][/size][/font][/p][p=30, 2, left][color=#000000][b][i][size=12pt][font=Calibri]0x04 [/font][/size][/i][/b][b][i][font=宋体][size=12pt]性能。[/size][/font][/i][/b][b][i][size=12pt][/size][/i][/b][/color][/p][p=30, 2, left][size=3][color=#000000][b][font=Calibri]a.[/font][/b][b][font=宋体]每秒处理[/font][/b][b][font=Calibri]HTTP[/font][/b][b][font=宋体]请求数:[/font][/b][font=宋体]熟话说“外行看热闹,内行看门道”。很多人都认为吞吐量的大小是评价[/font][font=Calibri]WAF[/font][font=宋体]性能的指标,比如是[/font][font=Calibri]200Mbps[/font][font=宋体]还是[/font][font=Calibri]1000Mbps[/font][font=宋体]。在请求量低的情况下,一个伪千兆口的“百兆[/font][font=Calibri]WAF[/font][font=宋体]”一般都可以吞吐[/font][font=Calibri]700Mbps[/font][font=宋体]的数据量。实际上“每秒处理[/font][font=Calibri]HTTP[/font][font=宋体]请求数”才是衡量[/font][font=Calibri]WAF[/font][font=宋体]的关键指标。有的厂商,甚至把每秒请求数在[/font][font=Calibri]1[/font][font=宋体]万的[/font][font=Calibri]WAF[/font][font=宋体]当千兆的产品来慢,实际其真正能力只在两百兆左右。一个千兆的[/font][font=Calibri]WAF[/font][font=宋体],每秒处理[/font][font=Calibri]HTTP[/font][font=宋体]请求数量至少得在[/font][font=Calibri]5[/font][font=宋体]万以上,才可能真正可以处理大量的请求。[/font][/color][/size][/p][p=30, 2, left][size=3][color=#000000][b][font=Calibri]b.[/font][/b][b][font=宋体]客户并发数低:[/font][/b][font=宋体]很多[/font][font=Calibri]WAF[/font][font=宋体]都是采用反向代理或者透明反向代理的工作方式。这些方式下,并发数都很难高于[/font][font=Calibri]2[/font][font=宋体]万,国外(俄罗斯)性能最好的反向代理服务器也只能达到[/font][font=Calibri]2.5[/font][font=宋体]万并发,所以采用反向代理的[/font][font=Calibri]WAF[/font][font=宋体]并发数低就不足为奇了。一旦并发超过[/font][font=Calibri]2[/font][font=宋体]万,网络立即拒绝服务。[/font][/color][/size][/p]

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.

桂ICP备09005550号