安全分析:建立应用层防火墙规则基础

在过去的10年中,许多企业在网络和周边安全上进行了大量的投入。各组织均加强了他们的控制措施并且进入防御状态,极大地限制了黑客的网络扫描攻击的有效性。不幸的是,当安全专家们还在忙于建立网络控制措施时,攻击者们已经开始着手开发新的技术去攻击下一个致命的弱点:应用层。

近期Gartner公司的调查显示,目前成功的攻击案例中有75%发生在应用层。由此产生了更可怕的预测:到2009年,80%的企业将成为应用层攻击的受害者。

为什么这些攻击这么有效?答案非常简单:它们绕过了过去10年中安全人员实施的所有以网络为中心的控制措施,例如端口禁用。以Web应用攻击为例,传统防火墙为了保护Web服务器所包含的规则是通过阻止所有非预期数据流,仅允许TCP流量通过80和443端口。不幸的是,防火墙不能区分出80端口中的哪些数据流是预期数据流,哪些是非预期的。

此时就出现了应用层防火墙。这些防火墙会在Web服务器之前的应用层对HTTP流量进行检查。这些设备可以检测一个链接,分析用户对应用程序发出的命令。然后就可以分析出哪些是已知攻击,哪些是标准应用的演变。

虽然应用层防火墙有很大的发展潜力,但是应当适度并且有意识的进行部署。在网络防火墙进入企业的最初阶段,实施的经理们普遍采取了谨慎的方式对待这些项目,他们进行了仔细的分析和大量的测试。在部署Web应用层防火墙时我们也应该采取同样的方式。仔细的测试为组织的应用开发人员建立信心,作为负责变更的安全经理也可以很有底气的说这项技术给企业带来的帮助将远远大于给他们增加的工作负担。

一旦组织准备将该产品应用到生产环境中时,就应当开始考虑一个稳定的防火墙规则基础了。下面是如何在组织中建立和部署应用层防火墙规则基础的步骤:

1.有一段足够长的调整期。当今的应用层防火墙拥有复杂的功能去监控数据流并且学习正常活动的模式。一段时间后,防火墙被“训练”得能识别出这些活动模式从而阻止非正常数据流。然而,防火墙需要有足够长的训练时间,这样规则基础才能反映出周期性和季节性的网络活动趋势。例如,电子商务零售商肯定不想在夏天这个销售淡季去训练防火墙保护其网站,然后在冬天这个销售旺季部署规则基础。

2.开发出适用于企业的个性化规则。对组织基础设施的了解是非常重要的,对防火墙进行个性化设置以满足公司的特殊需要可以极大的提高这些工具的效果。例如,如果在一个应用环境中仅有一个Web应用应该接受文件上传,规则中就应当完全阻止PUT命令(用于上传文件的HTTP命令)在其他系统中使用。

3.以被动模式进行初次运行。对于规则基础的测试通常要求“软着陆”。在这样的策略下,防火墙上线时将按照建议的规则设置。接下来将在监控模式下运行,但并不阻止任何数据流。在防火墙正式进入激活模式前,应当花些时间去评估那些违反防火墙规则的数据流。负责实施的责任人还应在正式上线前调整防火墙的误判率。程序员们向来不喜欢安保系统破坏他们的应用程序,这无疑会更加影响跟他们之间的关系。

4.监视,监视,监视。一旦防火墙被激活使用,就应当认真地监控。被阻止的数据流记录会提供非常重要的线索。被阻止的攻击可以向管理者显示出他们安全投资的回报。此外,可能仍然存在误判的情况,但它们可以帮助调整规则基础。

就像网络防火墙一样,应用层防火墙也不是万灵药。可以使用WebInspect和AppScan之类的工具来检测Web应用的漏洞。作为补充,定期进行渗透性测试也是一项可靠的防护策略,且能打消许多安全专家们对Web应用的顾虑。