- 4.76 MB
- 2022-06-16 12:40:23 发布
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
哈尔滨T程大学硕:t学位论文虫快速传播策略14J,并预言在30分钟内感染整个互联网的蠕虫即将出现,在蠕虫对抗技术方面则强调蠕虫的检测、分析和响应需要自动化,认为数学建模和仿真是研究蠕虫的主要手段。邹长春以红色代码蠕虫为例,讨论了基于微分方程描述的双因素传播模型,这个模型可以看作是SIR传播模型的一种扩展15J。DavidMoore提出了衡量防范蠕虫技术的有效性的三个参数:响应时间、防范策略、部署策略,但令人失望的是,目前的防御技术在这三个参数上都远达不到对蠕虫防御的要求[61。DugSong等人对蠕虫引起的网络流量统计特征做了研究,力图通过对网络流量的异常检测实现对网络蠕虫的防范。华盛顿大学应用研究室的JohnW.Lockwood等人【7】提出了一种采用可编程逻辑设备对抗蠕虫的防范系统。VincentBerk,GeorgeBakos等人设计的系统主要监视蠕虫访问不存在的网络地址时所引起的目的不可达的ICMP报文以进行蠕虫检测,他们的检测方法需要分布在多个网络范围内的组件进行协同合作。目前国内在这方面的工作也已有开展,但是多数还处于研究和设计阶段,少有成形的商业化产品出现,特别地,专门适用于小型网络环境的蠕虫检测系统国内更是罕有研究,相关的理论研究和文献也屈指可数。传统的蠕虫检测和防御系统大多着眼于实时发现所有的蠕虫攻击,所采用的蠕虫检测方法都是针对大规模网络的算法,要求建立全局控制中心,耗费众多的网络资源监控大量的网络信息。然而,Internet上为数众多的小型组织与个人网络大多无法提供其有效工作所需的大量资源。所以,研究如何在局部小的网络环境中实现一个用户运用少量资源即可对蠕虫进行有效检测和防御的系统便变得迫在眉睫,势在必行。1.3本文所做的工作本文在深入地研究目前网络蠕虫的工作机制、扫描策略,传播特点和攻击过程的基础上,详细地分析了近几年新兴发展起来的蜜罐技术的原理、分类、优缺点及其采用的相关技术,并全面的阐述了当前流行的蠕虫检测技术,并给出了它们各自的优缺点。然后,作者针对当前蠕虫检测系统在小型网络环境下应用的不足,考虑到蜜罐技术无论是在捕获最新的蠕虫攻击还是未知攻击方面都有着其它安全技术不可比拟的优点,结合小型网络的具体需要,3
哈尔滨r稃大学硕}学位论文提出了在小型网络中利用蜜罐技术对蠕虫进行检测和防御,设计并构建了一种适合于小型网络环境的蠕虫检测方案,而且实现了部分相关的关键技术,并通过实验证实其初步达到了设计要求,最后对系统的适用性和未来工作给出了自己的看法。本文所做的工作主要有以下几个部分:(1)网络蠕虫的工作机制、传播特点和扫描策略的深入分析;(2)现有蠕虫检测技术的原理及其优缺点的总结:(3)对蜜罐技术的基本原理、关键技术和优缺点的研究与分析;(4)用于小型网络的基于蜜罐技术的蠕虫检测的研究与方案设计;(5)对本文所提出的检测方案的实验验证及该系统适用性的讨论。4
哈尔滨T程人学硕十学位论文第2章网络蠕虫及蜜罐技术2.1蠕虫的概念及其工作原理2.1.1蠕虫的概念蠕虫是在1982年被引入到计算机领域的,最初编写蠕虫的目的是为了分布式计算模型的测试,当时蠕虫的破坏性已经初露端倪,但并没有引起研究者的重视和注意。直到1988年Morris蠕虫的爆发,才使得全世界的目光第一次聚集到这种恶意代码的身上来,Spafford为了区分蠕虫和病毒,对蠕虫重新进行了定义,他认为“蠕虫可以独立运行,并且自动复制自身并传播到另一台主机。’’郑辉【8】在他的博士论文中认为蠕虫具有主动攻击、行踪隐蔽、利用漏洞、造成网络拥塞、降低系统性能、产生安全隐患、反复性和破坏性等特征,并给出相应的定义:“网络蠕虫是无须计算机使用者干预即可运行的独立程序,它通过不停地获得网络中存在漏洞的计算机上的部分或全部控制权来进行传播。"文伟平【9l等给出了一个更为完整的网络蠕虫定义,“网络蠕虫是一种智能化、自动化,综合网络攻击、密码学和计算机病毒技术,不需要计算机使用者干预即可运行的攻击程序或代码。它会扫描和攻击网络上存在系统漏洞的节点主机,通过局域网或者国际互联网从一个节点传播到另外一个节点。"该定义体现了新一代网络蠕虫智能化、自动化和高技术化的特征。2.1.2蠕虫的工作机制网络蠕虫的工作机制【loJ如图2.1所示。网络蠕虫攻击行为可以分为四个阶段:信息收集、扫描探测、攻击渗透和自我复制。信息收集主要完成对目标网络和主机的信息汇集。扫描探测主要完成对具体目标主机服务漏洞的检测。攻击渗透利用已发现的服务漏洞实施攻击。自我复制完成对目标节点的感染。网络蠕虫在整个攻击过程中,要向目标网络和目的节点发送大量的服务请求。5
哈尔滨T程大学硕十学位论文图2.1网络蠕虫工作机制每一个具体的蠕虫,四个部分会有不同的侧重,有的部分实现的相当复杂,有的部分相当简略。2.1.3典型的蠕虫攻击过程一个蠕虫的攻击过程通常包括感染、传播和执行负载三个阶段11l】。1、感染这个阶段,蠕虫己入侵到本地系统,它为了利用网络资源进行自治传播必须修改~些系统配置,运行程序,为后续阶段做准备,如生成多个线程以备快速探测新的目标之需,设置互斥标志防止系统被再次感染而影响传播速度等。通过这个阶段的工作,蠕虫将所入侵的系统变为一个新的感染源。以后这个感染源就可以去感染其它系统以扩大感染范围。2、传播在这个阶段蠕虫会采用多种技术感染更多的系统,该阶段通常包含下列步骤。1)目标探测在蠕虫感染系统前,它必须首先发现目标。基于不同扫描策略的蠕虫可以采用相应的技术来发现和利用新目标。扫描需要探测一个地址空间,’识别出有漏洞的系统,它是一种主动的目标发现技术。同时,扫描也是特别异常的行为,如产生大量的无效的IP数据报文,产生异常的网络活动,利用这一特点可以有效检测蠕虫。2)利用漏洞感染目标系统利用常见服务的漏洞获取特权,这样可以在目标系统做更多的事情,比6
哈尔滨T程大学硕十学伉论文如CodeRedII在感染系统时利用IIS(InternetInformationServices)服务的缓冲区溢出漏洞获取特权,然后在系统安装后门。由于蠕虫漏洞利用的模式相同,因此也可针对这一特点进行蠕虫检测。3)运输蠕虫代码蠕虫必须将自身从一个系统传播到另一个系统以重复这样的过程,从而控制大量的系统。一些蠕虫,如冲击波蠕虫(Blaster),需要第二个通信通道完成感染,被感染的系统使用唧回连到感染源以下载蠕虫实体,完成蠕虫代码的运输。而有些蠕虫在利用漏洞入侵系统时将蠕虫代码放在同一个报文中进行运输。还有一些蠕虫将蠕虫代码作为正常通信的一部分进行发送,要么附在正常信息后要么替换正常信息,这样做的结果是,如果观测通信模式,其传播行为并不显现异常。蠕虫在运输代码时可以是一对多,一个站点在被感染后向多个站点提供一个蠕虫或模块;或者是多对多的,多个副本传播恶意代码;或者使用混合的方法,基本的蠕虫以多对多的方式传播,通过中央站点进行更新。蠕虫在复制自身进行代码运输时具有相同的通信模式,因此可利用这一特点进行蠕虫检测。3、执行负载有些蠕虫包含负载,而有些蠕虫不包含负载。负载是指能够完成黑客攻击者意图的代码,通过执行负载,蠕虫可以完成攻击任务,例如,发动拒绝服务攻击的代码,删除系统数据等。在执行负载阶段蠕虫表现出一定的攻击性,此时可以采用多种入侵检测手段予以检测,如网络防火墙、入侵检测系统、个人防火墙等等。2.2蠕虫的扫描策略及传播特点2.2.1蠕虫的扫描策略蠕虫扫描策略是指蠕虫在扩散的过程中选择下一步潜在感染对象时所采用的方法,扫描策略的好坏与否直接影响着蠕虫传播速度的快慢。研究人员对目前出现的蠕虫进行分析得知蠕虫的扫描策略主要有如下几种。1、选择性随机扫描(selectiVerandomscan)随机扫描会对整个地址空问的lP随机抽取进行扫描,而选择性随机扫描
哈尔滨T程人学硕十学位论文将最有可能存在漏洞主机的地址集作为扫描的地址空间,也是随机扫描策略的一种。所选的目标地址按照一定的算法随机生成,互联网地址空间中未分配的或者保留的地址块不在扫描之列。选择性随机扫描具有算法简单、易实现的特点,若与本地优先原则结合,则能达到更好的传播效果。但选择性随机扫描容易引起网络阻塞,使得网络蠕虫在爆发之前易被发现,隐蔽性差。2、顺序扫描(sequentialscan)顺序扫描是指被感染主机上蠕虫会随机选择一个C类地址进行传播,根据本地优先原则,蠕虫一般会选择它所在网络内的IP地址。若蠕虫扫描的目标地址IP为A,则扫描的下一个地址IP为A+I或者A.1。一旦扫描到具有很多漏洞主机的网络时就会达到很好的传播效果。该策略的不足是对同一台主机可能重复扫描,引起网络拥塞。3、基于目标列表的扫描(hit.1istscan)基于目标列表的扫描是指网络蠕虫在寻找受感染的目标之前预先生成一份可能易传染的目标列表,然后对该列表进行攻击尝试和传播【12l。目标列表生成方法有两种:通过小规模的扫描或者互联网的共享信息产生目标列表;通过分布式扫描可以生成全面的列表的数据库。4、基于路由的扫描(routablescan)基于路由的扫描是指网络蠕虫根据网络中的路由信息,对IP地址空间进行选择性扫描的一种方法。采用随机扫描的网络蠕虫会对未分配的地址空间进行探测,而这些地址大部分在互联网上是无法路由的,因此会影响到蠕虫的传播速度。如果网络蠕虫能够知道哪些lP地址是可路由的,它就能够更快、更有效地进行传播,并能逃避一些对抗工具的检测。基于路由的扫描极大地提高了蠕虫的传播速度,不足是网络蠕虫传播时必须携带一个路由IP地址库,蠕虫代码量大。5、基于DNS扫描(DNSscan)基于DNS扫描是指网络蠕虫从DNS服务器获取IP地址来建立目标地址。该扫描策略的优点在于,所获得的IP地址块具有针对性和可用性强的特点。基于DNS扫描的不足是:难以得到有DNS记录的地址完整列表:蠕虫代码需要携带非常大的地址库,传播速度慢;目标地址列表中地址数受公共域名主机的限制。R
哈尔滨T程大学硕十学位论文6、分治扫描(divide—conquerscan)分治扫描是网络蠕虫之间相互协作、快速搜索易感染主机的一种策略113J。网络蠕虫发送地址库的一部分给每台被感染的主机,然后每台主机再去扫描它所获得的地址。主机A感染了主机B以后,主机A将它自身携带的地址分出一部分给主机B,然后主机B开始扫描这一部分地址。分治扫描策略的不足是存在“坏点”问题。在蠕虫传播的过程中,如果一台主机死机或崩溃,那么所有传给它的地址库就会丢失。7、被动式扫描(passivescan)被动式传播蠕虫不需要主动扫描就能够传播。它们等待潜在的攻击对象来主动接触它们,或者依赖用户的活动去发现新的攻击目标114J。由于它们需要用户触发,所以传播速度很慢,但这类蠕虫在发现目标的过程中并不会引起通信异常,这使得它们自身有更强的安性。2.2.2蠕虫传播的特点通过分析2001年至2006年国际权威应急响应网站CERT上发布的知名网络蠕虫信息,可以发现网络蠕虫的传播具有以下几个特点。1、传出数据的相似性网络蠕虫在传播的各个阶段,感染节点传出的数据具有相似性。数据包都包含了相应的请求、攻击代码或蠕虫的主体程序,内容相对稳定,因此其传输数据的大小基本不变。在一定时间内,每个线程对目的主机的请求内容都是相似的。还有,同一个蠕虫一般使用同一个目的端口,如CodeRed固定使用80端口。2、大量的无效IP地址和无效服务请求网络蠕虫为了在网络中迅速传播和扩散,攻击目标的选择具有盲目性。信息的收集和探测都会导致大量无效IP地址的产生,由于攻击目标IP地址的无效性,因此相应的服务请求也得不到应答。3、节点问的传播行为具有相似性网络蠕虫感染一个节点主机后,这个节点成为新的蠕虫载体,并开始扫描、探测、攻击新的目标节点,这个传播行为和最初发生的传播行为具有相似性,即同一个蠕虫一般均采用相同步骤去感染目标主机奄q
哈尔滨T科人学硕十学位论文4、传播过程中一般呈现一对多的模式蠕虫的一个本质特征就是传播,为了能在短时间内感染尽可能多的主机,一台感染主机一般会同时向多个目标主机发送蠕虫数据,因此在传播模式上必然表现出一对多的关系。2.3常见的蠕虫检测技术蠕虫在传播上具有多种特性,所以可以综合分析利用这些特性来检测蠕虫。许多研究人员从蠕虫的功能结构、扫描策略、传播模型等多个方面对蠕虫的特性作了深入研究并由此提出了许多检测方法。以下将主要介绍近年来具有代表性的网络蠕虫检测防御技术。1、基于网络黑洞的检测网络黑洞指的是网络中没有分配的lP地址空间。由于蠕虫作者在编写蠕虫时出于减少蠕虫个体的大小或者扩大蠕虫影响范围的考虑,往往会采用对全部IP地址进行扫描探测的方法,而正常的网络通信一般不会涉及这些并不使用的IP地址。根据这一点,就可以通过对与网络黑洞相关的数据包的监控来实现恶意行为的检测,通过对所监测到的数据进行分析,就可以及时发现网络中出现的蠕虫攻击行为【”J。这种技术的优点是:对所有扫描全网的蠕虫都适用,无论是己知蠕虫还是未知蠕虫,缺点是:为了提高捕捉到攻击数据包的概率和速度需要布下较大的诱捕网,这就要求使用者拥有足够多的可实时产生反应的空闲lP地址,而对于lP资源紧张的小型网络用户而言这正是一个问题;此外,该技术对于基于目标列表扫描的蠕虫和被动型扫描蠕虫来说不太适用。2、基于特征签名的检测其核心是模式匹配。每当新的蠕虫出现时,研究人员通过对蠕虫的研究提取出能充分识别该蠕虫的特征字符串,形成对该蠕虫的特征签名,加到相应的签名库中,这些签名可能是恶意的网络负载,也可能是蠕虫可执行代码中的部分样本代码等。有了该蠕虫的签名之后,当再有此类爆发或者此类蠕虫在其它地方爆发时就可以通过该签名进行识别,以采取进一步的防范措施加以阻止。对于基于签名的蠕虫检测系统来说,签名库是这类系统中非常重要的部件,因为签名库的质量高低直接影响系统的准确性和有效性。10
哈尔滨一f:程大学硕一}=学位论文基于特征签名的蠕虫检测技术具有高效准确的优点,但它也有以下缺陷:首先,如果只采用外部提供的签名数据库,那么它只可检测到已知蠕虫,因此它并不具备检测未知蠕虫的能力,无法在此类蠕虫攻击的第一时间里做到实时检测;其次,单纯采用此种检测技术会漏检含有多特征值的蠕虫代码,并且容易因网络上的噪声或是一些正常的行为而造成误判。3、基于异常流量的检测基于异常流量的检测方法充分利用没有蠕虫与存在蠕虫时流量的差异性来实现蠕虫的检测。通常情况下,一台主机或者一个局域网在正常运转的情况下其每天的平均流量几乎是相等的,即使稍有变化也是在很小的范围内波动,但总体上是稳定的。遭受蠕虫入侵后其网络流量则会出现较大幅度的变化,所有的蠕虫在展开攻击前都要先通过扫描探测来发现其要攻击的目标,而且在攻击成功后往往还要完成其负载的传播,由于整个过程是蠕虫自主发起的,探测频率一般非常高,所以通常会在短期内产生大量的扫描探测包,使网络的流量迅速增加,甚至会造成网络的拥塞。基于异常流量的检测技术的优点是它不仅对已知蠕虫有效,而且还能检测未知的蠕虫。其缺点是:①难于确定各种参数的阈值,这将影响着检测结果的准确性,阈值制定得太低容易造成太多的误报,而如果制定得太大,则又容易造成漏报而起不到应有的检测作用;②采用此技术需要监控大范围的网络,以减少背景噪声的影响,而实际上,随着背景噪声的不断增加,实际监控的网络以及所产生的时延会大到无法容忍的地步【161。根据采用各种扫描方式的蠕虫的传播模型117J,还可以看出在蠕虫低感染率的时候,网络中异常流量并不明显,当检测到大量异常流量的时候,蠕虫已经开始广泛传播,失去了预警的意义。4、基于传播行为的检测Ellis等人Il8J指出蠕虫在传播过程中体现了下列三个特征:①传播数据的相似性;②蠕虫传播呈类似树状结构(不考虑重复感染的情况);③主机感染蠕虫后其行为发生变化,也称为角色发生变化,即由攻击的受害者变为攻击的发起者。因此可以通过观察网络中是否出现上述模式来判断蠕虫是否发生。与此类似Staniford等人提出了用活动图的方式来检测蠕虫,他们设计了一个原犁系统GRIDSll9l(GraphBasedIntrusio“.DetectionSystem),将网络连接转11
哈尔滨T程人学硕十学位论文换成图,然后观察图中是否出现传播树这种独特的模式。GRIDS利用行为特征来发现蠕虫的优点在于:①它利用了蠕虫的传播本性,与内容无关,因此能够发现自我变异的蠕虫;②它具有局部性特点,这使得该方法受背景噪声的影响很小,而且它对于快速传播的蠕虫能表现出更佳的实时检测、准确定位的效能。其主要缺点在于:GRIDS没有对TCP连接中的目标地址和目标服务做有效性分析,而上述分析是判断未知网络蠕虫入侵网络的重要依据,此外这种方法需要观察所有的网络活动,因此对于网络资源的耗费较大。5、基于lCMP目的不可达报文的检测利用ICMP(IntemetControlMessageProtoc01)不可达信息进行蠕虫检测意义非凡,该类信息可将主机、网络、端口、服务等不可达消息返回给发送端。由于目的地不可达消息在ICMP报文的Type字段的值是3,所以我们也称ICMP不可达消息为ICMP.T3报文。基于ICMP目的不可达报文的蠕虫检测方法是通过网络节点中的多个数据采集器和路由器采集网络中被检测节点的ICMP.T3报文来检测分析蠕虫的。如果检测到一个源地址与多个不同的目的地址连接通讯,则该系统把此种情况认为可能是蠕虫传播行为。如果一个IP地址访问不同目的地址时所产生的ICMP-T3报文数目超过了特定的阈值,则必须将结果送关联器作进一步的检测。如果检测到一个源地址与多个目的地址的同一个端口通信的事件,则关联器将该事件与以前的事件对比。如果发现事件间共性较多,则认为检测到了蠕虫活动。由于是分析ICMP.T3报文,因此该方法需要修改路由设备,以启动路由设备在目标不可达时产生特定的ICMP.T3报文的功能,这一系统是针对大规模的网络环境的,其对蠕虫的检测很大程度依赖于参与蠕虫检测的路由器多少,如果路由器的个数不多,那么收集到的ICMP目标主机不可到达消息会比较少,将会影响蠕虫检测的效果和效率,因此它并不适合于小型的网络环境。6、基于扫描的蠕虫检测通常蠕虫传播是依靠随机扫描方式,大范围的随机扫描往往是蠕虫爆发时的征兆,因此收集这些扫描活动就能在一定程度上发现蠕虫。Massachusetts大学的Zou等人J下是利用这种思想,通过统计对未用IP地址进行的扫描来分析是否发生蠕虫170l。他们提出了一个蠕虫预警系统模型,该模型主要包含两个12
哈尔滨jr:程人学硕十学位论文部分:蠕虫预警中心和大量的监视器。这些监视器分布在Interact的各个位置上,主要是收集本地蠕虫扫描的相关数据,然后将统计数据发送到预警中心。预警中心则综合分析收到的数据。监视器分为两种,即入口监视器和出口监视器。其中,入口监视器在网络的入口处监视输入数据流,其目的就是检测是否有对内部网络未用IP的扫描活动;出口监视器设置在网络的出口处,用来监视网络输出数据流,以发现对外的扫描。监视器在每个时间间隔内都会向预警中心发送自己收集到的信息,预警中心根据这些数据计算出蠕虫的感染率、易感染主机数等,当推算出的感染率是零或是变化过大时,即可能是一个错误的警报;反之,如果推算出的感染率在一个正的常量值附近稳定或振荡,则认为检测到了蠕虫活动。这种方法的检测范围是针对大规模网络的,它可以直接观察网络上数据包的异常行为,并在蠕虫刚开始传播不久就进行预警,其对于检测未知或是变形的蠕虫攻击都能有效的发挥作用。但是,此种方法的一个主要缺点就是系统的监控范围必须很广,否则便不能做出可靠的分析,而要维护这么一个规模庞大的防范体系很显然其代价也是很高的。7、基于目的与来源关联性(DSC算法)的蠕虫检测目的与来源关联性(DSCDestination.SourceCorrelation)121J算法的提出是基于这样一个前提:尽管网络蠕虫攻击感染方式多种多样,但通常情况下大多数蠕虫都是利用某一网络服务(用端口号来标识)的漏洞进行感染,当一个脆弱主机通过特定端口被感染后,它将通过相同端口感染下一台主机,感染节点传出数据具有相似性。DSC算法通过查看受害机器进出数据包的关联性来找出感染特征,利用蠕虫有感染与被感染都会使用相同目的端口号(标识某服务)的特性,观察受害机器的行为模式变化——收到目的端口号为A的数据包一段时间后大量产生目的端口号为A的数据包。利用DSC算法可以确切方便地判断出机器被感染的时间,并且此方法不需比较数据包负载,因此对于那些采用伪装技术的蠕虫也可以检测。但此方法也存在如下缺陷:①单纯采用端口号来做为判断依据,误报率会较高,因为部分正常网络服务,如网络邻居、SMTP服务器或某些P2P共享软件也有此类的行为模式;②该方法无法对利用多个端口传播的蠕虫进行检测;③尽管这种检测方式漏报率很低,但无攻击发生时的误报率较高,为降低误报率,13
哈尔滨T程人学硕+学位论文就需提高检测的阈值,这势必会降低检测告警的反应速度进而升高漏报率。以该算法提出者的实验121】为例,在监控一个B类网络时,蠕虫大约感染了网域上3.0557%的主机后,系统才发出了告警。8、基于蜜罐技术的蠕虫检测蜜罐系统是一个包含漏洞的诱骗系统,它通过模拟一个或多个易受攻击的主机,给攻击者提供一个容易攻击的目标。它是一种信息系统资源,它的价值在于可以被非授权和非法使用。由于蜜罐并没有向外界提供真正有价值的服务,因此所有对蜜罐尝试都被视为可疑的。由于蠕虫随机选择IP地址进行探测,因此会向目的地址不可达或者根本不存在的系统发送连接请求。如果使用蜜罐模拟这些系统,就可以诱骗蠕虫对其发起连接,从而获得发起连接的蠕虫来源信息,通过集中分析蠕虫对不存在地址的访问情况和数据包信息以及蠕虫连接企图,这样可以在蠕虫探测时就发现蠕虫行为,而且所分析的数据量也相对较少。由于在后续章节还要对基于蜜罐技术的蠕虫检测做详细的介绍和分析,故此处只是给出了极简要的概述。综上所述,前面介绍的各种检测技术(系统)都有其相应的适用环境,例如:那些利用大量IP地址空间进行检测的技术,通常是运用在具有足够IP资源的学术单位或是大型防病毒软件开发商;而基于异常流量的检测系统通常被那些掌控着一个或多个网域路由器的用户所使用,当其用户所能掌控的资源有限时,这个系统可能就无法有效地工作。通过对以上内容的介绍和分析,可以发现采用单一的某种检测技术是难以满足小型网络环境下的蠕虫检测要求的,因此有必要寻求一种适合于小型网络或个人用户的简单易行的蠕虫检测防御方案。2.4蜜罐技术研究2.4.1蜜罐技术的概念1、蜜罐的提出当前互联网的安全状况令人担忧,主要表现在操作系统和应用软件存在着大量的漏洞,网络用户的安全意识相当薄弱,并且缺乏自我防御的技术能力;而对于攻击者而言,随着攻击工具的不断完善和发展,越来越多的攻击14
哈尔滨.f:稃人学硕十学位论文脚本和工具在网络上可以免费获得和使用,攻击者已经不需要太多的技术和知识。这样的趋势造成了网络攻防双方非对称的博弈,如表2.1【221。表2.1网络攻防的非对称博奔攻击者防御者工作量夜深人静,攻其弱点时刻准备,全面防护信息通过网络扫描,探测,踩点对目标全面J,解对攻击者一无所知后果任务欠败,极少受到损失安全策略被破坏,利益受损蜜罐的提出正是试图改变网络攻防双方博弈的这种非对称性,用以增加攻击者的攻击代价,减少对实际真实系统的安全威胁,同时可以让安全人员了解攻击者所使用的攻击工具和攻击方法,并给公安执法部门追踪犯罪攻击源,获取攻击行为和审计取证等方面开辟了新的思路。2、蜜罐的定义对蜜罐系统的定义目前各不相同,但都大同小异。蜜罐一词来自英文Honcypot,在国内有翻译成陷阱系统,也有翻译成蜜罐系统的。在这里本文采用“蜜罐”一词,它准确而形象的表达了Honeypot的功能和思想。国际“蜜网项目组”的创始人LanceSpitzner给出了对蜜罐的权威定义【23J:蜜罐是一种安全资源,其价值在于被扫描、攻击和攻陷。蜜罐没有产品价值,任何对蜜罐的访问都可以视为是未被授权的或可疑的【24,25l。这个定义明确的表明了蜜罐并无其它实际作用,只是一种对攻击者的欺骗技术,并没有业务上的用途,不存在区分正常流量和攻击的问题,因此所有流入和流出蜜罐的网络流量都可能预示着一次扫描、攻击和攻陷。而蜜罐的核心价值就在于对这些攻击活动进行监视、检测和分析。蜜罐系统可以是一台模拟已知的漏洞或者某一服务的计算机,也可以模拟各种操作系统及其相应的特点,或者就是一台普通标准的操作系统,只不过经过了特殊的处理可以完整记录攻击者的攻击行为l矧。蜜罐系统可以转移攻击者的攻击力,使攻击者对真正系统攻击的危害性降到最低。3、蜜罐网络——密网(Honeynct)蜜网技术是在蜜罐技术上逐步发展起来的一个新的概念,又可称为诱捕网络,它实质上仍是一种蜜罐技术,但其与传统的蜜罐技术相比具有两大优势:首先,蜜网是一种高交互型的用来获取广泛的安全或胁信息的蜜罐。其15
哈尔滨T程大学硕士学位论文次,蜜网是由多个蜜罐以及防火墙、入侵防御系统、系统行为记录、自动报警、辅助分析等一系列系统和工具所组成的一整套体系结构,这种体系结构创建了一个高度可控的网络,使得安全研究人员可以控制和监视其中的所有攻击活动,从而去了解攻击者的攻击工具、方法和动机㈣。此外,虚拟蜜网通过应用虚拟操作系统软件(如ViWare:和UserModeLinux等)使得用户可以在单一的主机上实现整个蜜网的体系架构。虚拟蜜网的引入使得架设蜜网的代价大幅降低,也较容易部署和管理,但同时也带来了更大的风险,黑客有可能识别出虚拟操作系统软件的指纹,也可能攻破虚拟操作系统软件从而获得对整个虚拟蜜网的控制权。蜜网的体系架构如图2.2所示I捌。镕《In女#}H《#tn图2.2蜜网体系架构24.2蜜罐的分类及其相关技术1、蜜罐的分类根据不同的划分标准蜜罐有不同的分类方法,晟普遍划分方式有两种畔I。1)按照与攻击者的交互程度低交互度蜜罐:这类蜜罐只提供了一些特殊的虚假的服务,这些服务通过在特殊的端口监听来实现,其结构见图2.3。在这种方式下,所有进入的数据流很容易被识别和存储,但这种简单的解决方案不可能获取复杂协议传输16
哈尔滨T程人学硕十学位论文的数据。在低交互蜜罐中攻击者没有真正的操作系统可以用,这样就大大减少了危险,其缺点是不可能观察攻击者和操作系统之间的交互信息,同时由于低交互蜜罐通常是模拟的虚拟蜜罐,或多或少存在着一些容易被黑客所识别的指纹信息。图2.3低交互度蜜罐系统结构中交互度蜜罐:中交互度蜜罐是对真正的操作系统各种行为的模拟,它提供了更多的交互信息,同时也可以从攻击者行为中获得更多的信息,其结构见图2.4。在这个模拟行为的系统中,蜜罐应用脚本或小程序来模拟服务行为,其提供的功能主要取决于脚本。蜜罐系统在不同的端口进行监听,通过更多和更复杂的互动,会让攻击者产生这是一个真正操作系统的错觉,所以能够收集更多数据,但还是没有提供一个真实的操作系统。图2.4中交互度蜜罐系统结构高交互度蜜罐:高交互蜜罐由真实的操作系统来构建,提供给黑客的是17
哈尔滨下程人学硕十学位论文真实的系统和服务,给黑客提供一个真实的操作系统,可以学习黑客运行的全部动作,获得大量的有用信息,包括完全不了解的新的网络攻击方式,其结构如图2.5所示。正因为高交互蜜罐提供了完全开放的系统给黑客,也就带来了更高的风险,即黑客可能利用这个开放的系统作为跳板去攻击其它的系统。图2.5高交互度蜜罐系统结构2)按照其物理实现方式物理蜜罐:所谓物理蜜罐就是说蜜罐系统除了不具有任何业务功能,其它方面和平时使用的真实系统一样,配置物理蜜罐成本很高,它需要许多硬件资源并且搭建、维护、管理起来亦比较复杂。虚拟蜜罐:所谓虚拟蜜罐就是一个对外提供虚拟服务的程序或利用虚拟机实现虚拟操作系统或网络环境,配置虚拟蜜罐所用的资源较少,部署简单,维护容易,但是存在单点失效、指纹识别等问题。2、蜜罐的相关技术蜜罐作为一种网络安全解决方案,其实现主要依赖于低层网络技术的支持和运用。而对于蜜罐特殊的运作方式和使用目的,其原理的实现也在传统的网络技术上有新的要求。蜜罐的主要技术有欺骗技术、数据控制和捕获技术。1)欺骗技术由于蜜罐的价值是在其被探测、攻击或者攻陷的时候才得到体现,所以没有网络欺骗能力的蜜罐是没有价值的。采用欺骗技术的主要目的是将攻击者的注意力吸引到蜜罐,给黑客⋯些他们所期望的东西,这就是“蜜Y#9从而18
哈尔滨T程人学硕}=学位论文让他们身陷蜜罐而不自知。黑客的精力有限,如果蜜罐能够牢牢地牵制黑客,则黑客就无法攻击真正有价值的资源。2)数据捕获技术蜜罐利用数据捕获技术来监视攻击者在蜜罐中的所有活动。数据捕获要保证数据的可靠性,这可以通过多层数据捕获来实现。不同层面捕获的数据不仅可以揭示不同侧面的黑客活动细节,易于协同分析,还能够防止单点失效。通常可以从以下3个层次进行数据捕获:网络活动、主机活动和IDS(IntrusionDetectionSystem)报警信息。3)数据控制技术数据控制就是要阻止攻击者利用蜜罐发起攻击。一方面,蜜罐要给予攻击者一定的自由活动空间实施破坏活动,而另一方面又要防止攻击者把蜜罐变成攻击源。给予攻击者什么样的自由度和如何控制其行为是每个组织机构面临的重要问题,不同的单位需要根据具体的情况给出具体的实施方案及风险底线。数据控制需要注意隐蔽性和可靠性,通过多层控制以保证可靠性,常用的控制方法有防火墙控制、入侵检测控制、系统访问控制等。2.4.3蜜罐的优缺点蜜罐作为一种检测和信息搜集手段同传统技术相比具有如下优势[30l。1、量少而高价值的数据集传统的检测技术采用旁路监听方式,每天都要产生庞大的数据记录。蜜罐系统只记录访问到自身的数据信息,产生的数据量不大,而且这些数据具有很高的真实性和研究价值。2、低漏报率传统的检测技术很难检测到未知类型的攻击。而蜜罐与误用检测和异常检测等IDS检测手段都有本质的区别,它不依赖于已知的攻击类型和网络状态,它可以在第一时间发现新的攻击类型。3、低误报率传统的检测技术最大的问题就是产生误报。由于蜜罐系统不对外提供任何服务,对蜜罐的一切访问都一定是可疑的,因此蜜罐系统大大的降低了误报率,提高了检测攻击的效率。19
哈尔滨T程人学硕十学位论文4、能够捕获新的攻击方法和技术蜜罐是设计用来捕获任何对它们的攻击的任何行为,包括未知的工具、策略和蠕虫等。5原理简单、资源耗费小蜜罐系统的实现相对简单,不需要复杂的算法和特殊的技术,便于安装和部署131,32,33l。此外,使用虚拟方式实现的蜜罐只需要很少的资源。和所有其它的技术一样,蜜罐也有自身的缺点,因此人们常常将蜜罐与IDS、防火墙等技术配合使用,蜜罐技术的缺点如下。1、视野受限蜜罐最大的缺点就是视野的有限性,它们只能看到任何直接针对它们自身的活动。不像IDS可以对整个网络的流量进行检测,因此单一的蜜罐存在视野狭小的缺点132∞l。2、指纹识别蜜罐的另一个缺点是“指纹识别”问题,是指由于蜜罐具备一些特定的预期特征或者行为,因而能够被攻击者识别出其真实身份的情况。3、引入风险蜜罐有被黑客利用并危及其它系统的危险,蜜罐会将风险引入其所在的环境,而且风险也是变化的,这取决于它的构建和部署方式。蜜罐需要与攻击者进行交互,一旦蜜罐被攻克它很可能会被作为跳板去攻击其它的非蜜罐系统。风险的高低取决于蜜罐与外界的交互程度及蜜罐的实现方式。蜜罐越简单,其风险性越小。仅仅模拟几种服务的蜜罐是很难被攻破并用来攻击其它系统的。2.5本章小结本章首先由网络蠕虫的概念入手,接着从蠕虫的工作机制、扫描策略、传播特点等方面深入地研究了蠕虫的基本特性,然后详细地分析了目前通用的蠕虫检测技术(系统),同时总结了这些蠕虫检测技术的优缺点及适用范围,从中可以发现,这些通用的检测技术(系统)并不适用于局部的小型网络环境中的蠕虫检测及防御,本章最后还对蜜罐技术做了较细致地分析研究。本章内容为后续章节要用到的概念和有关技术做了必要的说明。
哈尔滨T程人学硕十学位论文第3章基于蜜罐技术的蠕虫检测方法研究3.1基于蜜罐技术的蠕虫检测研究现状2000年以后网络蠕虫迅速的发展,使得蜜罐的实用价值得到了体现。为了应对这些传播速度极快的恶意软件,许多安全厂商和安全组织迫切地需要寻找一种有效的获取蠕虫样本和理解其行为模式的手段,而蜜罐为这种需求提供了完美的解答。SANS、SecurityFocus等知名的安全组织都通过部署模拟某些Windows系统漏洞的蜜罐捕获蠕虫病毒,并深入地对其进行了分析。蜜罐可以是一个建在网关上的或者分布在局域网内的设备,扮演着一个防火墙,或者入侵检测系统(IDS),或者是入侵防御系统(IPS)的补充角色。它通常伪装成真实系统的计算机资源,开放众多的对黑客们极具诱惑的系统漏洞和脆弱服务,以达到吸引攻击者来访的目的。由于蜜罐本身没有向外界提供真正有价值的服务,因此所有进出蜜罐的数据均被视为可疑数据,蜜罐能够记录下攻击者所有的操作,使用的工具,攻击的策略,攻击的方法和技术等信息。另外,蜜罐能够对攻击者发出的请求做出智能的应答,以进一步欺骗攻击者的继续执行,从而获得尽可能多的攻击信息。通过对蜜罐日志的分析,安全人员就可以回放整个攻击的全过程,了解攻击者的知识和使用的手段,以更好的部署检测和防御系统,来抵制类似的攻击事件发生。所以,蜜罐技术是一种很好的捕获蠕虫的样本、研究蠕虫的特性和抑制蠕虫爆发的安全技术。基于蜜罐技术的蠕虫检测主要具有以下优势。1)蜜罐为网络安全人员研究蠕虫的工作机制、追踪蠕虫攻击源、预测蠕虫的攻击目标等提供了大量有效的数据。2)蜜罐可以转移蠕虫的攻击目标,降低蠕虫的攻击效果。3)蜜罐记录的数据都是可疑的,这样就大大减少了所要分析的数据量。4)由于网络蠕虫缺乏判断目标系统用途的能力,所以蜜罐具有良好的隐蔽性。基于蜜罐技术的蠕虫检测也存在以下不足。21
哈尔滨’r程大学硕+学位论文1)蜜罐能否诱骗网络蠕虫依赖于大量的因素,包括蜜罐的命名、蜜罐在网络中的放置位置、蜜罐本身的可靠性等。2)蜜罐可以发现存在大量扫描行为(随机性扫描、顺序扫描等)的网络蠕虫,但针对路由扫描和DNS扫描蠕虫时,效果欠佳。3)在蠕虫传播初期,蠕虫扫描的地址数量有限,因此蜜罐捕获到蠕虫的概率也很小,从而导致该方法难以在蠕虫传播的初期发挥作用。4)目前蠕虫主要是借助于某一个具有漏洞的服务来进行传播,要想蜜罐能够捕获这种蠕虫,就需要提供具有该漏洞的服务程序,这显然很困难。当前,基于蜜罐技术的蠕虫检测系统中最为成功和著名的有Honeycomb[33】系统和HoneyStat[3q系统,而至于其它的近似系统因为它们功效并不理想,可用性欠佳,故在此不做介绍。3.1.1Honeycomb系统由剑桥大学的ChristianKreibich等人提出,它使用Honeypot来自动提取蠕虫的特征,然后将这些特征加入到现有的IDS特征库,其具体做法是:首先对进入Honeycomb的数据包进行协议解析;然后提取应用层数据以便进行包特征的比较分析,再利用后缀树算法(SuffixTree)提取出最长的相同子串;最后将这些子串作为蠕虫的特征加入到IDS的特征库中。实质上,Honeycomb系统是一个利用蜜罐来配合诱捕蠕虫的系统,以期自动制作出蠕虫特征,它的提出是基于这样一个前提——进入蜜罐系统的数据包都是可疑的并假定所有进入的数据包均带有攻击行为,然后Honeycomb对其进行分析,将进入的数据包记录,采用如下两种检测方法比较得出相应特征字符串,再将其交给基于特征签名的检测系统使用。1、水平式内容检测对两个具有相同端口号的连接,取相同深度(如建立TCP连接时,应答双方相互发送的第3个ACK包就视为深度相同)的数据包做特征比较分析,故此种检测被看成是水平的。2、垂直式内容检测先把每个连接状态下的数个数据包串接到一起,然后再将这两个连接得出的包串做比较。。22
哈尔滨I:程大学硕十学位论文Honeycomb系统采用的技术方法可以极大地减少人工操作,并且可以缩短蠕虫发生到特征提取之间的时间,有助于在初期就发现蠕虫,在试验中,他们成功地发现了Slammerl35】蠕虫和CodeRedII蠕虫的特征。但是,由于Honeycomb在工作时需要连续比较多个连接,并且其采用被动检测的方式(等待多个攻击数据包进入),所以当可供其用于诱捕的IP数量减少时,其反应速度将会明显减慢。此外,Honeycomb系统是以恶意连接为前提,通过对内入连接的数据包特征进行比较来产生特征签名的,所以它对于非恶意的广播数据包或非蠕虫攻击型的扫描数据包均有可能会出现误判,从而造成系统可靠度的下降。3.1.2HoneyStat系统由Georgia大学的Dagon等人提出的一种利用Honeynet来诱捕蠕虫的检测系统,他们采用Vmware构成HoneyStat来模拟多种操作系统,并将蠕虫产生的事件分为三种:内存事件、网络事件和磁盘事件。内存事件包括缓冲区溢出等操作,它通过采用一定的缓冲区溢出保护机制(像StackGuard)来监视内存,一旦出现溢出尝试时便产生事件;磁盘事件包括对文件系统的修改等操作,通过采用磁盘监视机制(像Kqueue等),检查向磁盘特定部分(像注册或者windows/systems目录)的写入,以产生磁盘事件;网络事件包括下载蠕虫代码等行为,例如当蜜罐对外输出流量(像UDP流或带有SYN标志的TCP包)时,表明它们正被用作向外发动攻击,此时便产生网络事件;同时,HoneyStat也在每个事件中记录该事件所有相关的被捕获数据,如:内存事件的堆栈状态,网络事件的外出数据包载荷,磁盘事件的文件变化信息,事件发生前网络活动的记录文件等。HoneyStat系统正是利用蠕虫的传染是一个系统的有关联性的过程,通过观察Honeynet中发生的三类事件来检测蠕虫的活动,HoneyStat最后采用Logisitic回归方法来分析这些事件序列,从而判断是否发生蠕虫。由于HoneyStat系统是通过综合利用蠕虫在入侵主机时的多种特征来进行蠕虫的检测,所以该系统能够检测出未知形态的蠕虫。尽管HoneyStat采用虚拟机的方式来减少硬件上的成本,但在诱捕用的lP空间上,其最少仍然需使用28—216个IP地址(约一个B类网络)才能达到令人满意的检测速度,23
哈尔滨T程大学硕十学位论文这就使得此种分析检测方式不能广泛普及。经过上面的介绍和分析,可以知道Honeycomb系统和HoneyStat系统因资源耗费大、成本高、技术复杂,所以它们不能够被应用于那些人、财、力很有限的小公司或个人的小型网络罩,但是,为数众多的小型组织/公司与个人却是Interact上的最大用户群,所以,如何在局部小的网络环境中实现一个用户运用少量资源即可对蠕虫进行有效检测和防御便成为了一个值得深入研究的课题。3.2小型网络中基于蜜罐技术的蠕虫检测研究3.2.1小型网络中采用蜜罐技术的合理性根据小型网络的实际特点,我们不难发现蜜罐十分适合被引入到小型网络中以发挥其优势,此时,采用蜜罐技术检测蠕虫具有如下优势。1、耗费资源少,配置简单,容易恢复基于蜜罐的蠕虫检测技术与其它常用的检测技术相比,具有耗费资源小,配置简单,容易恢复的特点。2、捕获可疑数据量少而高效小型网络中的蠕虫检测系统一般要求用户可自行架设并能快速反应,而现有的检测方式大多是基于异常流量的对比分析,此种方式需要获得足够多的网络数据以供蠕虫检测系统分析,在小型网络中,检测系统可以获得的数据包数量比较少,此时若使用蜜罐系统,则利用其所捕获的少量数据包(进入蜜罐的流量均视为可疑)就能分离出可疑的蠕虫行为,因此可以尝试引入蜜罐系统,利用少量IP搭配数台主机来产生完整的蠕虫签名,并获得有价值的信息供系统分析使用。3、可以有效获取蠕虫样本蜜罐系统是一种网络恶意行为的诱捕机制,它通过构建陷阱环境来记录入侵者的行为、做法以及使用的漏洞等,并为系统分析及安全加固提供参考数据。鉴于对付蠕虫这种传播速度极快的恶意程序,迫切需要的是寻找一种有效获取其样本和理解其行为模式的手段,而蜜罐本身所固有的特性为这种需求提供了完美的解答。
哈尔滨T程大学硕十学位论文4、可以转移蠕虫的攻击目标,降低蠕虫的攻击效果蜜罐系统之所以能发现蠕虫的传播,基于的是一个事实,即蠕虫是一种自动攻击工具,它的智能性有限,不能很好地区分正常系统和陷阱系统。当蠕虫要进行传播时,它会随机或伪随机地攻击一些IP地址。在这些目标地址中,有一些IP地址可能没有被使用,但它们仍然会被蠕虫扫描。如果这些IP对蠕虫的攻击没有响应,那么它就会跳过这些IP,转而去攻击其它的地址。基于这样的机制,当蠕虫试图攻击一个不存在的主机时,可以用蜜罐系统监听这些lP地址,伪装成容易受感染的漏洞主机进而发现蠕虫。5、能够捕获未知的新蠕虫从目前的研究来看,在系统的实现中所面临的最大挑战在于检测和提供新型蠕虫早期的告警,而新型蠕虫检测的研究重点放在了如何为这些新蠕虫自动地生成网络入侵检测的特征签名上。蜜罐技术对付蠕虫是非常有用的,特别是捕获和分析它们,从而获得最新的蠕虫特征签名,并更新IDS的蠕虫特征签名库,使得IDS具有对付新型蠕虫的能力。3.2.2现有系统在小型网络下的改进分析1、小型网络环境的特点小型网络环境的蠕虫检测防御系统不同于一般的蠕虫检测系统,它要求着重考虑以下几个方面的问题:首先,系统应当响应及时、可靠、有效;其次,该系统对于网络资源的需求应该很少;再次,系统应该尽量简单,易于架设,使用户能够运用少量资源、较低成本即可方便地实现对蠕虫攻击的检测防御。最后,系统应当具备一定的灵活性,用户可针对具体的应用环境通过简单的配置来制定相应的保护措施,实现系统的定制化过程,以减少不必要的资源浪费。2、Honeycomb系统的缺点1)工作时采用被动检测的方式,而小型网络中可诱捕用P数量很少,导致其反应速度慢。2)系统是以恶意连接为前提,并且仅采用了基于签名的检测方法,对于扫描数据包可能误判,从而可靠度下降。3、HoneyStat系统的不足25
哈尔滨T程大学硕十学位论文尽管系统采用虚拟机的方式来减少硬件上的成本消耗,但在诱捕用的lP空间上,其最少仍然需使用28-216个lP地址才能达到令人满意的检测速度,而这点对于小型网络的用户而言不能满足。3.2.3现有系统在小型网络下的改进研究.基于前文的分析,我们知道怎样实现用户运用少量资源即可对蠕虫进行有效检测和防御是改进现有系统所必须要面对的最关键问题。1、系统的改进方向1)系统可采用真实的物理蜜罐作为待保护机器的镜像,利用蠕虫来真实感染蜜罐机,这种用主动式的真实感染取代被动诱捕嗅探(Honeycomb所用)来产生大量带有特征的攻击数据包供系统分析使用,此方式从一定程度上弥补了检测系统需要大量IP地址的缺陷,避免了非恶意的广播包或非蠕虫攻击型的扫描包导致的误判现象,也解决了一般检测系统利用提高门限值以降低误判率的不足——报警不及时,能够加快数据收集的速度进而达到实时反应、准确判断的目的。2)在系统实现方面,用户可以仅架设数台与其网域内所要保护的主机相同的计算机(可以用旧机器以减少成本),将它们放置于蜜罐系统之内,利用进入蜜罐系统的数据包均可疑的特性,并通过防火墙的设定将正常数据包隔离在外,这样进入蜜罐的只能是恶意的攻击行为,再使其真实感染用户的整个蜜罐系统。3)在系统的检测机制上,可以采用多种检测方法,以克服单一方法的缺陷,提高检测的效率和准确率。2、蠕虫检测策略的改进研究蠕虫在传染行为上面,有着固定的模式:寻找有漏洞主机、利用漏洞侵入系统、感染系统并在受害主机上运行蠕虫程序、再次寻找漏洞主机等数个阶段。网络形态的蠕虫检测系统就是利用蠕虫寻找漏洞主机这个行为所产生的特征来进行检测的,在本方案中,可利用蠕虫数据包的相似性以及传输连接端口号相同的特征,通过所架设的蜜罐系统记录并产生出可能的蠕虫特征。系统通过捕捉攻击数据包和受害机器产生的数据包中相同的部份,然后对它们进行比较分析来产生蠕虫的特征签名,并将签名提供给IDS、IPS或防火26
哈尔滨T程火学硕十学位论文墙,进而实现对蠕虫的及时防御。本方案采用如下两种分析方式进行蠕虫检测。1)第一阶段:端口号的比较分析首先使用GuofeiGu等人所提出的DSC算法【201,记录进入数据包的目的端口号(对应某系统服务),并且观察受害主机发生异常后,其外出数据包目的端口号同先前记录的端口号的相似度,由此可以过滤掉大多数主机正常产生的数据包,减轻下一阶段分析的负担,降低误判率,提高判断的可信度;同时,还可以把此时所判断产生的端口号发给防火墙,让其关闭该端口以阻止此类攻击包再次进入和防止内部已受感染机器将此类攻击进一步扩散,这样可以间接地减缓蠕虫的整体传播速度。2)第二阶段:数据包内容的对比分析比较进入时所记录的数据包与受攻击后机器发生异常行为时所大量发出的数据包,分析它们内容是否带有相同的特征,并从这些大量数据包中提取出相同的部份,该部份就有可能是这只蠕虫的特征签名,将其交由前端的IPS便可实现业务网络对此蠕虫的防御。本系统方案与一般的基于特征签名的检测系统有很大差异,因为它使用的蠕虫签名是由系统本身实时产生,它是通过比较进入的攻击数据包与受害机器产生的攻击数据包而找出其中的关联性,并用蠕虫产生的大量攻击数据包进行多次验证后才产生的特征签名,这种方式能够克服基于蠕虫特征签名的检测技术的最大缺陷——不能做到实时检测,同时可以发挥基于签名检测法准确度高、反应速度快的优势。系统采用上述两个阶段的分析方式的优点如下。首先,采用简单的端口号比较方式可以用简单的运算过滤掉大部份数据包,减轻后续的使用复杂运算的包内容对比分析的负担;其次,同时采用两种不同类型的检测方法可以排除单一类型检测法可能造成误判的情形,如对于使用相同端口号的正常服务却有类似蠕虫行为的软件(如P2P传输软件等),单独应用端口号比较法会产生误判,但是,在第二阶段使用包内容分析法时即可发现虽然端口号相同,但这些数据包的特征并不相同。3.3本章小结本章首先介绍了当前基于蜜罐技术检测蠕虫的现状,着重分析了两个最
哈尔滨T:程大学硕十学位论文具代表性的系统Honeycomb和HoneyStat,接着又对小型网络中基于蜜罐技术的蠕虫检测进行了较深入地研究,通过对现有系统的改进分析并结合小型网络的实际特点,提出了现有系统在小型网络下的改进方案。本章内容为第四章设计基于蜜罐技术的适用于小型网络的蠕虫检测系统做了必要的理论铺垫,我们也能够从中发现在小型网络中用蜜罐技术来检测蠕虫具有很多优势。
哈尔滨T程人学硕十学位论文第4章基于蜜罐技术的蠕虫检测系统设计通过前面几章对蠕虫、蜜罐技术和现有检测系统的深入理解和分析,本章根据网络蠕虫的基本特征,结合蜜罐技术的理论基础和工作方式,在综合考虑了多种蠕虫检测技术后,根据第三章所做的改进研究,有针对性地设计了一个基于蜜罐技术的适用于小型网络的蠕虫检测系统。4.1系统的设计要求如今,网络安全人员已经设计出了许多有效的蠕虫检测系统,但是这些系统大多数都以捕获所有可能的蠕虫特征,实时发现所有的蠕虫攻击为设计目标,构建它们往往需要监控较大的网络空间,一般需1个至3个以上的B类网络,其对于蠕虫数据的收集分析虽说已具有一定的效果,但很少是以满足个人或小团体的使用而量身设计,也就是说这些系统对所有的蠕虫所有的流量均进行捕获,而不考虑具体网络环境的实际需要;此外,这些蠕虫检测系统具有一个共同的特点:就是这些系统掌控的网络资源(如拥有的IP地址数目或控管的路由器数目)越多,其运作效率越高,检测分析的准确性和反应的速度就越好,但是一般的个人用户、小的公司或团体因其资金有限根本无法拥有太多的网络资源。所以,在个人或小型公司的小型网络中使用这些检测系统的效果并不理想,若想成功地设计一个适用于小型网络环境的蠕虫检测防御系统,就要求设计者着重考虑解决以下几个方面的问题。1)首先,系统对于网络资源的需求应该很少,因为一般的检测系统在网络管理层面上存在“门槛"——不是需要许多可供监视的IP地址就是需要有控制网域路由器的权力,而那些小型网络环境的所有者往往是小公司、小团体或个人,它们拥有的网络资源很有限,这个“门槛”对它们而言难以跨越。2)其次,该系统应当响应及时、可靠、有效,并对新型蠕虫和多态蠕虫具有一定的检测能力。3)再次,系统应该尽量简单,易于架设,使用户能够运用较低成本、少量资源即可方便地实现对蠕虫攻击的检测防御。,2q
哈尔滨T程人学硕+学位论文4)最后,系统应当具备一定的灵活性,用户可针对具体的应用环境通过简单的配置来制定相应的保护措施,实现系统的定制化过程,以减少不必要的资源浪费。4.2系统设计在寻求满足以上设计要求的方案时,可以发现采用蜜罐技术是十分恰当的,为此,本文在第三章所提改进方案的基础上设计了一个基于蜜罐技术的适用于小型网络的蠕虫检测系统。4.2.1系统总体说明首先,该系统是一个以蜜罐系统为基础的轻量级蠕虫检测防御系统,其部署的对象是小型网络,用户可以根据不同的要求和变化来灵活地定制系统,以适应指定网络和不同策略的需求。其次,在该系统中所采用的蜜罐是用户所要保护的网络机器的镜像,即蜜罐与网域内所要保护的机器具有完全相同的系统和服务,利用蠕虫来真实感染蜜罐机,并用主动式的真实感染取代被动诱捕嗅探来产生大量攻击数据包,以加快数据收集的速度进而达到实时反应的目的。最后,在系统的实现上,用户可以仅架设数台与其网域内所要保护的主机相同的计算机,将其放置于蜜罐系统之内,利用进入蜜罐系统的数据包均可疑的特性,并通过防火墙的设定将正常数据包隔离在外,这样进入蜜罐的只能是恶意的攻击行为,再使其真实感染用户的整个蜜罐系统,由此产生大量的攻击数据包供系统分析使用,这种工作方式不仅取代了被动式等待攻击数据包到来的方式,而且也解决了一般检测系统利用提高门限值以降低误判率的不足——报警不及时,在该系统中因为采用真实感染机器的方法,所以能够在极短时间(攻击包每秒约有数百至数千个)内产生大量带有特征的攻击数据包供系统分析使用,这增加了系统判断的准确性。4.2.2系统的框架本系统的构建是假设位于一个小型的局域网络中,这个局域网络通过一个防火墙连接到因特网上,内部网络中拥有数台要进行保护的服务器/机器以
哈尔滨丁程大学硕士学位论文及一个诱捕用的蜜罐系统,系统结构如图4.1所示。警i⋯⋯⋯勺爿.1=÷竖一L十型芈掣L移竺竺!匕‘竺,!◇§◇图4.1系统结构图在此结构中,蜜罐系统由两个部分所构成,第一部分是与业务网络连接的诱捕用桥接服务器,这个服务器可以用RedhatLinux9.0版本架设。在这个服务器上,对进入蜜罐系统内部的数据包进行记录并分析判断发自蜜罐系统内部的数据包是否被感染,而且此服务器还充当蜜罐系统的舫火墙以阻止内部蠕虫向外扩散并过滤掉其它与分析无关的数据包。第二部分是其内部实际要用到的高交互蜜罐群,该部分由许多台与外部(指业务网络)要保护的服务器/机器相同的系统所组成,这样,当受到蠕虫攻击时,蜜罐能与外部机器有着相同的反应。此外,由于这些蜜罐经由蜜罐系统的防火墙与外部隔离,使得外界根本无法得知其存在,所以不存在任何J下常的发往蜜罐的连接请求。423系统实现方式这个部分主要讨论蜜罐系统中桥接服务器的架设及其工作方式,本系统具体的实现模型如图4.2所示。由于桥接服务器应该能够隔离与蠕虫无关的jJ
哈尔滨r程人学硕士学位论文数据包,并阻止受感染蜜罐外发攻击数据包,所以其防火墙的设置方式将直接影响到系统的检测率及安全性,我们在这台机器上的防火墙将实行“宽进严出”的策略,即允许所有的TCP和UDP攻击数据包进入,也允许外部对内部(蜜罐系统)建立TCP连接来传输蠕虫负载,但此策略将会阻止内部受感染蜜罐机发出的任何连接请求。在记录进入蜜罐内部的数据包方面,使用Ethereal监控所有流进蜜罐系统的流量,并完整的记录所有数据包内容及对应的目的端口号,再利用IPTablesIMI数据包转发功能,将进入的数据包转发至内部所有蜜罐机器使其试图感染它们。圈4.2系统实现模型示意图当龠有恶意代码的数据包实际抵达蜜罐机时,真实感染的机制便会肩动,⋯于蜜罐机与我们要保护的机器相同.当只会危害到我们实际网络环境的蠕虫落八蜜罐系统时,内部的蜜罐机便会真实的被这IL蠕虫所感染,然后产32
哈尔滨。I:程大学硕十学位论文生繁殖的动作,此时受感染的机器便会大量产生攻击数据包并试图快速地传播,在此可以基于这个特征采用多种不同的检测分析方法,进行有效地预警。因为在桥接服务器的防火墙上有阻止蜜罐机向外建立TCP和UDP连接的设定,所以也能够确保这些攻击数据包不会向外扩散以致感染外部的业务网络。此时,我们的系统就会将蜜罐所产生的数据包与先前进入蜜罐的数据包进行比较分析,如果发现这些大量产生的异常数据包都有着相同的特性——对外目的端口号相同且与先前记录的相同对内目的端口号的数据包内容比较后可以发现具有一组共同的特征,这些数据包我们就可以视为具有关联性并且能够在此基础上产生某种蠕虫特征签名。产生的蠕虫签名可以分为两部分,第一个部分就是目的端口号,用它可以根据受影响的系统对照出相对应的服务,网络管理员据此可以对该类攻击事件做出相应的处理,如暂停该服务或为该服务打补丁以防灾害扩大。第二个部分就是数据包的特征,当我们的系统产生出蠕虫数据包具有的特征后,可以将这些特征交给前端的IPS进行数据包过滤,以求在造成最小的影响下维持相应的服务。4.2.4系统检测算法基于本文3.2.3节的分析研究,本系统在检测机制上将利用蠕虫数据包的相似性和传输连接端口号相同的特征,采用DSC算法对端口号进行分析,同时采用LCS(LongestCommonSubsequences)137】算法对数据包进行对比分析以产生蠕虫签名,通过这两种检测方法的联合应用将克服单一检测方法的缺陷,提高系统的检测效率和准确率。1、端口号比较分析方法——DSC算法DSC算法是一种基于蠕虫传染模式与扫描模式的蠕虫已感主机检测算法,区别于传统蠕虫检测,它不仅考虑蠕虫攻击的传染模式,同时识别蠕虫已感者行为。。1)算法前提DSC算法不能检测所有类型的蠕虫攻击,它主要针对基于扫描、主机之间的传染时间不会过长的快速传播的蠕虫,例如SOLSlammer,CodeRed等。一般情况下,慢速传播的蠕虫攻击对网络的危害不会很大,同时也有足够时33
哈尔滨一r=程人学硕+学何论文间由用户参与来控制。2)算法思想DSC算法分为两个阶段,首先在网络流量中寻找蠕虫类似传染模式;然后检查可疑主机外出相似流量的扫描频率。以下给出具体描述:第一步,引入一个滑动窗口分析一个网段内的网络流量(UDP或SYN),如果一个扫描来自先前在同一端口曾被扫描的主机,就发现了一个类似蠕虫传染模式的行为,该主机被认为是一个可疑主机。也就是说,如果主机A在端口i接收了数据包,并且发送数据包到主机B的端口i,主机A是可疑的。第二步,检测可疑主机的异常数据传出行为,统计相似扫描流量的频率,如果扫描频率偏离正常轮廓,则能够进一步确认该主机的可疑性。3)算法实现【38l网络中检测类似蠕虫传染行为需要保持相应的状态信息,为此我们引入空间效率极高的BloomFilter来实现,针对每一个端口,使用BloomFilter存储扫描流量中的目的地址。为了表示一个具有n个元素的集合S=_【s1,s2,...,sd,用一个长度为m的数组来描述BloomFilter(m>n),初始化数组的每一个元素的值为O。一个BloomFilter使用k个相互独立的哈希函数hl,h2,...,hk,它们的值域为{O,1,...,m一1)。为了运算方便,我们假设关键字经过哈希函数得到一个随机的地址,使一组关键字的哈希地址均匀分布在整个地址空间{0,1,...,m.1>。对于每一个元素SES,数组中对应于h1(s),h2(s)⋯.,hk(S)的元素被置成1。描述一个元素SES,用它的哈希函数值h1(s),h2(s),...,hk(S)在数组上对应位置的元素全为1来表示,如果有某个存储单元为0,则表示这个元素不在集合S上。在蠕虫扫描阶段,为了对数据流进行细致的分析,定义如下六元组:(srcHost,srcPort,dstHost,dstPort,dataSize,data)唯一确定TCP连接。其含义是源节点主机(srcHost,srcPort)向目的节点主机(dstHost,dstPort)发出TCP连接请求,dataSize为此次连接请求交换数据的大小,data为数据的前m个字节,其中,m为可配黄参数。为了判断节点主机传出行为相似,下面给出传出信息属性、传出信息属性一致的定义描述。34
哈尔滚一r程大学硕‘}:学位论文(1)传出信息属性:对于任意一个TCP连接Ci,定义A"ITR—OUT(srcHost,dstPort,dataSize,noHost,noService)为传出信息属性。其中noHost是dstHost有效性判断谓词,noService是请求服务有效性谓词。当dstHost没有应答时,noHost之值为0;反之为1。当目的端口的服务请求没有应答时,noService之值为0,反之为1。(2)传出信息属性一致:对于任意两个TCP连接,如果ATrROUT(C,i)=A佩OUT(Ci),则称这两个连接的传出信息属性一致。以节点主机(srcHost)为源节点的m个TCP连接Ci,Ci“⋯,Ci+m-I,若kE[1,m—l】,AITROUT(Ci)=硼OUT(Ci+0,则称节点主机srcHost存在传出信息属性一致的m个连接。基于以上分析,首先基于BloomFilter完成类似蠕虫传染模式可疑主机的寻找,其次通过传磁相似扫摊流量的频率对可疑主机进行进一步的确认。基于BloomFilter的可疑主机发现:网络数据包拆分后获取源地址、目的地址和目标端墨,通过匿标端墨确定对应的BloomFilter。如果源地址在BloomFilter中没有出现,在BloomFilter中记录该数据包的目的地址;如果源地址已经出现在对应的BloomFilter中,说明一个脆弱主机通过特定端躁被感染后,正在作为源主机通过相同端口感染下一台主机,该主机满足了蠕虫传染模式,系统确定该主机为可疑主机,并在可疑主机列表中记录该行为。由予BloomFilter没有去除l西数据的机制,使用BloomFilter不能描述一个滑动窗口。在系统中,我们用两个BloomFilter对每一个端口模拟一个滑动窗叠。每一个BloomFilter保留一个时闻段弧内的信怠,假定BloomFilterl在时间0使用,将目的地址插入BloomFilterl,在Td2后,目的地址将同时插入BloomFilterl和BloomFilter2中。在Tb时闻后,BloomFilterl重叛置O,开始使用BloomFilter2。通过定期切换两个BloomFilter,大致模拟一个滑动窗口。2、蠕虫特征签名产生方法——LCS算法因为进入蜜罐的数据包数量有限,因此系统采用对所有数据包比较的方式,记录下掰有进入的数据氢,并逐个与内部机器欲往外连接所产生的数据包比较,求出数据包中最大相似的子集,当内部机器受蠕虫感染后,便会发生大量建立连接的异常状漏,此时可以发现这些大量产生的数据包与之前汜3S
哈尔滨I:程大学硕十学位论文录的数据包可以产生一个特定的特征签名,这种方式可以分辨伪装的结构,检测出部份变形蠕虫的攻击,也可对其做多次的数据包验证以提高检测判断的可靠性。在具体产生特征签名时,为了可以在数据包中提取出共同的特征签名,并可以应付一般形态的伪装(如:在数据包负载中插入随机无意义字符等方式),系统采用最长相同子序列LCS算法。在此算法中,假设任意两个字符串x与Y其长度分别是m与n,可以比对出其中相同的数种子序列WIq],0-0andj>Odo5.ifT[i,jl=T[i一1,j·1】+landXi=Yi6.thenWk-=Xi7.i=i.18.j-j-19.k=k.110.elseifT[i一1,j】>Tfi,j-1】11.theni=i.112.elsej_-j-113.returnW4.2.5系统工作流程将系统启动后,开始对进入蜜罐的数据包进行记录,并与内部蜜罐主机所产生的数据包进行目的与来源关联性(DSC)和最长相同子序列(LCS)的双重验证以产生蠕虫的特征签名(包含受影响的服务、主机、特征等),如果网络环境中进入一种会对我们所要保护的主机产生危害的蠕虫时,受感染的蜜罐机器就会开始产生带有特征的攻击数据包,系统的工作流程如图4.3所示。当我们的系统拦截到一个数据包时,首先会查看此数据包的来源是外部37
哈尔滨fT樱人学硕士学位论文机器还是内部的蜜罐主机,如果数据包是来臼于外部,我们就将这个数据包记录在预备好的特征数据库里,以便与将来产生的数据包进行比较;如果这个数据包来自于内部蜜罐主机,我们则依照如下两个步骤去判别此包是否为蠕虫感染后所产生的攻击数据包。步骤一,我们先采用DSC算法中使用的方式,对比数据包的目的端口号,因为这代表着受攻击的服务是否相同,蠕虫的攻击会试图感染其它有相同漏洞的主枧,所以它们会选择相同的端口号;步骤二,对步骤一筛选过的数据包利用LCS算法进行再次验证其相似度,同时产生出攻击数据包的特征——可能的蠕虫特征签名。如果某个数据包确实是蠕虫的攻击数据包时,我们就可以比较并产生出可供系统辨识的数据包特征,再利用此特征多次地进行数据包比较还可进一步提高其可靠性,如果系统已经确认这是一个蠕虫攻击事件,我们便可将所产生的蠕虫签名(如端口号等)交由环境前端的防火墙或是IPS以进行实时的蠕虫防御。
哈尔滨T稃人学硕十学位论文图4.3系统l:作流样图39
哈尔滨T样人■:硕十学位论文4.3系统适用性的讨论由于本系统的设计目标是保护个性化的局部小环境,所以系统的检测能力被限定在“对己方网络将会有危害"的蠕虫,换言之,本系统可能会因为漏洞补丁的安装将不再对某种蠕虫产生反应。在系统的实现上,通过在蜜罐系统内安装与外部要保护的机器完全相同的环境,以期当诱捕的蜜罐机受到某一攻击时会与真实主机有完全相同的反应,因此当受保护机器的漏洞被打了补丁而不会遭受攻击时,我们也就不再需要对此漏洞进行防护,同时蜜罐主机也因该漏洞同步修补而忽略此攻击。同理,如果发生针对己方网络内主机都不具有的某漏洞的攻击时,本系统也将不会产生反应。此外,使用高交互蜜罐系统来进行网络诱捕时通常需要用到数个未使用的口来与蠕虫交互进而产生相应的异常行为l捌,为提高本系统构建的灵活性,我们可以根据个别网络中口使用状况而使用不定数量的闲置IP来提高IP的使用率和诱捕的成功率。尽管我们让蜜罐被真实感染以产生系统分析所需的数据包,但致使蜜罐感染的“种子”仍需依靠对未使用IP的攻击行为,所以构建本系统要求网络内至少有一个以上的闲置lP以供架设蜜罐系统,并且供蜜罐使用的lP数量比例提高时可以提升我们系统的诱捕成功率。还有,虽然有些蠕虫在设计时给程序中加入了初期扫描目标列表以躲避部分基于网络黑洞的蠕虫检测,但在CliffC.Zou等人所提出的川J此篇研究中发现:基于目标列表传播的蠕虫,在初期传播时会预置优良的主机为初期感染对象,这些对象有高频宽、高系统效能等特征,它们可提供给蠕虫在初期传播时大规模扩散的能力,但经过此初期传播阶段蠕虫都将进入随机或半随机扫描阶段以使自己达到更广范围的传播,而那些半随机扫描(通过某种公式而形成)也只是选择网域对象的机率不同而已,当位于同一个网域内时,主机被命中的机率也是相等的。因此无论对于是否具有预置扫描目标列表的“路由蠕虫”,我们放置于同一网域下的系统都会有相同的命中机率并且可以进行有效地反应。4.4本章小结本章根据网络蠕虫的基本特征,结合蜜罐技术的理论基础和工作方式,在第三章所做的改进研究基础上,从设计要求出发有针对性地设计并构建了
哈尔滨:I|:程大学硕十学位论文一个基于蜜罐技术的适用于小型网络的蠕虫检测系统,详细地描述了该系统的设计并对系统的适用性做了讨论。41
哈尔滨T程人学硕十学位论文第5章系统实验验证与分析我们的实验是在实际环境下架设本系统,并在背景流量的噪声下进行真实测试以观察其准确性及反应速度。为了证实系统可以有效地工作,我们需要证明系统的可靠性和有效性,以下先说明何谓可靠性和有效性,以及可能对其造成影响的因素。5.1系统有效工作的验证1、可靠性指系统发出警报时的可信度。它同系统的误警率直接相关,在没有蠕虫攻击时,若系统出现误判而发出警报,则可能致使系统做出一些防御的动作进而造成不必要的损失,故可靠性是考察检测系统效能的关键指标之一。2、有效性指系统对于真实的蠕虫攻击是否可以有效的检测出来。它同系统的漏警率相关,对于蠕虫检测系统而言,最重要的就是能在蠕虫攻击发生的时候有效且实时的提供相关信息,故有效性也是衡量检测系统效能的重要指标。5.1.1影响系统效果的因素对于影响系统判断正确性的因素,可以分别从可靠性和有效性两方面来说明。1、影响可靠性的因素1)网络扫描软件或背景噪声数据包因为蠕虫检测系统利用蠕虫数据包随机扫描的特性,通过监控对未使用lP的访问状况来发现潜在的蠕虫攻击行为,而广播数据包以及某些网络扫描软件发出的数据包都没有特定的连接对象,所以有可能会对未使用lP进行扫描探测,从而导致误判。2)软件的复杂连接行为由于蠕虫会对许多分散的IP进行扫描传播,所以在蠕虫行为的观察上会发现单一主机会对大量的客户端进行连接,而流行的P2P软件的行为与此种42
哈尔滨T挥人学硕+学位论文行为极为类似,因而发生误判。3)部分服务的行为特性有部分服务的行为特性与蠕虫类似,如电骡(eMule)软件有向对方4672的UDP端口连接的特性,并且对方连接时同样是使用该端口号,某些以蠕虫感染行为分析的检测系统此时便易于误判。2、影响有效性的因素1)数据包伪装部份蠕虫为躲避基于特征签名检测法的系统的检测,而在数据包的内容部份插入随机无意义的字符而使相似性降低。2)可供分析数据包不足以达到分析所需门限值部分使用异常检测的系统,为降低误判率通常会设立检测的门限值,而某些蠕虫利用减慢传染速度的方式,增加一个潜伏期,便有机会躲避异常检测系统的检测。本系统为了减少以上因素的可能影响,并用了行为和特征两方面的检测方法,同时通过让蜜罐被真实感染以产生系统分析所需的攻击数据包,来解决部分蠕虫躲避检测的问题。5.1.2实验目标我们实验的目标就是要证实系统既可靠又有效。首先,要验证系统的可靠性,观察系统是否会因为一些非蠕虫攻击而出现误判。在实验中,我们是借助开源软件Snort来验证流量中是否带有攻击数据包的,若Snort未发现可疑数据包,理应我们的系统也不该有警报发生;同时,利用我们网络内实际环境中的流量来测试系统是否会因这些流量而受到影响,再以Nmap等扫描软件对我们的网络进行无特定对象的扫描来观察这些软件对系统的影响。对于有效性的验证,我们将向系统真正地送入蠕虫数据包,并检验系统对它的反应。43
哈尔滨J.程大学硕士学位论文5.2实验环境及相关设定521系统测试环境的网络拓扑1、系统可靠性的测试环境因为可靠性验证必须要在实际网络环境中真实的背景流量噪声下进行才能做到真实可信,所以,应该采用真实的物理蜜罐来搭建测试平台,以有效地测试系统准确性及反应速度。在此实验中,我们用3台连网机器来构建蜜罐系统,这3台物理蜜罐机分别使用RedHatLinux6.2(含Apache及MySOL)、WindowsXP(含MSSOL及ns)、Windows2000(含MSSQL及llS),且没有打任何补丁程序,同时以另一台装有RedHatLinux9.0的计算机作为桥接服务器,并在其上安装Snort、Ethgreal及防火堵软件,使其实现数据控制和数据捕获。此实验所用的网络拓扑图如5.1所示。鬣梦一l§。、;崔罐攘缱!镬茹◇4“自扯*M#◇.。9臼◇|玺|51可靠性实验的网络拓扑|璺|
哈尔滨.I程大学硕士学位论文2、系统有效性的测试环境由于蠕虫对正常网络具有极大的攻击性和破坏力,出于网络安全性和实验成本的考虑,我们不可能也不应该将蠕虫实际地放入实验室的局部网络中以验证系统的有效性,所以,在实验室现有条件下,考虑到蠕虫智能性有限,不能很好地区分正常系统和虚拟蜜罐系统,我们采用高交互的虚拟蜜罐来搭建有效性测试所需的环境,然后将蠕虫真实地送入蜜罐系统的虚拟环境中,并检验系统对它的反应。在本实验中,我们借助虚拟机软件VmwareWorkstation6,以一台装有RcdHatLinux9.0且具有多个网卡的高配置的计算机为宿主机通过桥接方式来构建自包含型虚拟蜜网,并在此宿主机上安装Snort、Ethereal及防火墙软件。该实验所用的网络拓扑图如5.2所示。◇枣◇l&“$《I自~女#】mM《gjf““HalI¨1u、“!u¨Id㈣㈥P●t●dm"~:¨Ⅷ宴“舭务H路◇◇0◇图5.2有效性实验的网络拓扑图522实验相关工具软件的设定本系统所安装的软件主要是在网络中获取的或是系统自带的,并非是最45@竺0一蠹一
哈尔滨T程人学硕十学位论文新的版本,在文章中我给出了相应软件的网站,可以在这些网站中获取最新的版本。MySQL-serverhttp://dev.mysql.com/downloads/index.htmlApachehttp://httpd.apache.or∥Snorthttp://www.snort.org/dl/binaries/win32/Ethereal‘http://www.ethereal.corn/Nmaphttp://www.nmap.com.au/为了增强系统信息收集的冗余,限制蜜罐系统对外的连接,保护第三方还需要在桥接服务器上安装配置防火墙——口tables,网络分析工具-Ethereal及网络入侵检测系统一non。RedHatLinux9.0自身带有IPtables。1、配置Snort在桥接服务器上运行IDS,所有对蜜罐的连接和通讯都很容易记录和检查。Snort检查所有网络接口进来的网络连接,在每一个网络接口Snort都有自己的配置文件启动,记录所有的网络包到蜜罐系统的文件系统上,下面显示了典型的Snort配置文件。varHOME—NET【222.27.254.0/24】varEXTERNAL_NETanyvarSMTPSHOME_NETvarH"ITPSERVERS$HOME_NETvarSQLSERVERS$HOME_NETvatDNSSERVERS$HOME_NET#Step撑2:Configurepreprocessorspreprocessorfla92preprocessorstream2:timeout10,ports212380110143,maxbytes16384preprocessorstream4:detect——scanspreprocessorstream4_reassemblepreprocessorhttp_decode:80一unicode·cginullpreprocessorrpc—..decode:1146
哈尔滨:I:榉人学硕十学位论文preprocessortelnet_decodepreprocessorportscan:$HOME_NET43/var/log/snort/portscan.109#Step#3:Configureoutputpluginsoutputdatabase:alert,mysql,user=snortuserpassword=8888dbname=snorthost=localhostoutputlogtcpdump:snort.109outputalert—full:snort—alerts.txt荆螂槲Whatdowelog#Loggingtoplogtcpanyany<>HOME_NETany(session:printable;)logtcpanyany<>HOME_NETany#Loggingudplogudpanyany<>HOME_NETany(session:printable;)logudpanyany<>HOME_NETany#Loggingicmplogicmpanyany<>HOME_NETany(session:printable;)logicmpanyany<>HOME_NETanyincludeclassification.config#Step舭:Customizeyourrulesetincludea11.rules这个配置文件是灵活高效的,Snort将收集的数据输出到MySQL数据库中,同时以TcpDump格式记录网络数据包到snort.109文件。2、配置IPTablesIPtableS在桥接服务器上充当了两个角色,第一是数据包记录和转发,第二是对外连接的控制。也就是说,我们使用IPtables既要进行数据捕获、转发也要对第三方实施保护,有效的控制蜜罐的对外连接,降低整个系统的风险。根据实际情况编辑了firewallcfg脚本,以下部分脚本的功能就是在有效性测试中实现系统的防火墙策略。47
哈尔滨丁程大学硕十学位论文■———蕾—|置ii———嗣—皇—■■■—■————■—■—一I●i暑警黼■篇暑萱—■■■■—■—警盲宣ii;ii置嗣篇皇皇■■—■■■——黼—■■—宣■置■嘲——薯■葺嗣■——审《黛赫赫葺i置I舞!/bin/sh##clearsetting初始设置iptables—Fiptables-Xiptables-Ziptables·-F·-tnatiptables··X··tnatiptables--Z··tnatiptables.PⅨPUTDROPiptables.P0UTPUTACCElyriptables冲Fo聃mDACCE朋iptables-tnat-pP戏R伐胤GDROPiptables.tnat.PPOSTROUTINGACCEPTiptables-tnat—零O姗UTACC琶yr##interfacesetting接口设置(了IRIF="eth0”襻CTRNET=”10.0.0.O尼4"EXTIF=”ethl”劳EX翻娟圈f’=”222.27.254.a陀4秸INlF篇”eth2"聋删辨辩王72.16.134.掰24摊##localhostsetting防火墙主机设置iptables—A烈PUT·i$(奠港薹F-jACCEPTiptables-AINPUT-i$EXTlF-ptop-jACCEPT##natsetting网络地址转换设置echol>/proc/sys/net/ipv4/ip_forwardiptables-tnat·APREROUTING—Ptop-i$mlF—d10.0.0.1-jACCEPTiptables—tnat—APREROUTING—Ptcp—d222。27。254.131-jDNAT一·to172.16.134.191.172.16.134.193iptables-tnat·APoSTRoUT董NG—Ptcp—s172.16.134。191—172.16.134.19348
哈尔滨下程大学硕十学位论文-jSNAT--to。source222.27.254.131iptables·tnat—APREROUTING—Pudp-d222.27.254.131-jDNAT一一to172.16。134.191.172.16.134.193iptables-tnat-APOSTROUTING—Pudp—s172.16.134.191—172.16.134.193-jSNAT⋯tosource222.27。254.131iptables··tnat··AOUTPUT·-Ptcp-jACCEPTS。3测试过程从2007/8/02PM20:00开始至2007/8/14PM21:40期间,我们按图5.1所示搭建了实验环境,并进行了系统可靠性的相关测试,本测试是验证系统在正常背景流量下是否会有误判现象的发生。在实验过程中,系统启动之后将嗅探那些试图扫描撙地址为222.27.254,131、222。27.254.128、222.27.254.176和222.27.254.117的主机的数据包,这些数据包中可能会含有恶意访问的数据包以及网络上的广播等。同时,我们也在桥接服务器上执行Snort软件,Snort具有内建的特征数据库,它可检测目前融知的攻击,我们利用Snort对出入的数据包进行可靠性验证,以证实系统的效能。因为本检测系统并没有使用任何缎赛提供的特征,赦本系统不论对未知还是已知攻壹都有相同麓检测效果。在实验过程中若Snort发现有蠕虫进入我们的蜜罐系统内,我们的系统也应该做出相网反应,反之,若Snort并来检测飕入侵事件,但我们系统却有蠕虫特征产生,并且数据包经检验判断并非新型蠕虫时,即有可能我们系统出现了误判。实验开始后,我们利用潮络内实际的正常背景流量并配以Nmap扫描整个网络来检验系统是否会产生误判。因为在可靠性实验期间没有重大漏洞发布并且在系统运行的时候网络内也没有发现蠕虫攻击行为(实验室局域网安全级别较高),所以我们按照图5.2所示搭建了测试系统有效性的环境,将感染了Slammer蠕虫的机器接入到虚拟蜜网中以观察系统的反应,从瑟对系统进毒亍真实蠕虫感染的实验分析。5.4实验结果与对比分析我们的系统在运行了约12天焉,总共进入16084个数据包,如图5.3所示,但没有检测出蠕虫攻击行为并且该结果与Snort的反应相同,系统可靠缝得到证实。49
堕I:鎏.!:型盔兰鎏圭主篓鲨三匕i篓c璺羔竺竺翌兰:!竺兰竺!二兰竺竺羔:.兰兰羔:兰兰篓婴翌:箜!一:竺兰二.一≥西哮崭z-一习xr#言=’-?一jtI;、⋯。吾7艟Z霜甓霉鬻霉攀鞲肇鞲阜霹髯霹胃胃阜胃晕■|jIl|单|盈,粤鼍■■■粤产_■吁孽_—_鼍_吁■,鼍苎鼍■l,_呷I/.■H《-KMⅢiuHⅡ目H■&啦u&Kt-_■±口ⅡⅡH■___瞄t●■n■日E目目■■■●■■____■■●__●■-⋯)-。r5-’o。L,』,-●,J,ur-5』E:、_。。。,■。·-:⋯jr:已三二.:互=二=二二.二..‘三互二里兰:二=二..图5.3Ethereal捕获数据包截图为进行有效性测试,我们按图5.2搭建实验环境,利用Slammer蠕虫对网络进行攻击,并使用Ellle陀al来记录数据包以供实验分析使用,经观察在记录到攻击数据包进入的0D127秒后接收到第一个可疑的警示信号,如图5.4所示,而在0.02431秒时接收到第100个警示信号,如图5.5所示,由此可以发现系统能够在极短时间内产生相当大量可供分析的信息,即使设定高的反应阈值以降低误判率,系统也可以在0.025秒内产生足以做出判断的依据并发出警报。接下来,我们查看相应的Snort日志中的报警文件,如图5.6所示,可以发现snon给出了一个优先级为2的报警,说明这是一个很重要的报警,并且Snort将其归类为MS-SQLWormpropagationattempt,该报警的详细信息能够在snonL:l志的子目录中找到,其细节如图5.7所示,通过将其与由Ethereal记录的系统产生的警示信息(如图5.8所示)进行比较,得知我们的系统与snon相比并没有发生误判现象,其有效性也可以获得证实。
堕笙鎏占堡盔主鎏主兰笙笙兰o№⋯⋯⋯01*冒科斟g■凸四x国吕园々÷白吝垒『百口qqq口叠回圈蒜@图5,4Ethereal记录的警示数据包截图1ct,。翟倒酶蚺坶巴勇x句口№。”也暑2『__^文矗咄n谶z蓝批o7i搬:。?嘿若,蔫誉争‘..誊,e幽倒5.5Ethereal记录的警示数据包截图2r{;d}l};a"ll6f56;f!l64dnⅡⅡn∞*¨∞q"”¨∞¨u“∞mn¨Mwnnnn∞”"EN∞n"m∞nⅫ"|吕d¨n口nnmⅡn"¨k¨n¨¨”¨nn∞¨¨∞uinnn“"u“MEn¨M¨u∞%∞H∞min∞∞n*oh"“H¨"∞∞∞∞"¨nninnnn"n¨∞∞¨¨∞∞HnⅡ¨¨”n“i∞∞∞∞¨∞n"“¨¨¨h¨mn"““““百∞∞∞∞∞∞∞∞∞~∞wⅫ¨”"¨”*"¨品mmmmm”mmm"*Hmm目&E
^⋯⋯,⋯⋯⋯~ⅧJ08,1s15+“2:073·‘J·098【’。】【12003=21111ssqL㈨“一p”pagatioAattenpt【’+】【Cla,siFica㈨ioHi5‘Inttack】[Prio..ity:2】{UOP>177.16.1341911382)一61.150727:1J13,●08/1s151·2073H1199’i卜-1【1:2003’?]咻s毗uoImptopⅫdtionat¨mpt【’’】lc1⋯ification:tli5cnttdck】IP⋯ii‘y:2】{uDP}1721613’·.191:1382)2189213.1●●2:1/13“岫门}15Ji2073J6o口2【-*1【1:?Bq3:,]Hs一;qLwomPtopaq⋯ti批t“P’卜-】lc】⋯i㈨ition:¨⋯日ttackl,PriDriq:2】fuDP}’7P16’3~,91:,湘?>■幽5.6snon的MS—SOLWormpropagationattempt报警I‘。I【1:2003:2】tlSsql~mrnplopagationdttempt卜*】fc1a55iFication:l"15cnttdckl『Ptiolitu:2188/1515:I●2:073J●o●8981,≯16.134.191:1382>61.1,0.72,1H3“UDP1TL:113TIIS:0x0ID:j18783】PLPn:20DnmlPn:J|0J|Len:3760“010101州盯8101盯盯0101盯盯盯.........01q10l0101盯盯010101盯01.........、0101n101810101刚们B1刚a101..........1引盯0101盯0101........111gl盯11101........01盯q101gl01......01DC09B042EBnE盯0101n10170NE..B..D.420170RE11290909q90909009068DCC9e.P.B.....r..B047BB0l0131C9R11R50E2FD35n1.B..1.P.501盯05E08口FE51^8,F6’l6C6C68656C33.P.0hd11hel332686B65726E51686r756E7U6869636B2hkelnohounthick4368~76571t5“66B96【,6(,516B33322E64ChGprTF110h37d68777332SF66B9657“5168706F636B66h”52f.etoh50ckfB97“6F516873656F6“BE1810nE428D“5.toOhsend...B.EDⅡs0FF16"‘】81)45[05O8D45F050F165U.P.P.E.P.E.P..PjBE1010DF/128B1E8B030D558BFC5"1BE1C10nEU2FF16rFD031C95150盘臣■口臣lⅡ圃【卫01015181)4"cc45C0‘0F166A116n076日02FfD050C“508B115c050F1689C600DB81F3D口fF8B~58“81)0C408D1q88C1E2日4_c1E20829C280U49¨”1D889~5B116fl幽57Snort报警的详细信息豢一
女*刨黼q)格#Q)i}q】帮∞m)08,15—15:n2:目7.3011lB98【’。】【’:2003:2】14Ssq㈨rn三ptop396⋯oNttenpt[。。】【C1⋯㈨ictioo:Hi5cRttackJ【P⋯ioiq:?】{UDP}172.1613“.191:1382)一61.150.727:143“08,1515’t2:07.3“11994卜。】【1:200312】14SsQL”ot”propagationattenpt【”】[c1assi㈨ition:Niscnttack】【Pn01-1Ⅶ:2】{UOP>172.1613’-.191:1382>21892.13.142:1“3408/1515Jr2:Ⅱ7.3J6oq2【。。】【1:2003:2】¨ss0LL40mptop09乩10nattempt【。。】【c1⋯iflcatinn:HiscRttackJ[f’norit”:2】{UOP>1721613b191:I382>H5.6snon的MS—SOLWormpropagationattempl报警【+’】【1:,I]I]3.2】『C1ass】f⋯t⋯”渊。。躲。邪op⋯aga.jtio呲n8r叶卜’31t1●89817Z.16.13“.191:13#,>611"u,2/1’131I:0xOJD:’t8783IpLPn:20DgnLell:“040101盯0101............0101刚0101盯01盯............01n101...........0101盯0101...........0401..........{11n101们010101口1............01n1州010170nE..B....P.90909090909068DCC9B.PB.....h..a1C9B11850E2FD3501.B...1..P5.682E6自6c6c68656C33..PQhd11hel3686F756E7“6869636B2hkelnohounthlckD96C^【,5168333,2F6uI:h【:PfTf.110h32.d657it5168736F636B66i~b2f.etOhSockF6E64BE1810AE428D45.toOhEend..B.EE0508D45F050F1650.P.PE.P.E.P..P8B033D558BEC5174盱...B..⋯U0t.FDo31C95150盈口■■■暖置田E础01518D45C508B.......0.EP6n026n07FFD05n8D45F.P..1.11..P.E1689c609DB81F33c61.PE.P....
您可能关注的文档
- 超声辐射下糖蜜酒精废水的均相催化降解的研究
- 闺蜜婚礼上的致辞
- 探析光催化降解糖蜜酒精废水多相催化剂的研究
- “蜜煎导栓”干预气虚津亏型慢性功能性便秘临床疗效观察
- 探析改性膨润土处理糖蜜酒精废水的研究
- 探析蜂蜜中四环素和羟甲基糠醛去除研究
- 甜蜜杀机观后感
- 好姐妹闺蜜个性签名大全最新版的
- 基于机器视觉的蜜柚品质检测方法研究
- 荆条蜜的理化性质及其抗氧化活性研究
- 蜜环菌液体培养条件优化及降血脂作用的研究
- 蜜蜂残翼病毒的分离鉴定及全基因组序列分析
- 蜜远志的质量控制及其与生远志的成分差异研究
- 蜜蜂性别决定基因csd互作因子的筛选及初步鉴定
- 不同助剂啶虫脒对蜜蜂风险影响的研究
- 原创话剧《加油闺蜜》的编剧阐述
- 基于风洞实验的蜜蜂飞行机理研究
- 炼蜜炮制机理研究美拉德反应对炼蜜炮制及其生物活性的影响