主动防御系统及应用研究
主动防御系统及应用研究
黄家林 张征帆
中南大学信息科学与工程学院 湖南 410083
摘要:随着互联网应用的深入,计算机系统安全和网络安全受到的威胁日益增加。传统的被动防御体系已经无法应对目前的自动化、大规模的网络攻击行为。尽管主动防御自身还存在一些尚待解决的问题,但它的出现已经开始改变这样的局面,并在一定范围内取得了不错的效果。本文首先介绍了主动防御的概念、组成,随后分析了目前存在的主要问题,最后以蠕虫病毒防御为例介绍了它的应用。
关键词:网络安全;主动防御;蠕虫防御
0 引言
随着社会信息化以及网络应用的日益深入,网络在人们的生活中扮演着越来越重要的角色。与此同时,从网络专家到普通网络用户都逐渐认识到网络安全是我们迫待解决的问题,它正成为阻碍网络发展、甚至危机国家安全的重要问题。各国政府和网络安全研究人员都投入大量人力、财力对此进行研究,防火墙、IDS、IPS、VPN、杀毒软件等网络安全设备(措施)相继问世,并得到广泛应用。虽然这些安全设施在一定程度上保护了网络的安全、缓解了我们所面临的威胁,但目前我们还不能说网络安全问题已经得到了很好的解决。CNCERT/CC2005年网络安全工作报告中显示,2005年CNCERT/CC共收到国内外网络安全事件报告12万多件,与2004年相比,数量增长了一倍左右。那么为什么我们耗费大量财力部署的网络安全设备在黑客、病毒的攻击下如此脆弱呢?主要有以下两个原因:一方面,近年来黑客技术的进步,计算机蠕虫、病毒技术的发展,以及两者日益结合的趋势使得病毒和黑客的攻击行为更难以探测和防范;更重要的是网络安全体系和安全理念的明显滞后。面对不断发展变化的安全威胁,现有的安全防御体系和安全产品逐渐显露出“先天不足”的缺陷,设计理念滞后仍旧处于“修修补补、围追堵截”或“头痛医头、脚痛医脚”的被动防御阶段。因此,我们迫切需要一种全新的安全体系,以改变我们目前所处的不利局面。
使得我们在与黑客、病毒等网络安全威胁的对抗当中摆脱以往的不利局面。主动防御系统也被认为是下一代的网络安全体系的发展方向。
2 主动防御系统的组成及主要技术
建立主动防御系统是一项十分复杂的工程,不是购买单一安全产品能够实现,也不是各种网络安全产品的简单堆砌或叠加。它要求我们将各种安全产品有机的结合起来构成一个动态的多层次的防御系统,系统各部分应能相互协调、协作形成一个整体,完成整个威胁响应生命周期的自动管理。
我们可以根据P2DR模型来对主动防御系统进行分析。P2DR (Policy、Protection、Detection和Response)模型(如图1所示)是可适应网络安全理论或称为动态信息安全理论的主要模型。P2DR模型是TCSEC(Trusted Computer System Evalua-tion Criteria)模型的发展,也是目前被普遍采用的安全模型。P2DR模型是在整体的安全策略的控制和指导下,在综合运用防护工具(如防火墙、操作系统身份认证、加密等手段)的同时,利用检测工具(如漏洞评估、入侵检测等系统)了解和评估系统的安全状态,将系统调整到“最安全”和“风险最低”的状态。防护、检测和响应组成了一个 “完整的、动态的”安全威胁响应循环,在安全策略的整体指导下保证信息系统安全。主动防御是按照P2DR模型建立的,也可以分为策略、防护、检测和响应4个部分,下面分别介绍一下各组成部分及采用的主要技术。
1 什么是主动防御系统
为了解决上述的问题,各安全厂家相继提出了主动防御的概念(如Cisco的自防御网络、Enterasys的动态入侵响应系统、华为3COM安全渗透网络等)。尽管各厂家所采用的技术和实现方式不尽相同,但它们的基本思想有很多相似之处,即希望使安全成为网络的一部分,今后的计算机网络不但要具有保护网上主机系统,网上终端系统,网上应用系统的能力,关键是要网络本身也具有自我保护能力,自我防御能力,自我愈合能力,当网络受到攻击时做到在保护网络应用的同时,又保护了网络自身。主动防御的提出改变了安全防御的观念,从传统的被动防御变为主动防御,这一观念的转变将
图1 P2DR模型
2.1 安全策略
从图1中我们可以看到安全策略处于整个模型的核心位置,防护、检测、响应等一系列安全措施的部署和实施都是以它为中心的。因此,
在我们建立主动防御系统时也应首先
作者简介:黄家林(1952-),男,中南大学网络中心副主任,研究员,主要研究方向:计算机网络管理与网络安全。张征帆(1980-),
男,中南大学信息科学与工程学院计算机应用专业,研究生,主要研究方向:计算机网络管理与网络安全。
482007.3
确定一个满足实际需要的安全策略。安全策略应该包括用于描述组织所拥有的资产价值,以及它可能面临的风险所带来的损失,并且需要对每一个选定的资产制定一个可以接受的、合理的保护措施。
速,出现了大量的检测技术和新产品,但从检测方法来看并没有太大的变化,它们都能归为两种检测模型 :
(1)异常检测模型:检测与可接受行为之间的偏差。如果定义了每项可接受的行为,那么每项不可接受的行为就应该被视为入侵。首先总结正常操作应该具有的特征(用户轮廓),当用户活动与正常行为有重大偏离时即被认为是入侵。这种检测模型漏报率低,误报率高。这种检测模型是根据是否存在异常行为来达到检测目的的,所以它能有效的检测出未知的入侵行为。
(2)模式匹配检测模型:检测与已知的不可接受行为之间的匹配程度。如果可以定义所有的不可接受行为,那么每种能够与之匹配的行为都会引起告警。收集非正常操作的行为特征,建立相关的特征库,当监测的用户或系统行为与库中的记录相匹配时,系统就认为这种行为是入侵。这种检测模型误报率低、漏报率高。对于已知的攻击,它可以详细、准确地报告出攻击类型,但是对未知攻击却效果有限,而且特征库必须不断更新。
2.2 防护技术
防护措施是保证网络安全的第一道屏障,指的是在威胁发生之前所做的预防性措施,类似于打预防针的方法,使网络上的主机以及网络自身对威胁产生免疫的效果。
最主要的防护措施包括:合理的配置系统,去除不必要的服务和选项;给系统、应用软件及时打补丁等。而在网络层次上的防护技术主要有:防火墙、VPN等。其中,防火墙技术是网络安全采用最早也是目前使用最为广泛的技术,它采用定义规则过滤非法流量和恶意代码等方式将网络威胁阻挡在网络入口处,保证了内网的安全。而以VPN为代表的加密,认证技术则将非法用户拒之门外,并将发送的数据加密避免在途中被监听、修改或破坏。
另外,近期在市场上出现了一些安全准入的产品,如:CISCO的网络准入控制(NAC)、华为3Com端点准入防御(EAD)、Microsoft NAP(Network Access Protection)等。其基本思想是在向终端设备提供网络权限之前确保它们符合安全政策,如果发现了不安全的设备,就可以阻止这些设备进入网络,并将它们限制于指定的网段,或者通过自动纠正流程使它们符合安全政策的要求。从中可以看出它也是采取了将威胁“拒之门外”的方式,可以看作是对以往认证技术的加强,因此端点准入技术也应归于防护技术之列。
并不是说采用了以上介绍的防护措施就能高枕无忧了,加强管理员和用户的安全教育,提高安全意识才是最有效的防护手段。
2.4 响应技术
威胁响应是主动防御循环中的最后一步,它用来对检测到的威胁事件进行处理,并将处理结果返回给系统从而进一步提高系统的处理威胁的能力。目前对于威胁响应的研究还比较薄弱。
响应技术是多种多样的,如按照自动化程度可以分为:报警响应系统、手工响应系统、自动响应系统。目前大部分的响应系统属于报警类型,检测到入侵事件之后,它只提供基本的报警服务。部分手工响应系统可以提供有限的预先编制好的响应程序,并能指导系统管理员选择合适的程序进行响应。与报警类型的系统相比,这类系统优点明显,但是仍然会给攻击者留下了较大的入侵时间窗口。而自动入侵响应系统不需要管理员手工干预,检测到入侵行为后,系统自动进行响应决策,自动执行响应措施。不论是从应对数量惊人的入侵事件考虑,还是从缩短响应时间考虑,自动入侵响应系统都是较为理想的响应系统,也是今后入侵响应系统的发展方向。响应技术还可以按照所采用技术在TCP/IP模型中所处的层次进行划分,可分为:数据链路层响应措施(如管理性关闭与攻击发起者相连的交换机端口)、网络层响应措施(如通过与防火墙、路由器交互添加规则ACL表或直接通过IPS阻挡从某个IP的所有通信)、传输层响应措施(如产生TCP RST包断开恶意连接、采用包含ICMP错误代码的包来对付恶意的UDP流量)、应用层响应措施(去除恶意代码或阻挡其运行)。
2.3 检测技术
既然有了防护技术将威胁“拒之门外”,我们还有必要再进行检测吗?答案是肯定的。一方面,没有100%可靠的防护技术,新漏洞和新攻击手段的出现、错误的配置、缺乏安全意识的用户等都能造成我们的网络被攻破。另一方面,来自内部的攻击可以轻易的逃避外围安全设备的检测。早在2002年,FBI和CSI对484家公司进行的网络安全调查结果就显示 :超过85%的安全威胁来自公司内部,由于内部人员泄密所导致的资产损失高达6千多万美元,它是黑客所造成损失的16倍,病毒所造成损失的12倍。因此,在采用防护措施的同时,还要考虑当外围防御被攻破后怎么处理。综上所述,要建立一个“内外兼防”、“安全可靠”的多层次防御体系,检测技术是必不可少的组成部分。
目前的检测任务主要是由IDS完成的。入侵检测技术是为保证计算机系统的安全而设计与配置的一种能够及时发现并报告系统中未授权或异常现象的技术,是一种用于检测计算机网络中违反安全策略行为的技术。虽然目前IDS发展迅
3 目前主动防御存在的主要问题
既然主动防御思想已经提出了一段时间,为什么相应的产品和系统迟迟没有被大规模部署呢?这是因为目前主动防御系统还存在一些尚未解决的难点:
(1)威胁检测技术不完善
2007.3
49
快速、准确的发现威胁是建立主动防御的基础,没有好的检测技术做保证,主动防御是不可能实现的。目前,检测技术存在最大问题是出现大量的误报、漏报现象。常用的检测方法有特征检测、异常检测、状态检测、协议分析等,而这些检测方式都存在不同的缺陷。比如异常检测通常采用统计方法来进行检测。而统计方法中的阈值难以有效确定,太小的值会产生大量的误报,太大的值又会产生大量的漏报。而在协议分析的检测方式中,一般的IDS只简单的处理了常用的如HTTP、FTP、SMTP等,其余大量的协议报文完全可能造成IDS漏报,如果考虑支持尽量多的协议类型分析,成本将是用户无法承受的。再比如在异常检测中,各种协议变体、过多的IP分片和异常TCP分段都有可能导致IDS误报。IDS的实现总是在漏报和误报中徘徊,漏报率降低了,误报率就会增高;同样误报率降低了,漏报率就会增高。一般地,会在两者中取一个折衷,并且能够进行调整,以适应不同的网络环境。
(2)缺乏对威胁自动响应的能力
威胁的自动响应是主动防御与被动防御的主要区别,即是它的优势所在,也是它的主要问题所在。目前的安全产品普遍缺乏威胁自动响应功能或响应功能过于简单,不能满足实际需要。如2.4中所述,目前广泛采用的仍旧是报警响应系统或手工响应系统,而这种方式存在响应时间慢的缺点。在目前的网络威胁下,要减小所受的损失最有效的办法就是将其限制在尽可能小的范围内、尽最大可能缩短入侵发现和响应执行之间的时间窗口,即缩短响应时间,这也正是需要引入自动响应的原因。出现这一局面是由两方面原因引起的。首先由于目前检测技术的不完善,使得自动响应缺乏可靠的依据。其次,自动响应技术本身在实现时还存在一定的难度。
除了以上提到的主动防御本身技术上的问题外,缺乏统一的标准也是阻碍主动防御发展的重要因素,要解决这一问另外,关于网络威胁防御的立法工作还比较薄弱,而主动防御的防御手段大部分类似于攻击行为,可能会对第三方产生影响,这就使得主动防御缺乏法律依据,在遇到法律纠纷时很难解决。
毒都给我们留下了深刻的印象。传统的被动防御体系在面对蠕虫爆发时显的无能为力,即使采用了防火墙、IDS等安全措施的网络也不能幸免。蠕虫病毒之所以难以预防是与它的传播方式分不开的,蠕虫病毒能够在不需要人工参与的情况下迅速大量繁殖。在蠕虫爆发时即使检测设备检测到攻击,在管理员采取措施之前病毒已经大量繁殖造成了处理的困难。从此我们可以看出蠕虫的防御的重点在于要在蠕虫爆发的第一时间采取快速有效的措施,缩短响应时间,将蠕虫限制在较小的范围内。而这正是我们前面所说的主动防御的特点所在。因此,主动防御被用于蠕虫防御有其“天然”的优势。
要防御蠕虫首先就要检测它。因为蠕虫病毒大都是利用系统的某个漏洞进行攻击,并且在其传播阶段会表现出异常行为,也就是说蠕虫大都具有比较明显的特征。我们可以采用模式匹配或者行为分析的方法较为准确的检测到蠕虫病毒,并采用自动的方式有效的抑制蠕虫病毒的传播。根据蠕虫的传播模型
dI(t)/dt =β I(t)S(t)
(其中dI(t)/dt 表示蠕虫的传播速度,β为一个常量,I(t)、S(t)分别代表已经被蠕虫感染的机器数量和存在蠕虫能够利用的漏洞可被传染的机器数量),由上式可以看出延缓蠕虫病毒的扩散速度可以从降低已被感染的机器数量和降低可能被传染的机器数量两个方面入手。降低已被感染机器的数量最直接有效的方式就是将其从网络上隔离。可能采用的方式有DNS重定向、修改ACL表或路由信息和关闭其接入网络的端口等方式。前两种方式并不能彻底阻断蠕虫的进一步传播,第一种方式在蠕虫病毒直接采用IP地址进行传播和被感染机器没有采用被修改了的DNS服务器的情况下将失去作用;而修改ACL表和路由信息从根本上说是使路由器停止对来自被感染机器IP地址的数据包进行转发,虽然这种方式将蠕虫病的进一步传播。关闭接入端口的方式,首先可以自动通过数据链路层拓扑发现算法将被感染机器定位到与其最近的可管理接入层设备(一般为具有SNMP功能的交换机)的具体端口,然后采用SNMP协议关闭所在端口。这种方式可以最为精确的将被感染机器隔离,是目前较为理想的处理方式。另外一种延缓蠕虫传播的方式要从降低可被感染的机器数量入手。主要是通过打补丁的方式,使其对病毒具有免疫作用。但大部分用户并不知道应该在何时给系统打补丁,这就需要系统能够自动完成这项工作。其实现途径为建立专门的漏洞扫描服务器,定期对网段内的机器进行扫描当发现有存在漏洞的机器时在用户不知情的情况下对系统自动安装所需补丁。David M.Nicol等人对以上两种方式在减缓蠕虫传播所起到的效果进行了研究。其研究结果如图2所示,这个图横坐标表示时间(0点为蠕虫开始爆发的时间),纵坐标表示被感染的主机数量。它对比了在五种情况下蠕虫的传播情况(其中empty
题需要标准化组织和各生产厂家的协作和支持才能得以解决。毒限制在了一个网段内,但不能阻断蠕虫病毒在同一网段内
4 主动防御的应用
既然主动防御系统目前尚未很好解决的以上问题,那么有人会认为主动防御目前还只是一个概念,在实际中无用武之地。 这种想法是错误的,主动防御系统虽然有各种各样的问题,尚不具备大规模推广使用的条件;但它并不只停留在概念阶段,已经有一些主动防御系统在一定领域内得到应用,并取得了不错的效果。在文章的其余部分中将以网络蠕虫病毒的防御为例介绍主动防御的应用。
自从1988年Morris制造出第一个蠕虫病毒以来,蠕虫病毒从未停止过对网络的破坏,并有日益严重的趋势。2001年的红色代码II、Nimda,2003年的Slammer、Blaster等蠕虫病
50
2007.3
defense表示不采取任何措施的情况; simple patch表示由补丁服务器对主机扫描,当发现有漏洞时,由补丁服务器自动给其打补丁;spreading patch是对上一种方式的改进,不同之处在于当给易感染主机打补丁的同时也使其成为新的补丁服务器,这样系统中的补丁服务器是在不断增加的;nullifyingworm表示由扫描服务器对主机扫描当发现已被感染机器时,将其从网络中隔离;sniper worm是对第四种方式的改进,服务器并不对主机扫描而处于被动监听状态,当发现有蠕虫对其进行扫描时,根据源IP地址确定已被感染主机的位置,然后将其隔离)。我们可以看出当采用了主动防御的措施后,蠕虫的传播速度明显降低、范围大大缩小,这就为管理员赢得了时间,降低了处理的难度,这是以往的被动防御无法完成的。
了今后网络安全的发展方向和研究重点。虽然目前还存在一些尚未解决的问题,还不能大规模的部署使用,但我们已经看到其在部分领域内已经起到了不可替代的作用。随着对主动防御研究的深入和新产品的推出,它必将得到更为广泛的应用,成为我们应对网络威胁的有利武器。
参考文献
[1]CNCERT/CC2005年网络安全工作报[ EB/OL ].http://www.cert.org.cn/upload/2005CNCERT-CCAnnualReport.pdf.2006.[2]思科自防御网络(SDN)概述[ EB/OL ]. http://www.cisco.com/.2006.[3]P2DR模型[ EB/OL ].http://bj.is-one.net/safe/standard/P2DR/.2006.[4]网络准入控制—保护网络安全[ EB/ OL ].http://www.cisco.com/global/CN/-solutions/products_netsol/security/solution/se_ov_nac5_wp.shtml.2006.
[5]张琳.内网安全渐成企业信息安全最大隐患[EB/OL].http://www.enet.com.cn/-article/2006/0118/A20060118495001.shtml.2006.[6]马欣,张玉清等.自动入侵响应技术研究[J].计算机应用研究.2004.
[7]郭牧.入侵检测及网络安全发展技术探讨[EB/ OL]. http://soft.yesky.com/ -security/315/2010815.shtml.2006.
[8]Hui zheng,Haixin Duan.Active Technologies to Contain Internet
图2 研究结果
Worm [EB/OL].http://worm.ccert.edu.cn/doc/spark/
ActiveTechnologiestoContainInternetWorm.pdf.2006.
5 总结
主动防御概念的提出改变了以往被动防御的不足,给出
[上接77页]
参考文献
[1]Amit Klein. Secure Coding Practices for Microsoft .NET Appli-cations Director of Security and Research Sanctum, Inc.[2]佚名.八大法则防范ASP网站漏洞.http://www.tkbbs.com/Article/wlaq/hkgf/200510/768.html.
[3]Dino Esposito.利用ASP.NET 的内置功能抵御Web攻击.http://searchwebservices.techtarget.com.cn/tips/434/2065934.shtml.[4].NET概观.http://cnbie.net/commerce/forums/128377/ShowPost.aspx.
The Analysis of Security Leaks in .NET Programming
Huang Yanbo,Zhong Fenghua
College of Information Engineering,Central South University of Technology,Hunan,410083
Abstract :The issuance of .NET brings a new world for programmer.This article makes some researches and analy-ses in the security leaks of programming with.NET aim at the wide use of.NET.it also showes some feasible solutionfor these leaks.
Keywords :.NET Program;Web Security;Leak Analysis
2007.3
51