世界是灰色的:也谈对NGFW的几点思考

标签:防火墙NGFW

访客:4104  发表于:2016-07-07 13:55:26

当相机拍摄出一幅幅黑白影像,其实是灰度图像,有着丰富的层次感。“灰”并不是黑与白的调和,而是这个世界的本来面目。我们所处的世界如此,在攻防尤为激烈的网络安全行业更是如此,除了黑白之外,还存在着很多灰色流量,那里隐藏着各种看不见的风险。

网络安全行业,从来不缺乏新产品、新技术,尤其以2012年在国内不断兴起的下一代防火墙为代表。然而一直困扰企业用户的,就在于大家很难明确区分下一代防火墙与传统防火墙、UTM的区别。为此,笔者将网络安全中三类最易产生理解误区的FW、UTM、NGFW产品理念问题进行梳理,追溯到一类产品所产生的起源、背景,帮助大家对这三种不同品类的产品有一个更加深入的了解。笔者用三种情境进行概括:确定性的情境(FW的白色世界)、半确定性情境(UTM的黑色世界)、混沌模糊的情境(NGFW的灰色世界)。在这三种情境里,来看我们所面对的问题及其解决方法,就会非常清晰了。

第一种情境:确定性的情境——FW以“白名单”为中心,类似儿童时期认知

FW就像儿童时期孩子对世界认知只有黑与白一样,没有混沌,也没有灰度,只有非黑即白的 “确定性的世界”。传统防火墙就是基于这个原理工作:只允许符合特定规则的封包通过,其余的一概禁止穿越防火墙。这个过程中,流量的影响变量即五元组信息是确认已知的,变量转为目标值也是确认即allow或deny,总结起来就是传统防火墙是以“白名单”为核心配置相关策略,执行阻断或者允许动作。


世界是灰色的:也谈对NGFW的几点思考

但是这个认知有较大局限性,就像孩子们经常通过一个人长相外貌等外在东西去判断一个人好坏,对于“伪装者”却无法进行辨别。例如Skype通信可以伪装成80端口,这种简单“伪装”成白名单上合法端口后,“天真”的传统防火墙也一样识别不出来。那么面对FW这样“防守”现状,谁将站出来接替它守护网络边界安全大门呢?它就是UTM。

第二种情境:半确定性的“黑色世界”——寻找灰色空间中“黑名单”为核心,青少年时代

随着互联网发展,FW也从儿童长大到青少年时代UTM,接触到更多人和事,对世界的认知也慢慢开始逐渐走向成熟,逐渐明白黑白世界之外还有灰色空间存在,并对灰色空间的认知也有一些判断标准。

本质上来说,防火墙产品从FW成长为UTM,最根本变化是从仅仅依靠五元组信息做控制策略状态,增加应用识别能力、集成IPS、AV等安全模块方式加强对应用层安全防护能力,能够检测识别“灰色内容”中的“黑名单成员”,比如某些合法应用中可能跑着恶意流量,可以根据已有特征识别出来并阻断。不过,UTM基于已知特征库进行检测且对不能识别的“灰色”内容全部允许通过,结果自然是某些已知恶意流量能够识别出来,有些未知威胁却成为漏网之鱼。问题就在这里,“弃之不管”那部分灰色空间中还隐藏着很多未知风险威胁,只是我们不知道罢了。


321

面对应用层中大量“灰色内容”,UTM“黑名单”防护理念已经显得捉襟见肘,那么又是谁肩负起网络边界安全大门?NGFW就此横空出世。

第三种情境:模糊的灰色世界——以“灰名单”为核心,成人的世界

UTM进一步从青少年长大成NGFW,需要挑战的是“灰色世界”,这是一种超越白色系统和黑色系统之外的空间,状态很混沌,环境变量也很多,每个变量都可能引起系统的整体变动,就像管理对象由原先的IP和端口变为应用的时候,不确定性就大大增加了。

NGFW在基础传统防火墙功能上,深度集成IPS功能,对一体化、应用识别与管控、高性能等要求更高,通过应用、用户、内容等多个维度的识别将模糊的网络环境映射为实际的业务环境,从而实现精准的访问控制和安全检测,发现灰色空间中的“黑名单”,完成deny动作。

除此之外,NGFW引入风险视角思维,对于无法做出确切判断的“灰色内容”,对其做一个概率性质和威胁性质的判断,并尝试为其进行应用风险打分。这是一种对模糊系统的控制,而不是一个确定系统的控制。在不明确未来会怎样的情况下,NGFW必须对业务应用的风险状况进行监控,并通过持续的策略调优,确保其安全有效性,而此部分内容在防火墙和UTM概念模型中并无对应的设计。本质上来说防火墙,从UTM演进到NGFW最大变化便是理念的不同而导致的价值不同。NGFW引入风险的视角,以关联分析等技术,通过可视化这样工具将灰色空间中的不确认的威胁告知用户,让用户参与决策。


世界是灰色的:也谈对NGFW的几点思考

那么用一句话总结NGFW与FW、UTM差别是怎么样的呢?笔者认为:NGFW开始聚焦FW、UTM尚未涉及的“灰色地带”,通过引入风险视角和可视化工具,解决“灰色区”的安全问题。

来源;TechTarget

评论(0)

您可以在评论框内@您的好友一起参与讨论!

<--script type="text/javascript">BAIDU_CLB_fillSlot("927898");