随着计算机与通信网络技术的融合与发展,网络信息安全作为信息化过程中的关键问题之一,得到了越来越多的关注。前两讲对网络各层安全协议进行了介绍,这一讲将着重介绍信息系统安全技术方面的防火墙和入侵检测技术。
3 防火墙
防火墙作为一种有效的网络安全机制,在内部网和互联网的边界上限制外网非授权者网络流量进入内网,同时也限制内网的敏感信息进入外网。防火墙可以设置安全规则,通过过滤不安全的服务来降低风险,提高内部网络的安全性。由于只有经过选择并授权允许的应用协议才能通过防火墙,所以网络环境变得更安全。
防火墙可以禁止不安全的网络访问请求进出受保护的网络,使攻击者不可能利用这些协议来攻击内部网络。防火墙同时可以保护网络免受基于路由的攻击,如IP选项中的源路由攻击和Internet控制消息协议(ICMP)重定向路径。
防火墙能够拒绝各种类型攻击报文,并将情况及时通知防火墙管理员。通过以防火墙为中心的安全方案,系统将所有安全软件(如口令、加密、身份认证)配置在防火墙上。与将网络安全问题分散到各个主机上相比,防火墙的集中安全管理更经济。
由于所有的访问都必须经过防火墙,所以防火墙不仅能够制作完整的日志记录,而且还能够提供网络使用情况的统计数据。当发生可疑动作时,防火墙能进行报警,并提供网络是否受到监测和攻击的详细信息。另外,收集一个网络的使用情况也是一项非常重要的工作。这不仅有助于了解防火墙的控制是否能够抵挡攻击者的探测和攻击,了解防火墙的控制是否充分有效,而且有助于得出网络需求分析和威胁分析。
通过利用防火墙对内部网络的划分,可实现内部网中重点网段的隔离,限制内部网络中不同部门之间互相访问,从而保障网络内部敏感数据的安全。另外,隐私是内部网络非常关心的问题,一个内部网络中不引人注意的细节可能包含了有关安全的线索而引起外部攻击者的兴趣,甚至由此而暴露了内部网络的某些安全漏洞。使用防火墙可以隐藏那些透露内部细节的服务。
防火墙技术可根据防范方式和侧重点的不同而分为很多种类型,但总体来讲一般分为包过滤、应用级网关和代理服务器等几大类型。
3.1 数据包过滤型防火墙
数据包过滤技术在网络层对数据包进行选择,选择的依据是系统内设置的过滤逻辑(被称为访问控制表)。通过检查数据流中每个数据包的源地址、目的地址、所用的端口号、协议状态等因素,或它们的组合来确定是否允许该数据包通过。
包过滤是一种通用、廉价、有效的安全手段。之所以通用,因为它不针对各个具体的网络服务采取特殊的处理方式;之所以廉价,因为大多数路由器都提供分组过滤功能;之所以有效,因为它能很大程度地满足企业的安全要求。包过滤所根据的信息来源于IP、TCP或UDP包头。
包过滤的优点是不用改动客户机和主机上的应用程序,因为它工作在网络层和传输层,与应用层无关。但其缺点也很明显:用以过滤判别的信息只有网络层和传输层的有限信息,因而各种安全要求不可能充分满足;在许多过滤器中,过滤规则的数目是有限制的,且随着规则数目的增加,性能会受到很大地影响;由于缺少上下文关联信息,不能有效地过滤如数据报协议(UDP)、远程过程调用(RPC)一类的协议;大多数过滤器中缺少审计和报警机制,且管理方式和用户界面较差;对安全管理人员素质要求高,建立安全规则时,必须对协议本身及其在不同应用程序中的作用有较深入的理解。因此,过滤器通常和应用网关配合使用,共同组成防火墙系统。
3.2 应用级网关型防火墙
应用级网关是在网络应用层上建立协议过滤和转发功能。它针对特定的网络应用服务协议使用指定的数据过滤逻辑,并在过滤的同时对数据包进行必要的分析、登记和统计,形成报告。实际中的应用网关通常安装在专用工作站上。
数据包过滤和应用网关防火墙有一个共同的特点,就是它们仅仅依靠特定的逻辑判定是否允许数据包通过。一旦满足逻辑,则防火墙内外的计算机系统建立直接联系,防火墙外部的用户便有可能直接了解防火墙内部的网络结构和运行状态,不利于防止非法访问和攻击。
3.3 代理服务型防火墙
代理服务也称链路级网关或TCP通道。它是针对数据包过滤和应用网关技术存在的缺点而引入的防火墙技术,其特点是将所有跨越防火墙的网络通信链路分为两段。防火墙内外计算机系统间应用层的连接由两个终止于代理服务器的“链接”来实现,外部计算机的网络链路只能到达代理服务器,从而起到了隔离防火墙内外计算机系统的作用。
此外,代理服务也对过往的数据包进行分析、注册登记,形成报告,同时当发现被攻击迹象时会向网络管理员发出警报,并保留攻击痕迹。
应用代理型防火墙是内部网与外部网的隔离点,起着监视和隔绝应用层通信流的作用,同时也常结合有过滤器的功能。它工作在OSI模型的最高层,掌握着应用系统中可用作安全决策的全部信息。
应用代理防火墙要求对每个应用安装相应的代理程序,透明性差,效率不高。
3.4 复合型防火墙
把基于包过滤的方法与基于应用代理的方法结合起来,形成复合型防火墙产品。这种结合通常采用以下两种方案:
(1)屏蔽主机防火墙体系结构
在该结构中,分组过滤路由器或防火墙与Internet相连,同时一个堡垒机安装在内部网络,通过在分组过滤路由器或防火墙上过滤规则的设置,使堡垒机成为Internet上其他节点所能到达的唯一节点,确保内部网络不受未授权外部用户的攻击。
(2)屏蔽子网防火墙体系结构
堡垒机放在一个子网内,形成非军事区(DMZ)。两个分组过滤路由器放在这一子网的两端,使这一子网与Internet及内部网络分离。在屏蔽子网防火墙体系结构中,堡垒主机和分组过滤路由器共同构成整个防火墙的安全基础。
目前防火墙技术发展动向和趋势主要有:防火墙将从目前对子网或内部网管理的方式向远程上网集中管理的方式发展;过滤深度不断加强,从目前的地址、服务过滤,发展到页面、关键字过滤和对ActiveX控件、Java小程序等的过滤,并逐渐有病毒扫除功能;利用防火墙建立专用网是较长一段时间内的主流。由于IP加密需求越来越强,安全协议的开发成为热点;包过滤系统向着更具柔性和多功能的方面发展;对网络攻击的检测和告警将成为防火墙的重要功能;防火墙与入侵检测系统的联动,即当入侵检测系统检测到入侵时,通知防火墙阻断攻击;安全管理工具不断完善,特别是可疑活动的日志分析工具等将成为防火墙产品的一部分。
随着因特网基础技术的发展,要求防火墙技术更新。而作为因特网的协议,IP也面临着巨大的变革,目前,人们正在设计新的IP协议。IP协议变化必将对防火墙技术发展产生深刻影响。
4 入侵检测技术
入侵检测技术是为了保证计算机系统的安全而设计与配置的一种能够及时发现并报告系统中未授权或异常现象的技术,是一种用于检测计算机网络中违反安全策略行为的技术。利用审计记录,入侵检测系统能够识别出任何不希望有的活动,从而达到限制这些活动保护系统安全的作用。入侵检测系统能在入侵攻击对系统发生危害前检测到入侵攻击,并利用报警与防护系统驱逐入侵攻击。入侵检测系统能减少入侵攻击所造成的损失,在被入侵攻击后,收集入侵攻击的相关信息,并作为防范系统的知识添加入知识库内,从而增强系统的防范能力。
入侵检测系统通常由两部分组成:传感器与控制台。传感器负责采集数据(网络包、系统日志等)、分析数据并生成安全事件,控制台主要起中央管理的作用。
入侵检测系统基本上分为如下几类:基于网络的入侵检测、基于主机的入侵检测、混合的入侵检测和文件完整性检查。
4.1 基于网络的入侵检测
基于网络的入侵检测产品(NIDS)放置在比较重要的网段内,不间断地监视网段中的各种数据包,对每一个数据包或可疑的数据包进行特征分析。NIDS如果发现数据包与产品内置的某些特征吻合,入侵检测系统就会发出警报甚至直接切断网络连接。目前,大部分入侵检测产品是基于网络的。
基于网络的入侵检测系统有以下优点:能够检测那些来自网络的攻击和未经授权的非法访问;不需要改变服务器的配置。由于不需要在业务系统的主机中安装额外的软件,因而不会影响这些机器的CPU、I/O与磁盘等资源的使用,不会影响业务系统的性能。
由于网络入侵检测系统与路由器、防火墙等关键设备工作方式不同,因此不会成为系统中的关键路径,网络入侵检测系统发生故障不会影响正常业务的运行。部署一个网络入侵检测系统的风险比部署主机入侵检测系统的风险少得多。
网络入侵检测系统存在如下缺点:系统只检查与它直接连接网段的通信,不能检测在不同网段的网络包;网络入侵检测系统通常采用特征检测的方法,可以检测出普通攻击,但很难实现需要大量计算与分析时间的攻击检测;网络入侵检测系统会将大量的数据传回分析系统,在一些系统中监听特定的数据包也会产生大量的分析数据流量;网络入侵检测系统对加密的通信信息处理较困难,目前通过加密通道的攻击尚不多,但随着IPv6的普及,这个问题会越来越突出。
4.2 基于主机的入侵检测
基于主机的入侵检测系统(HIDS)通常安装在被重点检测的主机之上,主要是对该主机的网络实时连接以及系统审计日志进行智能分析和判断。如果发现可疑活动(具有可疑特征或违反统计规律),入侵检测系统就会采取相应措施。
主机入侵检测系统有如下优点:对分析“可能的攻击行为”非常有用;主机入侵检测系统与网络入侵检测系统相比通常能够提供更详尽的信息;主机入侵检测系统通常情况下比网络入侵检测系统误报率要低,因为检测在主机上运行的命令序列比检测网络流更简单,系统的复杂性也少得多。
主机入侵检测系统存在如下缺点:主机入侵检测系统安装在需要保护的设备上会降低应用系统的效率;依赖于服务器固有的日志与监视能力。如果服务器没有配置日志功能,则必需重新配置;全面部署主机入侵检测系统代价较大;主机入侵检测系统除了监测自身的主机以外,不监测网络上的情况,但对入侵行为的分析工作量随着主机数目增加而增加。
4.3 混合入侵检测
基于网络的入侵检测产品和基于主机的入侵检测产品都有不足之处,单纯使用一类产品会造成主动防御体系不全面。但是,它们可以互补,如果这两类产品能够结合起来部署在网络内,则会构架成一套完整立体的主动防御体系。综合了基于网络和基于主机两种结构特点的入侵检测系统,既可发现网络中的攻击信息,也可从系统日志中发现异常情况。
4.4 文件完整性检查
文件完整性检查系统检查计算机中自上次检查后文件变化情况。文件完整性检查系统保存有每个文件的数字摘要(散列值)数据库,每次检查时,它重新计算文件的散列值并将它与数据库中的值相比较,如不同,则文件已被修改,若相同,文件则未发生变化。
当一个入侵者攻击系统时,会干两件事,首先,要掩盖他的踪迹,即通过更改系统中的可执行文件、库文件或日志文件来隐藏他的活动;其次,要作一些改动保证下次能够继续入侵。这两种活动都能够被文件完整性检查系统检测出来。
文件完整性检查系统存在一些缺点:文件完整性检查系统依赖于本地的文摘数据库,与日志文件一样,这些数据可能被入侵者修改;一次完整的文件完整性检查非常耗时;系统有些正常的更新操作可能会带来大量的文件更新,从而产生比较繁杂的检查与分析工作。
4.5 入侵检测技术分类
(1)特征检测
特征检测又称误用检测,这一检测对已知的攻击或入侵的方式作出确定性的描述,形成相应的事件模式。当被审计的事件与已知的入侵事件模式相匹配时,即报警。特征检测原理上与专家系统相仿,其检测方法上与计算机病毒的检测方式类似。目前基于对包特征描述的模式匹配应用较为广泛。
该方法预报检测的准确率较高,可以将已有的入侵方法检查出来,但对于无经验知识的入侵与攻击行为无能为力。其难点在于如何设计使模式既能够表达入侵现象又不会将正常的活动包含进来。
(2)异常检测
异常检测假设入侵者活动异常于正常主体。根据这一理念建立主体正常活动的“活动轮廓”,将当前主体的活动状况与“活动轮廓”相比较,当违反统计规律时,认为该活动可能是入侵行为。异常检测的难题在于如何建立“活动轮廓”以及如何设计统计算法,从而不把正常的操作作为入侵或忽略真正的入侵行为。
在统计模型中常用的测量参数包括审计事件的数量、间隔时间、资源消耗情况等。常用的入侵检测统计模型为操作模型、方差模型、多元模型、马尔柯夫过程模型和时间序列分析。统计方法的最大优点是可以“学习”用户的使用习惯,从而具有较高检出率与可用性。但是它的“学习”能力也给入侵者以机会,通过逐步“训练”使入侵事件符合正常操作的统计规律,从而透过入侵检测系统。
(3)专家系统
专家系统通常是对有特征入侵行为进行检测。专家系统的建立依赖于知识库的完备性,知识库的完备性又取决于审计记录的完备性与实时性。入侵的特征抽取与表达,是入侵检测专家系统的关键。运用专家系统防范有特征入侵行为的有效性完全取决于专家系统知识库的完备性。
4.6 入侵检测技术发展方向
无论从规模与方法上入侵技术近年来都发生了变化。入侵的手段与技术也有了“进步与发展”。入侵技术的发展与演化主要反映在下列几个方面:
(1)入侵或攻击的综合化与复杂化。入侵的手段有多种,入侵者往往采取一种攻击手段。由于网络防范技术的多重化,攻击的难度增加,使得入侵者在实施入侵或攻击时往往同时采取多种入侵手段,以保证入侵的成功,并在攻击实施的初期掩盖攻击或入侵的真实目的。
(2)入侵主体对象的间接化,即实施入侵与攻击的主体的隐蔽化。通过一定的技术,可掩盖攻击主体的源地址及主机位置。
(3)入侵或攻击的规模扩大。由于战争对电子技术与网络技术的依赖性越来越大,随之产生、发展、逐步升级到电子战与信息战。
(4)入侵或攻击技术的分布化。以往常用的入侵与攻击行为往往由单机执行,由于防范技术的发展使得此类行为不能奏效。分布式拒绝服务在很短时间内可造成被攻击主机的瘫痪,且此类分布式攻击的单机信息模式与正常通信无差异,所以往往在攻击发动的初期不易被确认。分布式攻击是近期最常用的攻击手段。
(5)攻击对象的转移。入侵与攻击常以网络为侵犯的主体,但近期来的攻击行为却发生了策略性的改变,由攻击网络改为攻击网络的防护系统,且有愈演愈烈的趋势。
入侵检测技术预计将朝3个方向发展。
(1)分布式入侵检测。第1层含义,即针对分布式网络攻击的检测方法;第2层含义即使用分布式的方法来检测分布式的攻击,其中的关键技术为检测信息的协同处理与入侵攻击的全局信息提取。
(2)智能化入侵检测,即使用智能化的方法与手段来进行入侵检测。智能化方法现阶段常用的有神经网络、遗传算法、模糊技术、免疫原理等,这些方法常用于入侵特征的辨识。利用专家系统的思想来构建入侵检测系统也是常用的方法之一,特别是具有自学习能力的专家系统,实现了知识库的不断更新与扩展,使设计的入侵检测系统的防范能力不断增强,应具有更广泛的应用前景。应用智能体的概念来进行入侵检测的尝试也已有报道。较有前途的解决方案应为高效常规意义下的入侵检测系统与具有智能检测功能的检测软件或模块的结合使用。
(3)全面的安全防御方案,即使用安全工程风险管理的思想与方法来处理网络安全问题,将网络安全作为一个整体工程来处理。从管理、网络结构、加密通道、身份认证、防火墙、病毒防护、入侵检测多方位全面对所关注的网络进行全面的评估,然后提出可行的全面解决方案。(续完)
5 参考文献
[1] Diffie W, Hellman M. New Directions in Cryptography[J]. IEEE Trans on Information Thoery, 1976, 22(6):644—654.
[2] Rivest R, Shamir A,Adleman L. A Method for Obtaining Digital Signatures and Pulic-Key Cryptosystems[J]. Communications of the ACM, 1978(21):120—126.
[3] ElGamal T. A Public Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms[J]. IEEE Trans on Information Theory, 1985,31(4):469—472.
[4] 王育民, 刘建伟. 通信网的安全——理论与技术[J]. 陕西西安:西安电子科技大学出版社, 1999.
[5] Bruce Schneier. 应用密码学——协议、算法与C源程序[M]. 吴世钟, 祝世雄, 张文政译. 北京:机械工业出版社, 2000.
[6] IEEE Standard 802.10. IEEE Standard for Interoperable LAN/MAN Security(SILS) [S]. 1998.
[7] IEEE Standard 802.10c. Supplement to Standard for Interoperable LAN/MAN Security (SILS) — Key Management (Clause 3) [S]. 1998.
[8] GB15629.11. 无线局域网媒体访问控制和物理层规范[S]. 2003.
[9] Denning D E. An Intrusion-detection
Model[J]. IEEE Trans on Software Engineering, 1987, 13(2):222—232.
[10] Arbaugh W A, Fithen W L, McHugh J. Windows of Vulnerability:A Case Study Analysis [J].IEEE Computer. 2000,33(12).
[11] 唐正军.网络入侵监测系统的设计与实现
[M].北京:电子工业出版社, 1999.
收稿日期:2003-11-19