启明星辰 吴凡
1.Web安全防御思想分析
如何保护企业网站免于遭受攻击,是令很多CIO们头疼不已的问题。
一般来说,Web安全的防范措施不外乎两种:未被禁止的就是允许的,未被允许的就是禁止的。
先来看第一种,“未被禁止的就是允许的”。
这一思想可以解释为:凡是与记录在案的攻击行为相符合的,就认为是攻击行为,凡是不符合已知攻击行为特征的,就是正常行为,这称之为模式匹配技术。早期的入侵检测技术就是这一思想的典型代表。通过定义攻击事件的数据特征,来区分网络中的各种数据流。这种方法的准确率较高,但如果攻击者采用最新的,尚未添加到检测中的攻击方法,容易有漏报。而且早期的模式匹配技术没有通配概念,变形攻击很容易躲过入侵检测的检查。随着入侵检测技术的发展,这已经是非常困难的事了。
第二种,“未被允许的就是禁止的”。
类似于防火墙等访问控制设备,设定一些允许规则,不包括在规则内的,就将被禁止。这一类的Web安全产品包括application firewall和静态网页防篡改系统。
Application firewall,之所以叫firewall,就是因为其主体设计思想是模仿防火墙,所不同的是,application firewall不仅关心4层以下的数据,还需要关注应用层的数据。而在“未被允许的就是禁止的”这一思想指导下,application firewall多采用构建异常模型方式:通过学习“干净”的网络数据,视情况需几天或几星期,一一列举出所有应当被允许的行为,当模型构建完成,所有被允许的行为也就定义下来了,在工作过程中,一旦发现某条数据行为并未包括在模型中,就予以响应(阻断、报警)。这种方法对未知攻击和新漏洞攻击有很好的防御能力,但弱点也同样明显:学习数据必须是“干净”的,否则攻击行为将被认为是正常行为而给予放行,产生漏报。而且业务结构发生变化后,比如更换服务器,添加新的在线服务业务等,需要重新学习,否则容易误报。
静态网页防篡改系统,将“未被允许的就是禁止的”贯彻得更死板一些:将所有被保护的网页做备份,除了规定程序/地址外,其它任何企图更改页面的行为都是被禁止的,即使骇客攻击后更改成功,也可通过备份机制进行自动还原。但随着动态页面技术的进步,Web网站已经很少有静态页面了,而且这种防篡改系统仅保障了网页内容不被修改,无法保障其它私隐信息(如用户数据)的安全。
这两种防御思路各有优劣,单一思路指导下的Web防御产品都是不完善的,要实现全面的Web安全防御,需要融合两种思路的优势。我们欣喜地看到,相关厂商已经在这些方面进行努力。
2.融合两种思路的Web安全
·入侵检测技术基础上的发展的Web安全
先来看入侵检测技术方向。
自本世纪初起,入侵检测技术就已不限于单纯的模式匹配(误用检测),而是包含了包括统计异常检测、基于模式预测异常检测、基于数据挖掘异常检测、基于神经网络异常检测以及基于特征选择异常检测等在内的异常检测机制。其特点是并不以单纯的数据特征作为匹配对象来源,而是分析数据的行为特征。在入侵检测技术基础上发展起来的入侵防御产品,已然可以看到融合两种防御思路的迹象。
正如前面所说的,传统的“未被禁止的就是允许的”思路,容易形成漏报,攻击者进行攻击变形或攻击编码,就有可能绕过检测机制。针对这一情况,入侵检测技术的应对是会话重组和拟态还原技术,并不是针对某一个数据包进行分析,而是将整个攻击会话还原,这样,如插入无意义字符、UNICODE编码、ASIC编码等躲避技术就无所遁形了。
而针对新攻击无法发现的弱点,一般来说有两种解决思路,对于那些有攻击机理体系的新攻击,如SQL注入,XSS攻击(CVE上每年都能新发现上千种SQL注入漏洞,这些漏洞各不相同,但攻击方法是属于同一体系:SQL注入),利用分析攻击机理,提炼攻击行为特征,而不是数据特征方式,籍此入侵防御产品可以实现对新发现漏洞的实时防御。
另外一种情况就是相对独立的新漏洞,这就是考验安全厂商漏洞发掘能力、应急能力的关键点:如果漏洞是安全厂商自行发现的,那么防御不成为问题;如果漏洞是其它途径发布的,就需要安全厂商有足够多的信息来源,可以第一时间获得漏洞信息(这里的来源可以是操作系统提供商、用户、CVE、合作伙伴等),并且有一支强大的事件分析队伍,可以在获得漏洞信息后,尽快地发布相应防御补丁。
·Application firewall基础上发展的Web安全
再来看Application firewall方向目前的发展(网页防篡改方向应用较少,本文就不涉及了)。
Application firewall的“未被允许的就是禁止的”思路,使得Application firewall不需要太关心具体的攻击行为和漏洞信息,这也和Application firewall多为审计厂商和负载均衡厂商出品有关系:在入侵识别技术上并不占优势,所以并没有从入侵分析上下手,而是走了另外一条路。但正如上面所说的,Application firewall的防御完备度取决于数据学习阶段,如果某漏洞的攻击方法就是正常的访问,但携带某种特定规则的数据部分,Application firewall将无法发现这种攻击行为。所以有的Application firewall厂商也需要针对某些新型漏洞提供攻击数据特征来进行防御。在这一点上,考验的主要就是厂商漏洞发掘、应急响应的能力了。
无论如何,在入侵检测基础上发展也好,在Application firewall基础上发展也好,最后大家都将走到同一条路上来,那就是结合特征匹配与异常模型的防御,突破单一防御思路的新型Web威胁防御。只有将这两种技术思路融合起来,才能为用户提供真正解决Web威胁的全面解决方案。
用户评论