解读Web应用防火墙

安全
作为一家第三方互联网支付公司的CIO,Dave为公司近期发生的一系列安全事件忙得焦头烂额。虽然已经在公司的网络出口处部署了防火墙、入侵检测系统等安全设备,但是几个月前,公司网站和支付服务器还是遭受到拒绝服务攻击导致业务瘫痪。拒绝服务攻击事件还没处理完,Dave又接到员工报告,公司门户网站被Google报出含有恶意软件

作为一家第三方互联网支付公司的CIO,Dave为公司近期发生的一系列安全事件忙得焦头烂额。虽然已经在公司的网络出口处部署了防火墙、入侵检测系统等安全设备,但是几个月前,公司网站和支付服务器还是遭受到拒绝服务攻击导致业务瘫痪。拒绝服务攻击事件还没处理完,Dave又接到员工报告,公司门户网站被Google报出含有恶意软件。

来自Web的安全挑战

Dave的烦恼其实是日前众多IT管理者遭遇的缩影之一。随着机构的计算及业务资源逐渐向数据中心高度集中,Web成为一种普适平台,上面承载了越来越多的核心业务。Web的开放性带来丰富资源、高效率、新工作方式的同时,也使机构的资产暴露在越来越多的威胁中。现今Web安全问题对我们来说已屡见不鲜,以下是收录于国际安全组织WASC WHID项目中的几起安全事件:

2009年5月26日,法国移动运营商Orange France提供照片管理的网站频道有SQL注入漏洞,黑客利用此漏洞获取到245,000条用户记录(包括E-mail、姓名及明文方式的密码)。

2009年1月26日,美国军方两台重要的服务器被土耳其黑客渗透,网页被篡改,黑客采用的是SQL注入攻击手段。

2009年1月26日,印度驻西班牙使馆网站被挂马(通过iFrame攻击植入恶意代码)。

Web应用安全防护解决思路

Web应用安全问题本质上源于软件质量问题。但Web应用相较传统的软件,具有其独特性。Web应用往往是某个机构所独有的应用,对其存在的漏洞,已知的通用漏洞签名缺乏有效性;需要频繁地变更以满足业务目标,从而使得很难维持有序的开发周期;需要全面考虑客户端与服务端的复杂交互场景,而往往很多开发者没有很好地理解业务流程;人们通常认为Web开发比较简单,缺乏经验的开发者也可以胜任。

针对Web应用安全,理想情况下应该在软件开发生命周期遵循安全编码原则,并在各阶段采取相应的安全措施。然而,多数网站的实际情况是:大量早期开发的Web应用,由于历史原因,都存在不同程度的安全问题。对于这些已上线、正提供生产的Web应用,由于其定制化特点决定了没有通用补丁可用,而整改代码因代价过大变得较难施行或者需要较长的整改周期。

针对这种现状,专业的Web安全防护工具是一种合理的选择。Web应用防火墙(以下简称WAF)正是这类专业工具,提供了一种安全运维控制手段:基于对HTTP/HTTPS流量的双向分析,为Web应用提供实时的防护。与传统防火墙/IPS设备相比较,WAF最显著的技术差异性体现在:

对HTTP有本质的理解:能完整地解析HTTP,包括报文头部、参数及载荷。支持各种HTTP 编码(如chunked encoding、request/response压缩);提供严格的HTTP协议验证;提供HTML限制;支持各类字符集编码;具备response过滤能力。

提供应用层规则:Web应用通常是定制化的,传统的针对已知漏洞的规则往往不够有效。WAF提供专用的应用层规则,且具备检测变形攻击的能力,如检测SSL加密流量中混杂的攻击。

提供正向安全模型(白名单):仅允许已知有效的输入通过,为Web应用提供了一个外部的输入验证机制,安全性更为可靠。

提供会话防护机制:HTTP协议最大的弊端在于缺乏一个可靠的会话管理机制。WAF为此进行有效补充,防护基于会话的攻击类型,如cookie篡改及会话劫持攻击。

如何正确选择WAF

并非对Web服务器提供保护的“盒子”都是WAF。事实上,一个真正满足需求的WAF应该具有二维的防护体系:

纵向提供纵深防御:通过建立协议层次、信息流向等纵向结构层次,构筑多种有效防御措施阻止攻击并发出告警。

横向:满足合规要求;缓解各类安全威胁(包括网络层面、Web基础架构及Web应用层面);降低服务响应时间、显著改善终端用户体验,优化业务资源和提高应用系统敏捷性。

如何正确选择WAF

在选择WAF产品时,建议参考以下步骤:

结合业务需求明确安全策略目标,从而定义清楚WAF产品必须具备的控制能力

评估每一家厂商WAF产品可以覆盖的风险类型

测试产品功能、性能及可伸缩性

评估厂商的技术支持能力

评估内部维护团队是否具备维护、管理WAF产品的必需技能

权衡安全、产出以及总成本。“成本”不仅仅意味着购买安全产品/服务产生的直接支出,还需要考虑是否影响组织的正常业务、是否给维护人员带来较大的管理开销

WAF应用场景

相信通过前文的介绍,大家对WAF产品已经有了初步了解。但也可能存在疑问,部署WAF,实际到底可以解决什么问题?下面将介绍几个典型的应用场景。

WAF支持完全代理方式,作为Web客户端和服务器端的中间人,避免Web服务器直接暴露在互联网上,监控HTTP/HTTPS双向流量,对其中的恶意内容(包括攻击请求以及网页内容中被植入的恶意代码)进行在线清洗。

WAF应用场景

网页篡改在线防护

按照网页篡改事件发生的时序,提供事中防护以及事后补偿的在线防护解决方案。事中,实时过滤HTTP请求中混杂的网页篡改攻击流量(如SQL注入、XSS等)。事后,自动监控网站所有需保护页面的完整性,检测到网页被篡改,第一时间对管理员进行短信告警,对外仍显示篡改前的正常页面,用户可正常访问网站。

网页挂马在线防护

网页挂马为一种相对比较隐蔽的网页篡改方式,本质上这种方式也破坏了网页的完整性。网页挂马攻击目标为各类网站的最终用户,网站作为传播网页木马的“傀儡帮凶”,严重影响网站的公信度。

当用户请求访问某一个页面时,WAF会对服务器侧响应的网页内容进行在线检测,判断是否被植入恶意代码,并对恶意代码进行自动过滤。

敏感信息泄漏防护

WAF可以识别并更正Web应用错误的业务流程,识别并防护敏感数据泄漏,满足合规与审计要求,具体如下:

可自定义非法敏感关键字,对其进行自动过滤,防止非法内容发布为公众浏览。

Web站点可能包含一些不在正常网站数据目录树内的URL链接,比如一些网站拥有者不想被公开访问的目录、网站的Web管理界面入口及以前曾经公开过但后来被隐藏的链接。WAF提供细粒度的URL ACL,防止对这些链接的非授权访问。

网站隐身:过滤服务器侧出错信息,如错误类型、出现错误脚本的绝对路径、网页主目录的绝对路径、出现错误的SQL语句及参数、软件的版本、系统的配置信息等,避免这些敏感信息为攻击者利用、提升入侵的概率。

对数据泄密具备监管能力。能过滤服务器侧响应内容中含有的敏感信息,如身份证号、信用卡号等。

【编辑推荐】

  1. Web应用防火墙将瞄准0day攻击防御不得不看
  2. Web应用防火墙的功能与特点的描述
  3. WEB应用防火墙网站整体防护的破解
  4. WEB应用防火墙网站整体防护的破解方法
  5. 微软0day漏洞 绿盟科技Web应用防火墙提供零配置防护
责任编辑:佟健 来源: 51CTO.com
相关推荐

2011-03-25 11:18:51

2010-05-24 17:49:56

2011-03-25 11:06:46

2010-07-07 20:06:53

2010-07-12 11:33:52

2021-06-25 18:35:30

Web应用防火墙

2011-05-10 09:17:01

2011-02-15 18:38:49

2011-02-17 18:30:25

2010-07-12 11:41:55

2010-12-21 18:04:26

2010-08-30 12:52:46

2011-12-05 11:20:42

2009-04-29 14:51:18

2010-08-30 10:18:24

2009-04-28 09:12:35

Web应用防火墙梭子鱼

2010-07-12 14:15:56

2011-03-15 10:32:05

2010-11-16 16:43:17

2010-09-14 17:20:30

点赞
收藏

51CTO技术栈公众号