网络已经成为了人类所构建的最丰富多彩的虚拟世界,网络的迅速发展,给我们的工作和学习生活带来了巨大的改变。我们通过网络获得信息,共享资源。如今,Internet遍布世界任何一个角落,并且欢迎任何一个人加入其中,相互沟通,相互交流。随着网络的延伸,安全问题受到人们越来越多的关注。在网络日益复杂化,多样化的今天,如何保护各类网络和应用的安全,如何保护信息安全,成为了本文探讨的重点。
几乎所有接触网络的人都知道网络中有一些费尽心机闯入他人计算机系统的人,他们利用各种网络和系统的漏洞,非法获得未授权的访问信息。不幸的是如今攻击网络系统和窃取信息已经不需要什么高深的技巧。网络中有大量的攻击工具和攻击文章等资源,可以任意使用和共享。不需要去了解那些攻击程序是如何运行的,只需要简单的执行就可以给网络造成巨大的威胁。甚至部分程序不需要人为的参与,非常智能化的扫描和破坏整个网络。这种情况使得近几年的攻击频率和密度显著增长,给网络安全带来越来越多的安全隐患。
我们可以通过很多网络工具,设备和策略来保护不可信任的网络。其中防火墙是运用非常广泛和效果最好的选择。它可以防御网络中的各种威胁,并且做出及时的响应,将那些危险的连接和攻击行为隔绝在外。从而降低网络的整体风险。
防火墙的基本功能是对网络通信进行筛选屏蔽以防止未授权的访问进出计算机网络,简单的概括就是,对网络进行访问控制。绝大部分的防火墙都是放置在可信任网络(Internal)和不可信任网络(Internet)之间。
防火墙一般有三个特性:
A、所有的通信都经过防火墙。
B、防火墙只放行经过授权的网络流量。
C、防火墙能经受的住对其本身的攻击。
我们可以看成防火墙是在可信任网络和不可信任网络之间的一个缓冲,防火墙可以是一台有访问控制策略的路由器(Route+ACL),一台多个网络接口的计算机,服务器等,被配置成保护指定网络,使其免受来自于非信任网络区域的某些协议与服务的影响。所以一般情况下防火墙都位于网络的边界,例如保护企业网络的防火墙,将部署在内部网络到外部网络的核心区域上。
为什么要使用防火墙?很多人都会有这个问题,也有人提出,如果把每个单独的系统配置好,其实也能经受住攻击。遗憾的是很多系统在缺省情况下都是脆弱的。最显著的例子就是Windows系统,我们不得不承认在Windows 2003以前的时代,Windows默认开放了太多不必要的服务和端口,共享信息没有合理配置与审核。如果管理员通过安全部署,包括删除多余的服务和组件,严格执行NTFS权限分配,控制系统映射和共享资源的访问,以及帐户的加固和审核,补丁的修补等。做好了这些,我们也可以非常自信的说,Windows足够安全。也可以抵挡住网络上肆无忌惮的攻击。但是致命的一点是,该服务器系统无法在安全性,可用性和功能上进行权衡和妥协。
对于此问题我们的回答是:"防火墙只专注做一件事,在已授权和未授权通信之间做出决断。"
如果没有防火墙,粗略的下个结论,就是:整个网络的安全将倚仗该网络中所有系统的安全性的平均值。遗憾的是这并不是一个正确的结论,真实的情况比这更糟:整个网络的安全性将被网络中最脆弱的部分所严格制约。即非常有名的木桶理论也可以应用到网络安全中来。没有人可以保证网络中每个节点每个服务都永远运行在最佳状态。网络越庞大,把网络中所有主机维护至同样高的安全水平就越复杂,将会耗费大量的人力和时间。整体的安全响应速度将不可忍受,最终导致网络安全框架的崩溃。
防火墙成为了与不可信任网络进行联络的唯一纽带,我们通过部署防火墙,就可以通过关注防火墙的安全来保护其内部的网络安全。并且所有的通信流量都通过防火墙进行审记和保存,对于网络安全犯罪的调查取证提供了依据。总之,防火墙减轻了网络和系统被用于非法和恶意目的的风险。
对于企业来说,防火墙将保护以下三个主要方面的风险:
A、机密性的风险。
B、数据完整性的风险。
C、用性的风险。
我们讨论的防火墙主要是部署在网络的边界(Network Perimeter),这个概念主要是指一个本地网络的整个边界,表面看起来,似乎边界的定义很简单,但是随着虚拟专用网络(VPN)的出现,边界这个概念在通过VPN拓展的网络中变的非常模糊了。在这种情况下,我们需要考虑的不仅仅是来自外部网络和内部网络的威胁,也包含了远程VPN客户端的安全。因为远程VPN客户端的安全将直接影响到整个防御体系的安全。
防火墙的主要优点如下:
A、防火墙可以通过执行访问控制策略而保护整个网络的安全,并且可以将通信约束在一个可管理和可靠性高的范围之内。
B、防火墙可以用于限制对某些特殊服务的访问。
C、防火墙功能单一,不需要在安全性,可用性和功能上做取舍。
D、防火墙有审记和报警功能,有足够的日志空间和记录功能,可以延长安全响应的周期。
同样的,防火墙也有许多弱点:
A、不能防御已经授权的访问,以及存在于网络内部系统间的攻击。
B、不能防御合法用户恶意的攻击.以及社交攻击等非预期的威胁。
C、不能修复脆弱的管理措施和存在问题的安全策略。
D、不能防御不经过防火墙的攻击和威胁。
现代企业对网络依赖主要来自于运行在网络上的各种应用,同样的,网络的范围也覆盖到整个企业的运营区域。我们将分析一个典型的企业网络,从结构,应用,管理,以及安全这几个层次来探讨一下对企业来说,如何去实现真正的网络安全。
在开始之前,我们首先必须面对一个事实,绝对的安全是没有的。我们所能做的,是减少企业所面临的安全风险,延长安全的稳定周期,缩短消除威胁的反映时间。网管与安全人员需要解决的是来自内部和外部的混合威胁,是蓄意或无意的攻击和破坏,是需要提高整体安全防范意识与科学的协调和管理。客观的去分析现今的企业网络,我们不难发现,在经历了普及终端和网络互联的时代后,我们面对的问题还有很多,如客户端的非法操作,对网络的不合法的访问与利用;网络结构的设计缺陷与混杂的部署环境;网络边界与关键应用的区域缺乏必要的防御措施和审记系统等等。下面我们来逐一分析,并提供相应的产品解决方案与安全建议。
首先是网络内部,即面向企业内部员工的工作站,我们不能保证用户每一次操作都是正确与安全的,绝大情况下,他们仅知道如何去使用面前的计算机来完成属于自己的本职工作。而对于其他,比如病毒,木马,间谍程序,恶意脚本,往往通过内部网络中某一台工作站的误操作而进入到网络并且迅速的蔓延。如访问非法网站,下载或运行不可信程序,使用移动设备复制带有病毒的文件等看似平常的操作。由于如今流行的操作系统存在大量的漏洞与缺陷,并且新的漏洞与利用各种漏洞的蠕虫变种层出不穷,网络的迅速发展,也给这类威胁提供高速繁殖的媒介。特别是企业内部拥有高速的网络环境,给各种威胁的扩散与转移提供了可能。现在人们都通过安装防病毒软件来防御病毒的威胁,但是面对蠕虫和木马程序,后门程序等,防病毒并不能起到很显著的效果,例如蠕虫病毒,一般都是利用操作系统中存在的缺陷和漏洞来攻击与传播的,即使安装了防病毒软件,也没有修补操作系统本身的漏洞,安全威胁从根本上没有被消除。并且随着蠕虫的不断攻击,防病毒系统将会调用大量的系统资源来修复和防御蠕虫攻击后修改的系统文件,频繁的对文件系统进行扫描与恢复。这样也无形的增加了系统的不稳定性,影响了系统的可用性,最关键的是,蠕虫攻击在仍然在网络中传播,给交换机,路由器带来持续的压力和威胁。另外,客户端感染威胁的途径是多种多样的,比如Internet Explorer浏览器漏洞,可以利用VBS恶意脚本,BMP图片木马,ActiveX控件后门程序等,通过各类嵌入攻击代码的网页,在浏览者毫不知情的情况下,后台进驻到操作系统中,修改注册表和系统设置,种植后门程序,收集用户信息和资料。这一切都会给工作站造成无法估量的安全风险。一旦工作站遭到攻击与控制,就很可能威胁到整个内部网络和核心区域,所以我们说,保护好工作站的安全,是企业网络安全的一个重要部分。
通过上面简单的分析和举例,工作站的安全工作主要包含如下几个方面:桌面防病毒,桌面防火墙,系统补丁管理,系统授权与审核,软件使用许可监控和网络访问控制。从如今市场上流行的解决桌面安全的产品中,从保护用户系统的稳定性与可用性以及综合安全的角度,我们选择Symantec公司的Symantec Client Security 2.0 作为桌面防病毒和防火墙的集成安全解决方案。该产品最大的优势是不存在互操作性问题,SCS 2.0将防病毒,防火墙与桌面入侵检测完美结合,提供如今防御混合性威胁最佳组合。采用来自不同厂商的多种单点产品使得全面防护变为一项极为复杂甚至根本不可能的任务,因为跨厂商的互操作性问题往往会存在漏洞,从而使威胁乘虚而入危及安全性。此外,当病毒发作时,必须针对各种不同的技术,对每个厂商提供的修复方案进行测试和验证。这样就降低了对攻击的反应速度,并潜在地增加了成本。
网络的核心区域包括核心交换机,核心路由器等重要设备,它们负担整个网络的核心数据的转发,并且连接着DMZ区的各个关键应用,如OA系统,ERP系统,CRM系统,对内或对外的Web服务器,数据库服务器等。从安全的角度来说,这个区域是最关键的,也是风险最集中的区域。我们遇到的矛盾是,既要不影响DMZ区应用的可用性和友好性,又要保证其访问的安全性与审核。很多情况下我们不但要在网络的边界部署防火墙,也要在这个区域部署为保护DMZ等类似的关键区域的防火墙。
存在的矛盾:如果部署安全策略,在提高安全性的同时,势必会影响其可用性。这个矛盾是不可调和的。
与边界防火墙不同的是,关键区域的防火墙主要是面对内部用户,保护重要服务和资源的访问控制与完善安全日志的收集。边界防火墙不仅仅要防御来自外部的各种威胁,比如扫描,渗透,入侵,拒绝服务攻击等攻击,也要提供诸如NAT服务,出站控制,远程VPN用户和移动用户访问的授权等。我们可以将各种防御的职能根据网络的结构和提供的应用来分派到两类防火墙上来。即内部防火墙重点保护DMZ区域,提供深层次的检测与告警。因为一旦涉及到数据包深入检测,将会大大影响设备的性能。而这是对边界防火墙要求高性能数据过滤和转发,不成为出口瓶颈所不能容忍的。管理人员应该先充分了解网络的特点与用途,结合设备与现有的网络环境灵活部署,才能达到较高可用性与安全性的平衡。
如今的防火墙的功能越来越强大,这里我们选择业界一流的防火墙CheckPoint的Stateful Inspection(状态检测技术)和Web Intelligence(Web智能技术)来简单介绍下对于防火墙的智能防御与Web安全保护。
简单来说,状态检测技术工作在OSI参考模型的Data Link与Network层之间,数据包在操作系统内核中,在数据链路层和网络层时间被检查。防火墙会生成一个会话的状态表,Inspect Engine检测引擎依照RFC标准维护和检查数据包的上下文关系。该技术是CheckPoint发明的专利技术。对状态和上下文信息的收集使得CheckPoint防火墙不仅能跟踪TCP会话,也能智能处理无连接协议,如UDP或RPC。这样就保证了在任何来自服务器的数据被接受前,必须有内部网络的某一台客户端发出了请求,而且如果没有受到响应,端口也不会处于开放的状态。状态检测对流量的控制效率是很高的,同时对于防火墙的负载和网络数据流增加的延迟也是非常小。可以保证整个防火墙快速,有效的控制数据的进出和做出控制决策。
在Web环境中,威胁来自于多个方面,从端点到传输到边界,最后到达Web服务器和后台数据库。这一系列的数据交换将会引发大量的安全问题。传统的防火墙的功能对于Web的保护相当有限,比如,无法深入检测HTTP的内容,不能理解Web应用的上下文,性能低下,无法提前部署与防御等等。CheckPoint的Web Intelligence,有一种名为Malicious Code Protector(可疑代码防护器)来提供对应用层的保护。比如,Web会话是否符合RFC的标准不能包含二进制数据;协议使用是否为预期或典型的;应用是否引入了有害的数据或命令;应用是否执行了未授权的操作或引入了有害的可执行代码等。如何去判断上述的一些威胁呢?MCP使用了通过分拆及分析嵌入在网络传输中的可执行代码,模拟行来判断攻击,将可执行代码放置到一个虚拟的仿真服务器中运行,检测是否对虚拟系统造成威胁,最终来决定是否定义为攻击行为。该技术最大的优势是可以非常精确的阻止已知和未知攻击,并且误报率相当低。
通过多种技术的协同防护,可以保证在网络边界对访问进行控制,但是,随着VPN网络和远程移动办公用户的接入增多,网络边界的概念在如今已经非常模糊了。很明显的,网络的边界已经拓展到实际用户的桌面端。所以还是回到了我们文章一开始谈到的,网络安全是需要综合的部署和完善的策略来做保证的。企业的网络安全是一项综合性很强的工作,并且持续的时间将随着整个拓扑和应用的周期而扩展。