• 6.77 MB
  • 2022-06-16 12:40:16 发布

虚拟蜜罐在网络安全中应用的研究

  • 55页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
T程硕十学位论文摘要近几年,随着互联网技术的发展,网络给人们提供了越来越多的服务,但各种网络的攻击手段以及病毒的产生和传播速度也加快了,这给网络安全带来了巨大的挑战。现有的一些常用网络安全技术,如防火墙技术、入侵检测技术都是一些被动防御措旌,都是基于己知的事实和攻击模式,它们往往滞后于网络攻击行为,处于被动的位置。本文研究了一种新的主动型的网络安全技术一蜜罐技术。蜜罐技术可以弥补传统网络安全技术在对抗和捕获未知攻击上的不足,它是一种网络诱骗技术,通过真实或模拟的网络和服务来吸引攻击。基于在网络中部署大量物理蜜罐需花费的时间和费用比较多的缺点,本文重点研究了虚拟蜜罐框架honeyd,它具有能在一台物理主机上同时模拟出成千上万虚拟蜜罐的优点。本文研究了honeyd的逻辑框架结构,并对其关键技术指纹匹配技术、虚拟蜜罐网络技术进行了深入分析。本文着重设计和实现了一个虚拟陷阱网络系统。该系统用honeyd来模拟大量虚拟蜜罐,通过编写和调用脚本来模拟网络服务。并使用了模拟操作系统网络栈,模拟动态路由拓扑结构的技术。通过防火墙IPTables对该系统进行严格监控,以防止黑客以其作为跳板去攻击其它主机。将该系统放入校园网中进行了测试,验证了该系统可以成功诱骗攻击者,转移攻击流量。针对蜜罐日志的重要性及honeyd的日志功能缺陷,设计了一种日志转移备份的新方案。该方案在系统中增加了一台Linux日志服务器,并通过对honeyd代码及Linux下syslog配置的修改来实现日志数据的转移备份。本文还分析和研究了严重影响网络安全的蠕虫病毒,根据其传播模型SIR模型和honeyd的特点,提出了一种用honeyd搭建虚拟蜜罐系统来捕获蠕虫副本、转移攻击流量,反攻已感染主机的方案,以此来减轻蠕虫对局域网的破坏。关键词:网络安全;蜜罐;虚拟蜜罐;HoneydIl AbstractInrecentyears,withthedevelopmentofInternetTechnology,moreandmoreservicesareprovidedbynetwork.However,atthesametimetheattackstothewebsitesandtheoccurringandspreadingofvirusalsoincrease.Now,itbecomesabigthreattothenetworksecurityThepopularnetworksecuritytechnologiessuchasfirewall,intrusiondetectivesystemareallbelongstothekindofpassivedefensemeasuresbasedonthealready.knownfactsandattackpattern,SOtheyarealwaysdesignedaftertheattackhappensandfunctionpassively.Thisthesisstudiesanewinitiativenetworksecuritytechnology--honeypot.Thistechnologycanmakeuptheshortageoftraditionalnetworksecuritytechnologywhichcannotfindandpreventtheunknowingattacksbyusingactualorsimulantnetworkorservicestoattractattacks.Itisanetworktraptechnology.Becauseitmaytaketoomuchtimeandcostalottoassemblealargenumberofactualhoneypots,thewriterfocusesonhoneyd--thevirtualframeofhoneypot,whichcansimulatethousandsofvirtualhoneypotsononecomputer.Thisthesisanalyzedthelogicalstructureofhoneyd,especiallyitskeytechnologiessuchasfingerprintmatching,virtualhoneypot,etc.Inthisthesis,avirtualtrapsystemisdesigned,whichuseshoneydtosimulatevirtualhoneypots,andsimulatesnetworkservicesbymakingandusingscripts.Itusesthetechnologyofsimulatingthenetworkstacksofdifferentoperatingsystemsandsimulatingthedynamicnetworkroutingtopstructure.ItUSeSfirewall’SIPTable·tosupervisethesysteminordertopreventhackersusingittoattackotherhostcomputersaftertheyintrudeinthesystem.ThesystemistestedinacampusLAN,whichprovesthatitcansuccessfullytrapattackersandreducetheburdenofimportantcomputersonnetwork.Duetotheimportanceandshortcomingofhoneypotlog,wedesignanewmethodtotransferthebackupofimportantsystemlog.Inthismethod,aLinuxlogserverisusedtomodifythehoneyd’SsourcecodeandLinux’Ssyslog.Thisthesisalsoanalyzesandstudiesthebiggestnetworksecuritythreat·····-··wormvirus.BasedonthespreadmodeSIRandthefeaturesofhoneyd,thewriterintroducesamethodtocapturetheworm’scopyandshifttheattacks,andtorecovertheinfectedhost,inthiscaseitcanreducetheworm’sdamagetotheLAN.1lI T程硕士学位论文KeyWords:securityofnetwork;honeypot;virtualhoneypot;HoneydIV 工程硕士学位论文插图索引图3.1Honeyd运行时要用到的库⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯l6图3.2Honeyd的数据收集过程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯l8图3.3Honeyd的逻辑框架结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯18图3.4Windows2003ServerSP2的指纹库⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..21图3.5用Honeyd过滤垃圾邮件⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..23图4.1虚拟蜜罐的部署位置⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..24图4.2虚拟陷阱网络结构模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..27图4.3系统基本处理流程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯29图4.4虚拟网络的拓扑结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..3l图4.5Traceroute测试结果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯32图4.6Nmap测试结果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.33图4.7日志转移系统模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯35图5.1蠕虫传播流程图⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯38图5.2基于honeyd的蠕虫对抗流程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..4l图5.3Honeyd日志信息⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..44VIII 湖南大学学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名:卸久日期:沙芳年』月哆日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权湖南大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。本学位论文属于l、保密口,在年解密后适用本授权书。2、不保密团。(请在以上相应方框内打“√")鬟主簿导师签名:趣厶,一. 工程硕J二学位论文1.1选题的背景及意义第1章绪论随着计算机网络技术的迅速发展,开放式的网络体系的安全隐患同益明显地暴露出来,从上世纪八十年代至今各种计算机安全事件不断发生,已经严重威胁到网络与信息的安全。目前,普遍采用的网络安全技术有防火墙、入侵检测、漏洞扫描、身份认证、访问控制、加密技术等。这些安全措施主要是基于己知的事实和攻击模式,采取被动防御的方法,这些方法对于复杂而多变的黑客攻击显得力不从心攻击。威胁的根源在于信息系统中普遍存在的各种漏洞,而黑客的存在使潜在的漏洞变成了真实的威胁。漏洞是补不完的,黑客成了网络信息安全必须面对的问题。如何使网络安全防御体系由静态转为动态,防御措施从被动变为主动是我们要研究的薪课题。蜜罐是一种全新的技术,是为了了解黑客而发展起来的一项主动式网络安全技术⋯。蜜罐系统是一种精心布置的供黑客入侵的网络资源,是受到严格监控的网络诱骗系统,通过真实或模拟的网络和服务来吸引攻击,从而在黑客攻击蜜罐期间对其的行为和过程进行分析,以收集信息,对新攻击发出预警,同时蜜罐也可以延缓攻击和转移攻击目标。黑客在其中的行为被监控和记录并保存到安全的地方,但是黑客几乎察觉不到任何的监视行为。通过对收集到的黑客行为数据进行分析,不仅可以获取黑客行为、工具、攻击策略和动机的信息,而且能够发现网络中潜在的安全威胁和漏洞,使组织能够在可能的攻击发生前修补安全漏洞,避免攻击。虚拟蜜罐框架软件Honeyd最早是在LINUX下开发的一款软件,用C语言编写,源代码开放,可以免费使用。Honeyd能检测对非有效系统的IP地址的攻击。当检测到有对非有效系统的连接企图时,它会接受这个连接,并与黑客交互。Honeyd可以监视数百万个指向不存在有效系统的IP地址的连接,主动与成千上万的黑客交互。我们可以用Honeyd搭建虚拟陷阱网络,将其部署于局域网中,通过这个系统来转移攻击流量,捕获攻击。搭建这样一个系统,成本低,恢复也容易。目前在国内,蜜罐研究还处于发展阶段,只有少数几个大学和科研机构在做些研究,己经出现了少量的文献和一些具体的蜜罐系统。不断改进和完善蜜罐这样一种主动防御技术,将其与传统网络安全技术如防火墙技术、入侵检测技术相结合,将是未来网络安全领域发展的一个趋势。 虚拟蜜罐红网络安伞中的心用研究1.2网络安全的现状随着Internet的发展,网络所涉及的应用范围越来越广,比如电子商务、电子银行、网络购物、电子证券等等。但随着网络规模的不断扩大,人们对网络的熟悉程度和依赖与同俱增,各种网络的攻击手段,以及病毒的产生和传播速度加快,使得网络的安全问题面临巨大的挑战。如人工的攻击,自动传播的蠕虫病毒和木马,这些病毒传播性强、自动化程度高、破坏性强,近几年每年都要给互联网带来上百亿美元的损失。目前的网络安全技术通常是以成本和访问速度的降低为代价的。普遍采用的网络安全技术有防火墙、入侵检测、漏洞扫描、身份认证、访问控制、加密技术等。这些安全措施主要是基于己知的事实和攻击模式,采取被动防御的方法,这些方法对于复杂而多变的黑客攻击显得力不从心攻击。1.2.1网络攻击技术1.获取目标系统信息的技术在攻击系统前,攻击者需要获得目标系统的相关信息,来决定攻击采用的方法。获取相关信息的技术主要有以下几种:(1)通过端口扫描程序扫描目标系统的TCP和UDP端口,来发现目标系统上所提供的服务。例如:扫描N2l端口可以连接,说明目标系统提供FTP服务,攻击者可以利用FTP的安全问题来对系统进行攻击。(2)不同操作系统或不同应用软件及其不同版本之间存在着一些差异,通过指纹识别工具软件如NMAP或Xprobe来探测目标系统,判断目标系统的类型和版本号。(3)通过网络监听的手段获取目标系统的信息,如监听目标系统的网络数一据,发现其提供的服务和相关信息。2.攻击目标系统的技术网络威胁通常分为主动威胁和被动威胁两大类,主动威胁是指对系统中所含信息的篡改或对系统的状态及操作的改变,因此主动攻击主要是威胁信息的完整性、可用性和真实性。而被动攻击是指攻击者只是观察和窃取数据而少干涉信息流,它的实现很少会导致系统中信息的改动,而且系统的操作与状态也不会被改变,因此被动攻击主要威胁信息的保密性。以下是几种典型的攻击方法心¨驯:(1)缓冲区溢出攻击通过往程序的缓冲区写超过其长度的内容,造成缓冲区溢出,从而破坏程序的堆栈,使程序转而执行其它指令,以达到攻击的目的.当然,随便往缓冲区中填东西并不能达到攻击的目的。最常见的手段是通过制造缓冲区溢出使程序运行一个用2 T程硕十学位论文户shell,再通过shell执行其它命令。如果该程序具有root权限的话,攻击者就可以对系统进行任意操作了。(2)嗅探以太网是一个共享信道的网络,通常帐户和口令等信息都在以太网上传输,这些数据报头包含目的主机的物理地址,只有硬件地址匹配的机器才会接收该数据包。嗅探通过计算机的网络接口接收不属于本主机的数据,截取网上传输的数据报文,从中获取有价值的信息。在嗅探过程中,将嗅探主机的网卡设置成混杂模式,就可以接收信道中所有的广播信息、用户口令、信用卡号、电子邮件等机密信息。攻击者只需要接入以太网上的任一节点进行监听,就可以捕获这个以太网上的所有数据包,通过对这些数据包进行解码、重组分析,就能窃取关键信息,从而会给用户和系统带来极大的损失。(3)拒绝服务利用合理的服务请求来占用过多的服务资源,如网络带宽、文件系统空间容量,开放的进程数等。只要服务超载,服务资源就无法响应其他合法用户的请求,甚至会导致系统物理上的瘫痪或崩溃。如Land攻击是黑客利用网络协议缺陷或系统漏洞发送一些非法的数据或数据包,使得系统死机或重新启动,从而使一个系统或网络瘫痪。SYNflood贝JJ是在短时间内发送大量伪造的连接请求报文到网络服务所在的端口从而造成服务器的资源耗尽,系统停止响应甚至崩溃。(4)蠕虫在近些年流行的病毒中蠕虫病毒占据了很大一部分。通过Email或者网页,甚至在局域网内通过共享文件夹等方式进行传播,感染速度非常快,借助于互联网可以在很短的时间内传播到世界各地。(5)特洛伊木马特洛伊木马是一种网络客户机/服务器程序,由一个黑客,或是通过一个不令人起疑的用户秘密安装到目标系统。一旦安装成功并取得管理员权限,安装此程序的人就可以直接远程控制目标系统。在目标计算机上执行一些操作,如传送或删除文件、窃取口令、重新启动计算机等。1.2.2现有的网络安全技术网络安全技术的核心问题是对计算机系统和网络进行有效的防护。现有的一些网络安全技术如防火墙和身份认证技术是把攻击者挡在大门外,让入侵者“进不来”;访问控制技术让攻击者不能随意的把信息提取走;信息加密技术使攻击者“看不懂”;入侵检测技术则是动态的监视网络和系统。下面介绍几种常用的网络安全技术:3 短拟蜜罐4:网络安全中的心用研究1.防火墙技术防火墙在受保护网和外部网之间构造了一个保护层,防止外部网用户以非法手段通过外部网进入内部网络,访问内部网络资源。它是一种用来保护内部网络操作环境的设备,常被看做网络安全的第一道墙。它对两个或多个网络之间传输的数据包和链接方式按照一定的安全策略进行检查,来决定网络之间的通信是否被允许,并监视网络运行状态。防火墙实际上是一个独立的进程或一组紧密联系的进程,运行于路由、网关或服务器上来控制经过防火墙的网络应用服务的通信流量。防火墙的目的在于实现安全访问控制,按照OSI/RM,防火墙可以在这七层中五层设置。虽然防火墙可以提高来自外部网络非法用户对内部网络攻击的安全性,但随着网络攻击技术及工具的发展,防火墙在网络安全防护中存在着一些缺陷,最明显的缺陷是防火墙无法防护来自网络内部用户的攻击,而当今有很多攻击都是来自网络内部的。并且它无法防备病毒攻击,无法保护那些绕过防火墙的攻击‘引。2.入侵检测系统入侵检测系统(IntrusionDetectionSystem,简称为IDS),是指对入侵行为的发现。它通过在计算机网络或计算机系统中的若干关键点收集信息并对收集到的信息进行分析,从而判断网络或系统中是否有违反安全策略的行为和被攻击的迹象。入侵检测系统是安全体系的一种重要防范措施,它试图检测、识别和隔离入侵企图或计算机的未授权使用。它不仅能监视网上的访问活动,还能针对正在发生的攻击行为进行报警,甚至采取相应的阻断或关闭设备的措施。入侵检测系统通常是网络安全的第二道防线哺1。现在的入侵检测系统可以分为基于主机(HIDS)和基于网络(NIDS)两类。HIDS位于单个主机,利用操作系统产生的日志记录作为信息源,通过对其进行审计检测入侵行为。NIDS不对网络数据包或扫描配置进行检查,而是对系统日志提供的大量数据进行整理。NIDS通过监控出入网络的通信数据流,依据一定规则对数据流的内容进行分析,从而发现协议攻击、运行己知黑客程序的企图和可能破坏安全策略的特征,做出入侵攻击判断。为了能够捕获入侵攻击行为,NIDS必须位于能够看到所有数据包的位置。最佳位置便是位于Internert至U内部网络的接入点。入侵检测系统的缺陷是容易出现误报或漏报的情况。3.身份认证技术身份认证技术要求参与通信的双方必须先相互鉴别对方的身份,然后才能相互进行安全通信。因为我们要保护数据资源,除了要让数据资源完整正确地存在外,还要确保让系统中的数据只被有权限的人访问,未经授权的人则无法访问到数据。我们可以依靠身份认证技术来给数据加上一把锁。但身份认证技术的缺点4 工程硕士学位论文是,如果没有有效的身份认证手段,访问者的身份就很容易被伪造,未经授权的人就很容易仿冒有权限人的身份,这样,这个安全技术就都形同虚设。1.3一种新的网络安全技术1.3.1传统的网络安全技术的缺点现在使用的网络安全技术主要是以防火墙和入侵检测系统为核心,但这两种技术都有自己的缺点。防火墙防护的前提是对各种已识别的攻击进行正确的配置。这就要求防火墙的知识库要不断更新以识别新类型的攻击。入侵检测系统能对违反安全策略的恶意使用行为进行识别和响应的前提也是需要不断更新知识库,它容易出现误报或漏报的现象。从本质上说,防火墙和入侵检测系统都滞后于各种各样的黑客攻击。这些安全技术中大多数都是在攻击者对网络进行攻击时对系统进行被动的防护,而蜜罐技术的引入,可以将防护从被动方式变为主动方式。即在蜜罐中用特有的特征吸引攻击者,同时对各种攻击行为进行分析并找到有效的对付方法。1.3.2一种新的网络安全技术一蜜罐蜜罐是为了了解黑客而发展起来的一项主动式的新的网络安全技术。它是一种精心布置的供黑客入侵的网络资源,它是一种受到严格监控的网络诱骗系统,通过真实或模拟的网络和服务来吸引攻击,从而在黑客攻击蜜罐期间对其的行为和过程进行分析,以收集信息,对新攻击发出预警,同时蜜罐也可以延缓攻击和转移攻击目标。黑客在其中的行为被监控和记录并保存到安全的地方,但是黑客几乎察觉不到任何的监视行为。通过对收集到的黑客行为数据进行分析,不仅可以获取黑客行为、工具、攻击策略和动机的信息,而且能够发现网络中潜在的安全威胁和漏洞,使组织能够在可能的攻击发生前修补安全漏洞,避免攻击。蜜罐技术弥补了防火墙技术和入侵检测技术滞后于各种黑客攻击的缺陷,如果将蜜罐技术和防火墙与入侵检测系统结合起来,可以构成一个功能更加完善的网络安全防护系统哺1。1.4论文的研究内容1.4.1论文的主要工作本论文的主要工作包含以下几方面:(1)研究了网络安全现状,对一种新的网络安全技术蜜罐技术进行了综述。分析了蜜罐honeyd的逻辑框架结构,对honeyd的关键技术:指纹匹配、 虚拟蜜罐在嘲络安全中的应用研究虚拟蜜罐网络技术进行了深入分析和研究。(2)设计了一个虚拟陷阱网络系统,该系统用honeyd来模拟虚拟蜜罐,通过防火墙IPTables来对该系统进行严格监控。并将该系统放入校园网中进行了测试,验证了该虚拟陷阱网络系统可以通过模拟不同操作系统的网络栈,并提供动态路由拓扑结构,来诱骗攻击者,转移攻击流量。(3)本文基于蜜罐R志的重要性及honeyd的同志功能缺陷,提出了在网络中部署一台Linux日志服务器,通过对honeyd代码和Linux下的syslog配置的修改来转移备份日志数据的方案。(4)本文还分析和研究了严重影响网络安全的蠕虫病毒,根据传播模型SIR模型和honeyd的特点,提出了一种用honeyd搭建虚拟蜜罐系统来捕获蠕虫副本、转移攻击流量,反攻已感染主机的方案,以此减轻蠕虫对局域网的破坏。1.4.2论文的内容安排本文的组织结构如下,共分为6章:第1章:介绍了网络安全的现状和常用的攻击方法,对现有的网络安全技术进行了分析。引入了一种可以弥补传统技术缺陷的新的主动防御技术一蜜罐技术。第2章:这章对蜜罐的分类,国内外现在的研究现状以及现有的蜜罐产品进行了介绍。并分析了蜜罐技术的优缺点。并对蜜罐的关键技术:网络捕获、数据捕获、数据分析、数据控制进行了深入研究和论述。第3章:介绍了honeyd相对于其它蜜罐软件的优势,分析了honeyd的逻辑框架结构,研究了如何让honeyd在网络中正确的进行数据收集。对honeyd的关键技术:指纹匹配、虚拟蜜罐网络技术进行了深入的研究和分析。最后介绍了honeyd在网络安全中的典型应用。第4章:分析了虚拟蜜罐在网络安全中的作用及在网络中可以部署的位置。详细研究了对虚拟蜜罐的配置。设计了一个虚拟陷阱网络系统,该系统用honeyd来模拟虚拟蜜罐,通过防火墙IPTables来严格监控该系统。并将该系统放入局域网中进行了测试。并针对honeyd的日志功能缺陷,提出了一种转移备份日志数据的方案。第5章:对严重影响网络安全的蠕虫病毒进行了研究。根据传播模型SIR模型和honeyd的特点,提出了一种用honeyd搭建虚拟蜜罐系统来捕获蠕虫副本、转移攻击流量,并利用虚拟蜜罐反攻已感染主机,减轻蠕虫对局域网的破坏的方案。并做了一个用虚拟蜜罐来对抗蠕虫的试验。最后分析了用虚拟蜜罐对抗蠕虫的优势与不足。6 工程硕士学位论文第6章:总结与展望1.5本章小结本章首先介绍了选题的背景和意义,接着详细介绍了网络安全的现状和常用的攻击方法,对现有的网络安全技术防火墙技术、入侵检测技术和身份认证技术进行了论述,并分析了这些常用技术的缺点。引入了一种新的主动防御技术一蜜罐技术。最后总体上对本文的研究内容和章节进行了介绍。7 虚拟蜜罐在嘲络安全中的应用研究2.1蜜罐的概念第2章蜜罐技术综述2.1.1蜜罐的定义“蜜罐”的思想最早由C1iffordStol1于1988年6月提出,作者在跟踪黑客的过程中,利用了一些包含虚假信息的文件作为黑客“诱饵"来检测入侵,这就是蜜罐的基本构想。但他并没有提供一个专门让黑客攻击的系统。明确提出蜜罐是LanceSpitzner给出的定义:蜜罐是一种安全资源,其价值在于被探测、攻击或者摧毁。蜜罐是一种预先配置好的系统,系统内含有各种伪造而且有价值的文件和信息,用于引诱黑客对系统进行攻击和入侵。蜜罐系统可以记录黑客进入系统的一切信息,同时还具有混浠黑客攻击目标的功能,可以用来保护服务主机的正常运行H3。蜜罐系统收集到的信息可以作为跟踪、研究黑客现有技术的重要资料,可以用来查找并确定黑客的来源;还可以用来分析黑客攻击的目标,对可能被攻击的系统提前做好防护工作。2.1.2honeypot的分类从应用上可以分为产品型蜜罐和研究型蜜罐随1:1.产品型蜜罐由网络安全厂商开发的商用蜜罐,一般用作诱饵把黑客的攻击尽可能长时间的捆绑在蜜罐上,赢得时间保护实际网络环境,有时也用来收集证据来作为起诉黑客的依据。2.研究型蜜罐主要用于研究活动,吸引攻击,收集信息,了解新型攻击,探测新型黑客工具,了解黑客的目的、活动的规律等。主要是一些研究组织用来收集攻击者的相关信息来进行研究。按照蜜罐实现时,允许操作系统与入侵者交互的复杂程度,蜜罐系统可以划分为低交互级蜜罐系统、中交互级蜜罐系统和高交互级蜜罐系统阳3:1.低交互级蜜罐系统典型的低交互级蜜罐仅提供一些简单的虚拟服务,例如在特定的端口监听记录所有进入的数据包。这类蜜罐没有向入侵者提供可以远程登录的真实操作系统,因此风险最低,但是蜜罐所扮演的角色是非常被动的,就象一个单向连接,只有信息从外界流向本机,而没有回应信息发出,无法捕捉到复杂协议下的通讯过程,所能收集到的信息有限。 工程硕上学位论文2.中交互级蜜罐系统中交互级蜜罐系统也不提供真实的操作系统,但是却为入侵者提供了更多复杂的诱骗进程,模拟了更多更复杂的特定服务,使攻击者误认为是一个真正的操作系统,能够收集更多数据。但同时也增加了蜜罐的风险,因此要确保在模拟服务和漏洞时不产生新的真实漏洞,而给黑客攻击真实系统的机会。3.高交互级蜜罐系统高交互蜜罐提供了真实的操作系统和服务,可以了解黑客运行的全部动作,获得更多有用信息,但遭受攻击的可能性大,引入了更高风险,结构较复杂。高交互蜜罐系统部署的代价最高,需要系统管理员的连续监控。不可控制的蜜罐对任何组织来说没有任何意义甚至可能成为网络中最大的安全隐患。从具体实现的角度,可以分为物理蜜罐和虚拟蜜罐n0J:1.物理蜜罐物理蜜罐通常是一台或多台真实的在网络上存在的主机,这些主机上运行着真实的操作系统,拥有自己的IP地址,提供真实的网络服务来吸引攻击。2.虚拟蜜罐虚拟蜜罐通常用的是虚拟的机器、虚拟的操作系统,它会响应发送到虚拟蜜罐的网络数据流,提供模拟的网络服务等。2.2国内外研究现状2.2.1国内蜜罐技术研究现状在国内,蜜罐、蜜网的研究还处于发展阶段,只有中国电子科技大学,北京大学,西安电子科技大学,中科院高能所等少数几个大学和科研机构在做些研究,己经出现了少量的文献和一些具体的蜜罐系统,还没有形成自己的理论体系和流派,更没有成熟的产品,和国外的差距还很大。国内对蜜罐的研究以北京大学计算机研究所信息安全工程研究中心推进的蜜罐系统研究项目ArtemiS(狩猎女神)为代表。狩猎女神项目于2005年2月正式成为世界“蜜罐系统研究联盟"的成员,是加入该联盟的第一支中国团队⋯1。中国电子科技大学承担的国家计算机网络与信息安全管理中心关于《国家信息攻防与网络安全保障持续发展计划》课题中的一部分,主要研究内容包括:用于提高蜜罐质量的网络攻击诱骗技术(IP空间欺骗、网络流量仿真、网络动态配置、组织信息欺骗)和蜜罐自身的安全技术(连接控制、路由控制、数据捕获、远程日志)。西安电子科技大学研制了XidianTechHoneynet。9 虚拟蜜罐袖:网络安全中的心用研究2.2.2国外研究现状目前在国外学术界,对蜜罐技术研究最多的是“蜜网项目组"(HoneynetProject)和“蜜网研究联盟"(HoneynetResearchA11lance)。蜜网项目组织,是一个非官方,非营利的由30多位安全专家组成的组织,专门致力于了解黑客团体使用的工具、策略和动机。形成了一系列的理论基础,并提出了蜜网的一代和二代模型。2002年1月,“蜜网项目组”倡议成立了“蜜网研究联盟",该联盟已经拥有了二十几个来自不同国家和地区的研究组织。目前,蜜罐主要有以下几种发展趋势n别:(1)蜜罐系统从用多台计算机组建向只需要用一台计算机转变。例如Honeynet组织正在进行一个VirtualHoneynets的项目。该项目计划用虚拟机软件(VMWare)在一台计算机上安装多个可以同时运行的操作系统。每个操作系统都看做是网络上一台独立的计算机。把这些虚拟机分别配置为蜜罐、入侵检测系统、防火墙,在一台计算机上实现一个虚拟的Honeynet。(2)与其他网络安全技术相结合如防火墙或入侵检测系统(IDS),减少误报和漏报。2.3现有蜜罐产品介绍1.Back0ffigetFriendlyBackOfficerFriendly(BOF)是一个可以用作蜜罐系统的小程序。它是由NetworkF1ightRecorder(NFR)公司发布的一个用来监控BackOrifice(一种基于Windows的木马,主要监听UDP31337端口)的工具。是一种低交互级蜜罐。BOF所做的只是模拟几个基本的Internet服务,在服务的TCP端口上监听,记录所有的连接企图。BOF不是一个好的严谨的蜜罐系统,但对于那些只想知道谁连接他的个人工作站的好奇者来说,是个不错的工具n引。2.SpecterSpecter是NeoWorx公司推出的一种可以运行在多种操作系统上的低级别的商业蜜罐系统。它模拟一个真正的操作系统和一定数量的服务,如SMTP和FTP这样的常规Internet服务,引诱黑客离开真实的应用系统。Specter记录所有的连接请求,还启动对黑客的Finger服务和端口扫描,以收集尽可能多的黑客信息。Specter只模拟一般的服务和操作系统,并没有真正的系统可供黑客交互,它的风险很低。Specter的价值在于欺骗,它可以容易快速的发现是什么人在探测它。Specter减少了误报和漏报,简化了欺骗过程。lO T程硕士学位论文3.HoneydHoneyd由Michigan大学的NielSProvos开发,它能在网络上创建虚拟主机和虚拟服务。它源代码开放,是一种低交互的应用型蜜罐,可以通过定制来监听任何端口,可以用来检测攻击和非授权行为。最早版本发布于2002年4月,最早版本可以模拟5种不同服务,这些模拟服务用来欺骗黑客和捕获他们的行为【14】oHoneyd不检测指向它自身IP地址的攻击,而是检测对非有效系统的IP地址的攻击。当检测到有对非有效系统的连接企图时,它会接受这个连接,并与黑客交互。Honeyd可以监视数百万个指向不存在有效系统的IP地址的连接,主动与成千上万的黑客交互。Honeyd可以同时模拟多种操作系统,目前它可以模拟四百多种不同类型和版本的操作系统。4.LaBreaLaBrea由TomListon开发,是一种“粘蜜罐(Stickyhoneypot)”的程序,可以用它来构造一个“柏油坑’’。LaBrea会利用网络中没有被使用的IP地址来构造一些“虚拟系统",回复被感染的系统发出的连接请求,并且可以响应这些请求,使另一端的机器在这个柏油坑中“粘"上~段时间。LaBrea主要利用一些空闲的网络资源诱骗和绑定恶意线程。由于这些被骗入“柏油坑”的蠕虫线程无法转而攻击其他机器,所以它们会变得无害。5.ManTrapManTrap是一个由Symantec公司开发的运行在SolariS操作系统上的高交互的商业蜜罐系统。ManTrap主要集中于内网安全,因为在很多地方,来自公司内部的攻击造成的损失比来自外部的攻击造成的损失要大很多,当然,ManTrap也可以致力于外网的安全。ManTrap的广告上说:“ManTrap创建了一个内部黑客到达所需目标必须通过的虚拟的布雷区,黑客的一个小错误都会令自己暴露。”ManTrap主要用到了一种称为“jail"(监狱)的东西。一个“监狱”指的就是连接一个特定的网络接口上的主机操作系统的副本。在一台单一的机器上ManTrap能支持4个这样的操作系统副本。在安装期间,“监狱"内部产生与安装ManTrap的机器一样的操作系统环境。在ManTrap软件内核上也有一个交互界面,控制“笼子”和主机内核之间的交互。尽管ManTrap存在单一的主机上,但是在网络上这些“笼子”是作为四个单独的系统而出现的,这样的话,一个ManTrap就是网络上拥有四个系统的子网,每个系统都有网络接口。攻击者可以与整个jai1系统进行交互,还可以对各种应用程序进行攻击。所有的这些行为可以被捕获并记录下来。然而,可以了解的信息越多,风险就越大,蜜罐一旦被入侵,攻击者就可以用该系统对其他人进行攻击。ManTrap可以 虚拟蜜罐在嗍络安全中的心用研究保持对攻击者行为的审计追踪,并保存同志文件和记录入侵者的行为,通过分析这些信息,用户就可以对入侵者做出简单的结论,包括入侵者的熟练程度和入侵的意图等,在响应攻击者的同时做出有效的资源配置。2.4Honeypot@的主要技术分析2.4.1网络欺骗技术蜜罐的价值是在其被探测、攻击或者攻陷的时候才得到体现。网络欺骗技术是根据网络中存在的安全弱点,采用某些技术有意暴露系统漏洞来引诱入侵者攻击。其主要目的是收集和分析入侵者行为。网络欺骗技术是蜜罐技术中最关键的核心技术,没有欺骗功能的蜜罐是没有任何价值的。网络欺骗技术的强与弱也从一个方面反映了这个蜜罐系统的价值。目前蜜罐的主要网络欺骗技术有以下几种[15][16】●1.模拟端口服务侦听非工作的服务端口是诱骗黑客攻击的一种常用手段。当黑客通过端口扫描检测到系统打开的非工作的服务端口时,他们通常会主动向这些端口发起连接,并试图通过系统或服务的漏洞来发送攻击代码。此刻蜜罐系统可以通过端口响应来收集所需要的信息。但因为简单的模拟非工作服务端口,只能与黑客建立连接而不能进行进一步的信息交互,所以获取的信息是非常有限的。2.模拟系统漏洞计算机操作系统和各种应用软件都存在着大量的安全漏洞,黑客往往是利用这些漏洞来进行网络攻击的,因此模拟系统漏洞是对黑客最好的诱饵。在蜜罐中留下各种安全漏洞是最有效和直接的诱骗方法。3.IP空间欺骗·IP空间欺骗利用计算机的多宿主能力在一块网卡上分配多个IP地址,来增加入侵者的搜索空间,增加他们的工作量。这个技术和虚拟机技术结合可以建立一个大的虚拟网段。目前要实现在一个以太网卡上同时存在若干IP、MAC地址还有一定难度,也不是非常必要。我们可以选择简单的Linux系统支持的IP别名技术,该技术就是在同一个以太网卡上绑定若干个IP地址,这些绑定的IP地址全对应同一个MAC地址,这样可以很容易实现IP地址空间的欺骗。4.流量仿真黑客进入系统后通常会很谨慎,他们可能会用一些工具分析系统的网络流量,如果发现系统的网络流量很小,就会怀疑系统的真实性。流量仿真是用某些技术产生欺骗的网络流量,使黑客不能通过流量分析检测到欺骗。常用的流量仿12 工程硕士学位论文真方法有以下几种:(1)从远程伪造流量,让入侵者可以发现和利用。(2)用重现或实时的方式复制真正的网络流量。5.系统动态配置真实网络系统的状态一般会随时间改变,是动态的。机警的黑客可能会对系统的状态进行长时间的观察,如果欺骗是静态的也就是变化很小,那么在黑客的监视下就容易暴露,掉进蜜罐中的黑客就会很快溜掉。因此需要动态的配置我们的系统,使其状态象真实网络一样随时间而发生变化,增加蜜罐的欺骗性。6.组织信息欺骗如果某个组织提供有关个人和系统信息的访问,那么欺骗也必须以某种方式反映出这些信息。例如,如果某组织的DNS服务器包含了个人系统拥有者及其位置的详细信息,那么你就需要在欺骗的DNS列表中加入伪造拥有者及其位置的信息,否则欺骗很容易被发现。7.端口重定向技术为了能吸引黑客,较好的方法是构建一个复制的模拟网络作为蜜网。然后利用防火墙的端口映射或重定向技术,将它重定向到一个蜜网的IP地址中。在不被黑客察觉的情况下监视他们的行动,得到黑客所使用的工具、采用的方式、通信方法和入侵动机等信息,同时牵制他们将精力都耗费在蜜网上。利用端口重定向技术,可在工作系统中模拟一个非工作服务。例如,工作系统运行Web服务(端口80),可以将Telnet(端口23)和SMTP(端口25)重定向到一个蜜罐,因为这两个服务在工作系统中没有打开,所有对这两个端口的访问(可认为是入侵行为)实际上都在蜜罐中,而不是工作系统n71。2.4.2数据捕获数据捕获是指获取黑客的所有活动,难点是如何获取尽可能多的数据而不被黑客发现。’蜜罐系统的数据捕获通常可以分为三层来实现。最外层由防火墙来实现,主要是对出入蜜罐系统的网络连接进行日志记录,这些日志记录放在防火墙本地。第二层数据捕获由入侵检测系统(IDS)来完成,IDS在数据链路层对蜜罐中的网络数据流进行监控,抓取蜜罐内的所有网络包,这些网络包放在IDS本地。最里面的捕捉是由蜜罐主机来完成,主要是蜜罐主机的所有系统日志、所有用户击键序列和屏幕显示,这些数据通过网络传到远程同志服务器存放,防止黑客销毁证据。2.4.3数据分析数据分析包括网络协议分析、网络行为分析和攻击特征分析等。要从大量的13 虚拟蜜罐在I】c)9络安伞中的应用研究网络数据中提取攻击行为的特征和模型是很难的。现有的蜜罐系统都没有很好的解决使用数学模型自动分析和挖掘出网络攻击行为这一难题m1。2.4.4数据控制数据控制的目的是防止黑客利用蜜罐去攻击其他非蜜罐系统。蜜罐是专门用于被攻击的系统,但不能让黑客把它做跳板去攻击其他系统,因此要控制系统的数据流量而不被黑客发现¨”。我们允许所有对蜜罐的访问,但是要对从蜜罐系统外出的网络连接进行控制,当蜜罐系统发起外出的连接,说明蜜罐主机被黑客攻破了,这些外出的连接很可能是黑客利用蜜罐对其他的系统发起的攻击连接。对外出连接控制不是简单的阻断蜜罐对外所有的连接,那样会让黑客知道他正身陷蜜罐系统当中。我们可以限制一定时间段内外出的连接数,还可以修改这些外出连接的网络包,使它不能到达目的地,同时又给黑客网络包己正常发出的假象。2.5蜜罐技术的优缺点2.5.1蜜罐的优点1.数据价值高当今,安全组织所面临的一个问题就是怎样从收集到的海量数据中获取有价值的信息,他们每天通过防火墙日志、系统日志和入侵检测系统发出的警告信息中收集到大量数据。这些数据的量非常的大,从中间提取有价值的信息很困难。但蜜罐一般只会收集到非常少量的数据,但这些数据的价值却非常高,因为蜜罐没有任何产品型的功能,所有对他的访问都是非法的、可疑的,这种特征很大程度的降低了噪声级别。蜜罐不同于其他的安全工具每天收集到若干GB的数据,大多数Honeypot每天收集到的数据只有几兆。并且所有载入蜜罐日志的数据都很可能是一次扫描、探测或攻击。同时通过分析在蜜罐中收集到的数据,可以发现新的攻击方法和攻击工具心引。2.资源消耗少当前绝大多数安全组织所而临的一个难题就是资源的限制,有的是资源的耗尽。例如,当防火墙的状态检测表满的时候,它就不能接受新的连接了,它会强迫防火墙阻断所有的连接,而不仅仅是非法的连接。同样入侵检测系统会因为网络流量太大,例如每秒几百M,使其缓冲区承受不起,而导致IDS丢失数据包。这些都是由于网络资源耗尽而导致安全措施失去了作用。网络资源耗尽会导致监视网络失效,漏报也就在所难免了。因为Honeypot只需要监视对它自己的连接,因此需要捕获和监视的网络行14 工程硕士学位论文为很少,很少会存在网络流量大的压力,所以一般不会出现资源耗尽的情况。我们不需要在充当蜜罐的主机的硬件配置上投入大量的资金,只需要一些相对便宜的计算机就可以完成蜜罐的部署工作。3.实现简单实现简单也是蜜罐的一个优点。部署一个蜜罐,不需要开发复杂和新奇的算法,不需要维护特征数据库,不需要配置规则库。只要配置好蜜罐,把它放在网络中,然后静观其变。不过,对高交互的蜜罐的部署会要复杂一些,因为它要和攻击者进行交互,所以风险也大一些,需要对它进行严格监视,防止以它为跳板去攻击网络中的其它计算机。有时越是简单的概念就越可靠,出现错误率和错误配置的可能性就越小。2.5.2蜜罐的缺点和其它的安全措施一样,蜜罐也有其自身的缺点。蜜罐不能完全取代其它的安全工具,必须把它和其它的安全工具相结合才能更好的发挥它的作用。1.数据收集面狭窄蜜罐的最大缺点就是收集数据面狭窄,如果没有入攻击蜜罐,它们就变得毫无用处。在某些情况下攻击者可能会识别出蜜罐,那么攻击者就会避开蜜罐直接进入网络中的其他主机,这样蜜罐就不会发现入侵者已经进入了你的网络。所以虽然蜜罐可以完成很多有价值的工作,但是一旦攻击者不向蜜罐发送任何数据包,蜜罐就不会获得任何有价值的信息。也就是说,蜜罐的最大缺点就是它仅仅可以检测到那些对它攻击的行为。2.有一定风险蜜罐可能会把风险带入它所在的网络环境。蜜罐一旦被攻陷,它就有可能成为攻击、潜入或危害其它的系统或组织的跳板。不同交互级别的蜜罐可能带来不同程度的风险。某些蜜罐可能带来很小的风险,另一些蜜罐则为攻击者提供完整的平台进行新的攻击。蜜罐越简单,所带来的风险就越小,但所收到信息就会越少。针对具体的形式来说,仅仅进行服务模拟的蜜罐就很难被入侵,而那些具有真实操作系统的高交互级蜜罐,因为具有很多真实系统的特性,就很容易被入侵并成为入侵者攻击其它组织和机器的工具。2.6本章小结蜜罐作为一种新的主动防御技术,弥补了传统网络安全技术在捕获未知攻击上的不足。本章对蜜罐的分类,国内外现在的研究现状以及现有的蜜罐产品进行了介绍。并分析了蜜罐技术的优缺点。并对蜜罐的关键技术:网络捕获、数据捕获、数据分析、数据控制进行了深入研究和论述。15 虚拟蜜罐红列络安伞中的戍用研究第3章蜜罐Honeyd的分析与研究3.1Honeyd简介虚拟蜜罐框架软件Honeyd是由Michigan大学的NielSProvos开发的,它源代码开放,是一种应用型蜜罐。3.1.1Honeyd的优点本文选择Honeyd来构造这个系统,主要是相对其它蜜罐软件,它具有如下优点:1.Honeyd最早是在LINUX下开发的一款软件,用C语言编写,延续了Linux的精神,源代码开放,可以免费使用。而且因为世界各地的计算机爱好者可以共享程序代码,所以可以相互修改,因此它的功能不断完善。2.可以在一台真实主机上同时模拟上百甚至上千台不同的拥有独立操作系统和不同IP的计算机。而大部分其它蜜罐在同一时间只能模仿一台计算机,但Honeyd可以同时呈现上千个不同的IP地址。通过它来搭建系统,成本低,恢复也容易。3.可以模拟一些典型的网络服务,如FTP、Telnet、Smpt、Pop3等服务,这些可以通过简单的配置文件对虚拟主机的服务进行任意配置来实现。4.因为蜜罐一旦被攻击者的识别工具识别出来就失去了它的价值。而Honeyd具有指纹匹配机制,能欺骗攻击者的指纹识别工具,如Xprobe、Nmap的探测。3.1.2Honeyd运行时要用到的库Honeyd不能单独运行,它要以下三个函数库作为配套胁1,libenvent,libdnet,libdcap。如图3.1图3.1Honeyd运行时要用到的库16 T程硕,}:学位论文Libdnet一数据包构造和发送数据库。被用来对防火墙进行监控,同时这个库还提供了一个API,允许控制某些Unix的防火墙(如ipchains,ipfilters)。Honeyd在此基础上开发网络数据包函数。Libpcap--数据包捕获开发库。是一个与实现无关的访问操作系统所提供的分组捕获机制的分组捕获函数库,用于访问数据链路层。这个库为不同的平台提供了一致的编程接口,在安装了libpcap的平台上,以libpcap为接口写的程序、应用,能够自由的跨平台使用。操作系统所提供的分组捕获机制主要有三种:BPF(BerkeleyPacketFilter),DLPI(DataLinkProviderInterface),及Linux下的SOCKPACKET类型套接口。Honeyd用这个库来对数据链路层进行访问。Libevent一异步事件库。当Honeyd收到一个数据包,就是一个事件,作为Libevent的一个时间,加入缓冲队列,等待处理。3.2Honeyd的数据收集过程要使Honeyd可以正确的接收和回应目的地址是我们的虚拟蜜罐的网络数据包,必须正确的配置网络。有几种方法可以实现网络的配置:如为指向Honeyd主机的虚拟IP创建特殊的路由,使用ARP代理。如图3.2所示,假设l0.0.0.1是路由器的lP地址,l0.0.0.2是Honeyd主机的IP地址,10.0.0.11一10.O.O.14是Honeyd虚拟蜜罐的IP地址。最简单的情况是虚拟蜜罐的IP位于我们局域网内。当入侵者通过互联网向虚拟蜜罐Linux1.0.9发送一个数据包时,路由器会接收数据包并试图发送这个数据包。路由器会查询路由表来决定把该数据包发往哪里。数据包有以下3种处理方式:(1)路由器A将数据包转发到另一个路由器。(2)10.0.0.11位于路由器所在的局域网范围内,路由器可以直接将数据包传递给lO.0.0.1l。(3)当没有路由指向1O.0.0.1l时,路由器会丢弃这个数据包。为了将虚拟蜜罐的数据流引向Honeyd主机,我们可以用以下方法:(1)如果没有配置专门的路由,路由器通过ARP请求确定虚拟蜜罐的MAC地址,因为没有相应的物理机器,我们配置Honeyd主机用自己的MAC地址对10.0.0.11的ARP请求作出反应。这样通过ARP代理路由器就把发送给虚拟蜜罐Linux1.0.9的数据包转到了Honeyd主机的MAC地址。(2)将到虚拟蜜罐的路由器入口设置为指向Honeyd主机,这样路由器转发到虚拟蜜罐的数据包会直接发送到Honeyd主机心2H231。17 虚拟蜜罐在I)c)9络安全中的心用研究10.O.0.110.0.0蓬影Linux1.0.9WindowsNT410.O.O.1110.0.0.12Honeyd卡机i萌“.-...-......。国虚拟蜜罐Linux1.0.9WindowsNT410.0.0.1310.0.O.14图3.2Honeyd的数据收集过程3.3Honeyd的逻辑框架结构Honeyd系统的组成包括配置数据库、中央包分配器、协议处理器、个性弓擎、路由组件(可选)这样几个部分,其系统结构可以简化为图3.3所示乜州:图3.3Honeyd的逻辑框架结构当Honeyd接收到数据包时,中央包分配器会检查IP包的长度,并修改包18 T程硕:}:学位论文的校验和。Honeyd主要响应ICMP、TCP和UDP这三种互联网协议,其他协议包在被记入日志后被偷偷丢弃。在处理数据包之前,中央包分配器会读取配置数据库,查找与数据包目的地址相对应的蜜罐配置。如果没有对应的配置存在,系统会采用一个缺省的配置。给定配置后,数据包传输层的协议类型把数据包分配给特定的协议处理器。除了可以建立本地服务连接外,Honeyd还支持网络连接的重定向。这种重定向可以是静态的,也可以根据四个参数(源地址与源端口、目标地址与目标端口)判断。重定向使得我们可以将一个到虚拟蜜罐上的服务连接请求转发到一台真实服务器上运行的服务进程。数据包会经过个性引擎处理后再往外部网络发送。个性引擎会修改数据包内容,使数据包看上去和从指定操作系统的网络栈发出的一样乜5|。以下是对各部分的介绍:1.配置数据库配置数据库实际上是一个二进制的配置文件,它包含了蜜罐系统所要模仿的系统、服务与网络拓扑结构以及其它部件行为特性等等。Honeyd通过读取该文件配置来实施蜜罐系统。2.中央包分配器中央包分配器是负责将数据包分配给相应协议处理器的部件。当获取到一个数据包时,中央包分配器首先计算该数据包的长度并进行验证,然后读取配置数据库,查找与数据包的目的地址相对应的配置。如果配置存在则根据数据包传输层的协议类型把该数据包分配给特定的协议处理器,否则就使用一个缺省的配置。3.协议处理器协议处理器是模仿特定服务的部件。协议处理器能响应ICMP、TCP和UDP,这三种协议的数据包。对于ICMP数据包,所有echo请求都以目标不可达的信息响应,不过通过对配置数据库中配置的修改,可以改变ICMP响应的行为。对于TCP数据包,协议处理器会把它们与特定的协议建立连接。当一个数据包到达时,协议处理器会检查是否为已经建立了连接的数据包,如果是,这个数据包会被送给已经开始的服务,否则开始建立一个新的连接。目前,协议处理器可以通过TCP三次握手来建立和响应TCP会话,也可以通过设置FIN或RST标志位来撤消一次会话,但是拥塞窗口管理没有完全实现。对于UDP数据包,协议处理器直接将其传给相应的服务。4.个性引擎个性引擎是Honeyd的一个非常关键的部件,黑客通常会运用象Xprobe或Nmap的指纹识别工具来收集目标系统的信息,为了让虚拟蜜罐在被探测的时候19 虚拟蜜罐和:网络安伞中的应用研究显得象真实主机一样,所以必须让它在被指纹识别的时候不被暴露出来。对于一个特定的操作系统,它的网络协议栈也是特定的。不同的虚拟蜜罐可以被赋予不同的网络协议栈。“个性引擎"个性化虚拟蜜罐的网络栈行为的方法是:在每个发送出去的数据包的协议头中进行适当的修改,使得数据包符合指纹识别软件预期的操作系统的特征。Honeyd利用Nmap指纹库作为TCP和UDP连接个性化的参考,利用Xprode指纹库作为ICMP连接个性化的参考。5.路由部件数据包到达某个虚拟蜜罐所在的地址,会产生三种情况:没有找到目的地址而丢弃数据包;没有找到目的地址,但是可以把数据包交付给下一个路由器;可以直接把数据包交付给目的地址。路由是一个可选择的逻辑部件。Honeyd是通过路由部件来模拟虚拟网络拓扑结构的。通常,虚拟路由拓扑是一个具有根的树。在这种网络结构中,数据包从这个根进入虚拟路由拓扑。树的每一个非终端节点表示一个虚拟路由器,每条边代表一个连接,它包括等待时间和包丢失等特性,而叶子结点对应一个网络。当Honeyd接收到一个数据包时,从根结点开始传输数据包,直到找到拥有该目的IP地址的网络。在传输的过程中,路由部件会计算包丢失和等待时间来决定是否丢弃该数据包,并当数据包传输时每经过一个路由器时,路由部件都对数据包中TTL值做减1操作。当TTL值减为0时,路由部件会发送一个ICMP超时数据包心引。3.4Honeyd的关键技术分析3.4.1指纹匹配技术不同的操作系统的网络栈处理是不一样的,所以它们所发送出去的数据包具有不同的特点,攻击者通常会使用一些像Xprobe、Nmap这样的指纹识别工具来分析接收到的数据包的特点。为了使虚拟蜜罐在被探测的时候表现得跟真实的系统一样,不被攻击者识别出来,Honeyd需要模拟不同操作系统的网络栈行为,要给不同的虚拟蜜罐赋予不同的“个性”。个性引擎个性化虚拟蜜罐网络栈行为的方法是:在每个发送出去的数据包的协议头中引入适当的修改,使数据包符合指纹识别软件预期的操作系统特征,这个过程就是指纹匹配。Honeyd的个性引擎使用了两个著名的网络扫描软件的操作系统指纹数据库来设置操作系统网络协议栈。运用NMAP的指纹数据库作为TCP和UDP行为特征的的参考;用XPROBE指纹数据库作为ICMP行为的参考。 工程硕士学位论文图3.4是Nmap的Windows2003ServerSP2的指纹格式,共有9个不同的指纹格式:FingerPrintWindows2003ServerSP2Tseq(Class=RI%gcd=<8%SI=<11784E&%>2CA4)(澳4试目标如何初始化ISN)T1(DF=Y%W=2017%ACK=S++%Flags=AS%Ops=MNWNNT)(Tl-T7:测试包到达开/闭TCP端口时的反应)T2(Resp=Y%DF=N%W=0%ACK=S%Flags=AR%Ops=)T3(Resp=Y%DF=Y%W=2017%ACK=0%Flags=A%Ops=NNT)T4(DF=N%W=O%ACK=O%Flags=R%Ops-)T5(DF=N%W=0%ACK=S++%Flags=AR%Ops=)T6(DF=N%W=0%ACK=O%Flags=R%Ops=)T7(DF=N%W=0%ACK=S++%Flags=AR%Opsffi)PU(DF--N%TOS=0%IPLEN=38%RIPTL=148%RID=E%RIPCK._E%UCK.-E%ULEN=134%DAT=E)(关闭端口如何产生ICMP响应包)图3.4-indows2003ServerSP2的指纹库Fingerprint符号后的字符串为个性化名字,后面的九行描述九个不同的测试结果。第一个测试显示了该操作系统的网络协议栈是如何创建TCP连接的初始化序列号ISN,其中Class字段指明预测ISN的难度等级,最大公约数gcd和标准偏移Sl选项是产生ISN要使用的变量,IPID和TS分别代表了IP标识号和TCP时间戳。接下来的七行显示了网络协议栈对到达TCP端口(开放或关闭状态)数据包的响应。最后一行显示了UDP端口(关闭状态)的ICMP数据包的响应。在数据包进入网络之前,个性引擎会使用特定网络协议栈来修改数据包的协议头。对于TCP连接,特征引擎会根据特定Nmap指纹库在会话的不同阶段设置不同的TCP标志位。当有新的连接请求时,个性引擎会根据指纹库中的最大公约数gcd和标准偏移计算这次连接的ISN号。滑动窗口在不同的环境下表现出来的大小同样也会成为攻击者进行识别的一部分。当Honeyd为一个新建的连接发送一个数据包时,它会根据指纹库来设置传输窗口的大小,在一个连接建立好以后,Honeyd框架将根据缓冲区中数据的多少调整窗口的大小,并记录每个蜜罐系统最后一个ISN号及相应的产生时间,以使产生出来的ISN号和指纹库中的ISN困难等级一致。对IP数据包,特征引擎只对产生的IP标识号进行适当的调整。对于ICMP数据包,目前只有目标地址或者端口不可达的数据包特征引21 虚拟蜜罐谯网络安伞中的应用研究擎才改变协议的头部:首先从Xprobe的脚本库耿得与蜜罐系统相对应的指纹,然后根据该脚印中PU测试选项确定如何对数据包头部进行修改。3.4.2虚拟蜜罐网络技术Honeyd是通过路由部件实现虚拟网络拓扑结构。Honeyd可以模拟不同品牌和类型的路由器,也可以模拟网络连接的时延和丢包现象。当我们用traceroute等工具进行网络隐射时,网络流会表现得与配置的路由器和网络结构一致。Honeyd能够模拟随机的网络拓扑结构。通常,虚拟路由拓扑是一个具有根的树。在这种网络结构中,数据包从这个根进入虚拟路由拓扑。树的每一个非终端节点表示一个虚拟路由器,每条边代表一个连接,它包括等待时间和包丢失等特性,而叶子结点对应一个网络。当Honeyd接收到一个数据包时,从根结点开始传输数据包,直到找到拥有该目的IP地址的网络。在传输的过程中,路由部件会计算包丢失和等待时间来决定是否丢弃该数据包,并当数据包传输时每经过一个路由器时,路由部件都对数据包中存活时间域TTL的值做减1操作。当TTL值减为0时,路由部件会发送一个ICMP超时数据包。Honeyd可以把真正的系统与虚拟的路由拓扑结合起来,当Honeyd接收到一个给真实系统的包时,包遍历整个拓扑直到找到一个虚拟路由器能把这个数据包交付到主机所在的网络。Honeyd在需要时发出一个arp请求来得到系统的硬件地址,然后将该数据包封装在一个以太网帧里发送给该地址。同样,当真正的系统发出ARP请求时,该结构以相应的虚拟路由器的ARP回复来响应。3.5Honeyd在网络安全中的典型应用3.5.1产生入侵检测可以利用Honeyd为入侵检测系统产生入侵规则。Honeycomb是英国剑桥大学开发的Honeyd插件。Honeycomb可以自动地为入侵检测系统Snort产生检测特征。Honeycomb会记录进出的数据包,并对这些数据包进行入侵模式抽取,然后把这些模式和snort的模式库进行比较。如果模式库中没有相似的入侵模式存在,Honeycomb会自动创建一个新的模式。如果模式库中有类似的模式存在,Honeycomb会更新这个模式。所以Honeycomb能帮助Snoa及时地发现新攻击,对于已有其模式的攻击,Honeycomb能将其新的变种反应到Snort的模式中心71。3.5.2网络诱骗可以用honeyd虚拟出大量虚拟蜜罐,将其与工作网络中的未分配地址绑定。这样可以迷惑攻击者,攻击者可能会耗费大量时间尝试刺探和研究这些虚拟蜜 T程硕十学位论文罐,这样可以延缓其对工作网络的扫描和攻击,降低攻击者选择一台重要电脑作为目标的几率。3.5.3垃圾邮件过滤可以利用Honcyd自动对新垃圾邮件做出辩别,然后提交给一起合作的垃圾过滤器。垃圾邮件发送者主要是使用开放代理服务器和邮件转发代理来发送垃圾邮件。发送者通过使用开放代理服务器来隐藏自己的IP地址,从而防止自己被追踪来源。邮件转发代理可以接受任何第三方的邮件,并转发非本地用户的邮件。所以,垃圾邮件发送者可以几乎无限制地通过邮件转发代理发送垃圾邮件。Honeyd可以用来有效地过滤垃圾邮件。NielsProvos利用Honeyd设计了一个过滤垃圾邮件的框架。在这个框架中NielsProvos使用一台主机虚拟一个C类网络。并在该网络中,随机地配置了运行开放代理服务器和邮件转发代理的蜜罐系统。当垃圾邮件发送者企图通过开放代理服务器和邮件转发代理发送邮件时,这些邮件会自动被转发给垃圾邮件陷阱。垃圾邮件陷阱则将垃圾邮件转发给合作的邮件过滤器。与此同时,垃圾邮件的发送者被记录于垃圾邮件陷阱同志文件[28】3.6本章小结:二.丌放的邮件中继和邮什代理一:一⋯⋯■●⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一图3.5用Honeyd过滤垃圾邮件本章介绍了honeyd相对于其它蜜罐软件的优势,对honeyd的逻辑框架结构进行了深入分析,并研究了如何让honeyd在网络中正确的进行数据收集。对honeyd的关键技术:指纹匹配、虚拟蜜罐网络技术进行了深入的研究和分析。最后介绍了honeyd在网络安全中的典型应用。23绪~网、一,:4趸二靴网 虚拟蜜罐相:刚络安令中的心用研究第4章虚拟蜜罐在网络安全中的应用研究4.1虚拟蜜罐的部署位置分析虚拟蜜罐可以基于部署者的需要放置在网络中的任何地方,通常部署在如图4.1所示的这三个位置中。要使虚拟蜜罐系统能达到预期的效果,在设计系统时必须根据实际需要来部署它的位置。DMZVirtua图4.1虚拟蜜罐的部署位置如果目标是研究每天有多少针对局域网的攻击企图,那么适合将虚拟蜜罐放置在防火墙之外(图4.1中的蜜罐A)。这样能检测对系统漏洞的所有攻击行为,并且防火墙之后的系统被攻陷的可能性也降低了。虚拟蜜罐会吸引大量的端口扫描或攻击,一天之内可能会被攻击上百次,但这些攻击不会被防火墙记录,内部入侵检测系统也不会产生报警信号。蜜罐放置在防火墙之外的优点是防火墙、入侵检测系统不需要作任何调整照样能监视外部的网络,而且这样部署的蜜罐不会给内部网络引入新的危险。其缺点是不能诱捕内部网络攻击者。虚拟蜜罐也可以部署在组织安全防线以内的DMZ(图4.1中的蜜罐B),目标足检测或者响应高风险网络上的攻击或者未授权活动。把虚拟蜜罐放置在DMZ区域的各种服务器之中,使其工作状态类似于网络内的其他系统(如Web服务器),当攻击者顺序扫描和攻击各服务器时,蜜罐叮以检测到攻击行为,并通过与攻击者的交互响应取证其攻击行为。因为出入虚拟蜜罐的活动流量均为可疑的未授权行为,所以通过它可以捕获到高价值的非法活动。虚拟蜜罐部署在这个位置呵以欺骗那些成功穿越防火墙的攻击者,并能迷惑攻击者,浪费攻击者的时『白J和资源。24 T程硕.L学位论文还可以把虚拟蜜罐部署在内部网络(图4.1中的蜜罐C),因为根据统计有80%的攻击是来自组织内部的。这样部署的较前者的优点是它可以探测出来自内部的攻击。将虚拟蜜罐放置于防火墙之内,如要允许来自互联网的访问,就要调整防火墙规则。防火墙可以控制网络的流量、进入和外出的连接,因此这种部署方式,使外部网络对蜜罐的危害减少。并且这种部署方式可以转移攻击者对内部网络的攻击流量。4.2虚拟蜜罐在网络安全中的作用用honeyd构建的虚拟蜜罐系统在网络安全中主要可以起到以下作用:4.2.1阻止和转移攻击在网络中部署大量虚拟蜜罐能够混浠黑客攻击的目标,转移攻击流量,有效的降低甚至停止多种类型的自动攻击。例如,可以降低如蠕虫类型的TCP自动攻击,可以转接DDOS攻击等。对于人为的攻击行为,虚拟蜜罐也可以从心理上给攻击者的攻击造成障碍,因为如果攻击者知道组织中部署了虚拟蜜罐,他们可能会被吓跑,因为他们不希望被检测到或者不想在攻击大量虚拟蜜罐上浪费时间。4.2.2检测攻击由于虚拟蜜罐没有任何的产品型功能,也没有任何授权的、合法的访问,因而任何时间,来自任何地方对虚拟蜜罐的任何访问都有可能是非法的可疑行为,因此能够用它对未授权活动进行检测。虚拟蜜罐的工作方式同NIDS等其他的传统检测技术刚好相反,它能很好的解决NIDS的误报和漏报的缺点。我们将两者做个比较,来了解把虚拟蜜罐应用到网络安全中的优点:(1)较小的数据量:虚拟蜜罐仅仅收集那些对它进行访问的数据。同样的条.件下,NIDS可能会记录成千上万的报警信息,而虚拟蜜罐却只有几百条。这就使得虚拟蜜罐收集信息更容易,分析起来也更为方便。(2)减少误报率:虚拟蜜罐能显著的减少误报率。任何对虚拟蜜罐的访问都是未授权的、非法的,这样虚拟蜜罐检测攻击就非常有效。这样就大大减少了错误的报警信息,甚至可以避免。(3)捕获漏报:虚拟蜜罐可以很容易的鉴别捕获针对他的新的攻击行为。针对虚拟蜜罐的任何操作都不是正常的,这样就使得任何新的以前没有见过的攻击很容易暴露。(4)资源最小化:虚拟蜜罐需要的资源很少,即使工作在一个大型网络环境中,一个简单的Pentium主机就可以模拟具有多个IP地址的C类网络。 虚拟蜜罐在网络安伞中的应用研究4.3虚拟蜜罐的配置分析在虚拟蜜罐框架软件Honeyd中,通过配置模板(tempiate)来配置虚拟的蜜罐。创建的配置文件是一个文本文件,文件中包含所有虚拟蜜罐以及虚拟蜜网拓扑的配置。通过配置文件具体设计要建立什么类型的操作系统,什么类型的服务正在哪个端口监听,对于关闭的端口它应该如何响应,以及模拟服务的行为方式等。每个模板都有自己的名字,可以根据设计的系统的需要建立任意数量的模板。然后可以把IP地址或者系统应用到所希望的任何模板上。创建新模板用create命令,用set命令把从Nmap指纹文件中得到的个性分配给模板,并设置系统支持的网络’协议的缺省行为,用add命令来指定服务,最后用bind命令为所配置的系统指定一个IP地址。set命令主要有两个作用:一是把从Nmap指纹文件中得到的个性分配给模板,该指纹确定了网络协议栈的行为,用来模仿特定的系统。二是为该系统支持的网络协议选择缺省的动作,如block,reset或open。open一指定协议的所有端口都开放。reset一指定关闭该协议的所有端口。对TCP连接,Honeyd会发送一条TCPreset(RST)消息,而对于UDP连接会发送ICMP不可达消息。block一指定丢弃所有发往该协议的数据包。add命令用于指定服务并把服务脚本绑定到某个端口(在指定服务时,必须指定模板、协议、端口和实现该服务的程序)。还可以使用proxy来和另外一远程主机建立连接,并允许通过采用变量设定远程主机的IP地址和端口。这样就可以实时地根据网络连接来改变远程主机。例如,它可以把对蜜罐系统的扫描重定向到攻击主机上。bind命令用来给所配置的系统指定一个IP地址:没有用bind命令指定的IP地址空间将自动绑定缺省的模板。可以建立一个default模板,它不和任何IP地址绑定,当运行Honeydhoneypot来监听一个网络时,默认模板会应用到该网络中所有未分配的IP地址接收的连接上。下面是一个缺省模板完整的配置范例:createdefault撑创建缺省模板setdefaultpersonality“FreeBSD2.2.1.STABLE”撑设置该模板的Nmap指纹setdefaulttcpactionreset≠≠设置缺省的TCP动作setdefaultudpactionreset弹设置缺省的UDP动作adddefaulttcpport80“sh/etc/honeyd/scripts/apache·web.sh”撑设置系统监听到80端121,并且调用脚本“sh/etc/honeyd/scripts/apache.web.sh” 工程硕+学位论文撑处理对该端口的访问adddefaulttcpport22“sh/etc/honeyd/scripts/test.sh”adddefaulttcpport13open拌打开tcpl13端134.4虚拟陷阱网络系统的设计与测试4.4.1设计思想本设计方案中用Honeyd搭建了一个虚拟陷阱网络,如图4.2所示。通过对honeyd模板的配置,以及与未使用IP地址的绑定,模拟出大量虚拟主机。为了使honeyd虚拟的蜜罐能接收到它们的数据包,本方案还使用了arp守护进程arpd。Arpd可以响应对虚拟IP地址的ARP请求,以确保虚拟蜜罐的数据包能够被honeyd主机的网络接口卡所接收。为防止该虚拟蜜罐系统被攻陷后成为攻击局域网中其它主机的跳板,本系统引入了防火墙IPTables来严格监控该系统。图4.2虚拟陷阱网络结构模型为了不被攻击者识别出是蜜罐系统,表现得更象真实主机,本方案在对honeyd模板的配置中,通过调用脚本使该虚拟蜜罐系统能对攻击者发出的请求做出智能的应答,从而捕获更多的攻击信息。并通过设置模板的Nmap指纹给不同的虚拟蜜罐赋予不同的网络栈行为,使当攻击者用指纹识别工具探测识别时,虚拟蜜罐表现得跟真实系统一样。本系统还通过配置模板,模拟出不同品牌和类型的路由器,并模拟出网络连接的时延和丢包现象。本方案对虚拟陷阱网络还进行了改进,让其在接受攻击者的某些攻击的时候能把攻击重定向到攻击者自身。要实现这个方案可以在配置模板的时候增加代27 虚拟蜜罐n:网络安全中的戊用研究理。如,可以在配置windows模板的时候增加这样一条语句:addwindowstcpport22proxy$ipsrc:22$ipsrc是用来记录攻击者源IP地址的变量,这样通过代理将honeyd接收到的来自攻击者的连接重定向返回到攻击者本身。攻击者通常还会用nmap之类的程序远程确定系统正常运行和在线的时间。因此我们在对honeyd进行配置时,为了起到更好的诱骗效果,在模板的最后增加一条命令:setwindowsupdate256330这条命令把正常运行时间欺骗成256330秒。基于以上方案设计的这个系统放入被保护网络中,能起到诱骗攻击者,混浠黑客攻击目标,转移攻击流量,捕获攻击的作用。本文将该系统在学校局域网中进行实现和测试。用2台物理主机来模拟和测试这个设计的虚拟陷阱网络:主机A作为配置实现虚拟陷阱网络的物理主机,它拥有一个真实的IP地址,主机B作为攻击主机。主机A上运行操作系统LinuxRedHat9.0,在其上安装Honeyd的三个函数支持库:Libevent、Libdnet、Libpcap,然后安装Arpd。Arpd是个arpspoof工具,本文用其来检测指定范围内的未使用的IP地址,并通过其对指定范围内未使用的IP用honeyd主机的MAC地址做出arp应答。以上组件安装好后,再安装晟新版本的虚拟蜜罐框架软件Honeyd1.5c,模拟实验会通过它来模拟运行着不同操作系统的虚拟陷阱系统并模拟虚拟的网络拓扑结构。本文在后面的文字中会做相关介绍。4.4.2IPTables本文使用IPTables作为蜜罐系统的防火墙。IPTables是Linux自带的开放源代码的防火墙,RedHatLinux版本7.1或更高版本自身的标准安装中已经包含了此工具。一IPTables在本系统中可以充当两个角色如图4.3,一是对流经本系统的数据流量做记录,进行数据捕获;二是对该系统发出的对外连接作限制,严格的监控该系统,降低整个系统的风险,防止攻击者攻陷该系统后以其为攻击源向其他主机发起IP欺骗、Dos、ICMP攻击、SYN、SMURF等攻击。本文通过对IPTables的以下设置来限制该系统的对外连接数:SCALE=”hour"#记时单位,也可以是秒,分,天,等TCPRATE=”10"#每记时单位中允许的TCP连接数UDPRATE=”15"#每记时单位中允许的UDP连接数ICMPRATE="40"#每记时单位中允许的ICMP连接数OTHERRATE=”15"#每记时单位中允许的IP协议连接数28 T程硕十学位论文以上脚本设置了每小时允许的TCP、UDP、ICMP或其他的任意IP包的外出连接数,使攻击者具有一定的外发数据包的能力,但是不给其全部外出连接的权限,当外出连接数达到指定的数值时,自动切断所有对外的连接,将可能存在的网络风险降低。图4.3系统基本处理流程4.4.3建立honeyd配置文件本虚拟陷阱网络通过honeyd来模拟虚拟蜜罐。通过创建honeyd.eonfig文件,来配置模板。本文设置的每个蜜罐系统配置都是一个模板,每个模板都是由一系列的命令集合而成,这些命令参数集由一个模板名来标识。本文在这配置文件中,创建了一个缺省的主机模板,那些没有在其它模板里定义的数据包就由该缺省模板来处理,一个Windows操作系统模板以及一个XP操作系统模板。本文还创建了一个路由器模板,可以通过telnet进行访问。群撑jfl}创建缺省模板createdefaultsetdefaultpersonality“linux2.2.12—2.2.19”撑设置这个模板的Nmap指纹setdefaulttcpactionreset撑设置缺省的tcp动作setdefaultudpactionreset撑设置缺省的udp动作adddefaulttcpport23”sh./scripts/telnet.sh’’群设置系统监听23端121,并且调用脚本“sh./scripts/telnet.sh”处理对该端121的撑访问,模拟telnet服务adddefaulttcpport22open群打丌tcp22端口adddefaulttcpport21”sh./scripts/ftp.sh"’群设置系统监听2l端口,并且调用脚本“sh./scripts/tip.sh”处理对该端口的访撑问,模拟ftp服务 虚拟蜜罐4:网络安全中的心用研究setdefaultuptime212331j|j}设置该linux系统启动的时间撑群挣创建一个windows操作系统模板createwindowssetwindowspersonality“MicrosoftWindows2003ServerSP2’’群设置这个模板的Nmap指纹setwindowsdefalulttcpactionreset撑设置缺省的tcp动作setwindowsdefaultudpactionresetjfj}设置缺省的udp动作addwindowstcpport22proxy$ipsrc:22群将接收到的来自攻击者的连接重定向返回到攻击者本身addwindowstcpport80“perl/scripts/iis一6/main.pl’’j[≠设置系统监听80端口,并且调用脚本“perl/scripts/iis.6/main.pl”j|i6处理对该端口的访问,模拟IIS服务addwindowstcpport25block撑丢弃发往该端口的包addwindowsudpport139block撑丢弃发往该端口的包setdefaultuptime212311稃群群创建一个XP操作系统模板createxpsetxppersonality“WindowsXPPro”撑设置这个模板的Nmap指纹setxpdefaulttcpactionresetj|≠设置缺省的tcp动作setxpdefaultudpactionreset群设置缺省的udp动作addxptcpport21"sh/scripts/winxp/msftp.sh”祥设置系统监听21端口,并且调用脚本“sh/scripts/winxp/msftp.sh’’jfj}处理对该端口的访问,模拟ftp服务.addxptcpport25”sh/scripts/winxp/exchange—smtp.sh”addxptcpportl10"sh/scripts/winxp/exchange—pop3.sh”setdefaultuptime21253l撑创建路由器系统模板createroutersetrouterpersonality“Cisco7206runningIOS11.1(24)”setrouterdefaulttcpactionresetj|l}设置缺省的tcp动作setrouterdefaultudpactionreset挣设置缺省的udp动作addroutertcpport23”perl./scripts/router-telnet.pl’’jfj}调用脚本scripts/router—telnet.pl处理对该端口的访问,模拟telnet服务30 T程硕十学位论文setrouteruptime23256104.4.4路由拓扑模拟本系统用以上配置的模板同校园网中未使用IP绑定虚拟出如图4.4所示的虚拟陷阱网络。Honeyd主机对应的IP地址为172.20.4.1。该系统通过我们安装的Arpd响应对虚拟IP地址的ARP请求,以确保虚拟主机的数据包能够被Honeyd主机的网络接口卡所接收,对这些虚拟IP地址的访问做回应。该系统虚拟了3个C类局域网,分别是172.25.1.0/24,172.25.2.0/24和172.25.3.0/24。还虚拟了3个路由器:Rl、R2、R3。路由器R1是整个虚拟网络的入口点,它连接着172.25.1.0/24网络。路由器R2连接到172.25.2.0/24网络,而路由器R3连接到172.25.3.0/24网络。本文创建的虚拟网络结构如下图:虚拟局域网172.25.1.0/24172.25.2.1172.25.2.2虚拟局域网l72.25.2.0/24图4.4虚拟网络的拓扑结构≠≠绑定主机和路由器到未使用的IP地址Bind172.25.1.1windowsBind172.25.1.2xpBind172.25.2.1xpBind172.25.2.2windowsBind172.25.3.10xpBind172.25.3.11windows31 虚拟蜜罐在刚络安全中的心用研究Bindl72.20.O.101routerBindl72.20.0.102routerBind172.20.O.103router撑虚拟路由Routeentry172.20.0.101network172.0.0.0/8撑指明进入虚拟网络的入口Route172.20.0.101link172.25.1.0/24jf|}指明经由网关能直达的网络#routeaddnet增加新网关到达新的子网撑设定路由器的时间延迟(1atency)包损失比(10ss)连接带宽(bandwidth)Route172.20.0.101addnet172.25.2.0/24172.20.0.102latency50msloss0.1bandwidthlmbpsRoutel72.20.O.102linkl72.25.2.0/24Route172.20.0.102addnet172.25.3.0/24172.20.0.103latency50msloss0.1bandwidthlmbpsRoutel72.20.0.103linkl72.25.3.0/24g.g.5对虚拟陷阱网络系统进行测试1.在攻击机上测试网络拓扑在攻击机上用Traceroute测试honeyd能否有效地虚拟图4.4所示的网络。Traceroute通过发送小的数据包到目的设备直到其返回,来测量其需要多长时间。一条路径上的每个设备Traceroute要测3次,输出结果中包括每次测试的时间(ms)和设备的名称(如有的话)及其lP地址。在攻击机上运行traceroute对虚拟主机172.25.3.10进行网络拓扑结构测试。结果如图4.5所示:从结果上可以看出从攻击机到l72.25.3.10,经由了3个路由器172.20.0.10i、172.20.O.102、172.20.O.103。测试结果表明Honeyd能够有效地虚拟所配置的局域网图4.5Traceroute测试结果32 T程硕}:学位论文2.在攻击机上测试指纹数据攻击者通常用网络勘察工具Nmap来探测攻击对象。Nmap的主要功能有三个,一是探测主机是否在线;其次是扫描主机端口,嗅探所提供的网络服务;还可以推断主机所用的操作系统。本文在攻击机上执行Nmap,针对虚拟蜜罐172.25.3.10进行SYN半开扫描,验证其能否成功欺骗攻击者。图4.6Nmap测试结果结果显示172.25.3.10上运行的操作系统可能是WindowsXPPro,并开放了3个TCP端13,21端口、25端口、111端口。从Honeyd配置文件honeyd.conf中可以看出,该IP地址是被绑定在这样一个模拟虚拟蜜罐样本上。以上测试结果表明该虚拟蜜罐的服务模仿能力很强,对指纹也有很好的处理效果,能够成功虚拟出所配置的操作系统,可以达到欺骗指纹识别工具Nmap扫描的目的。这个用honeyd搭建起来的蜜罐系统大大降低了指纹识别的风险。通过以上两个模拟测试可以看到该系统能够成功的模拟出虚拟网络,能够欺骗攻击者的指纹识别工具的扫描。把该系统部署到需保护的局域网中,扩大了地址空间,让敌人在扫描攻击虚拟蜜罐的时候浪费掉攻击时间,延缓对局域网中真实主机的攻击,起到保护真实主机的作用。并且网络管理员可以通过对蜜罐日志的分析,回放整个攻击的全过程,了解攻击者使用的手段,以更好的部署和检测防御系统,来抵制类似的攻击的发生。在下面一小节中本文针对用honeyd搭建的虚拟陷阱网络的所提供的日志服务的缺陷提出了~种改进方案。33 虚拟蜜罐在嘲络安全中的应用研究4.5对虚拟蜜罐系统的改进4.5.1虚拟蜜罐日志功能的缺陷虚拟蜜罐的R志是记录攻击者信息的重要资料。管理员通过对蜜罐同志的分析,回放整个攻击的全过程,了解攻击者使用的手段。但蜜罐主机极易被攻击者入侵,攻击者攻破后通常会对系统日志进行修改或删除,因此,只把这些数据存放在蜜罐主机上是非常危险的。可以在系统中增加一台安全性高、不提供任何服务的主机作为同志服务器用于远程备份虚拟蜜罐捕捉的数据,采用远程日志系统来保障数据存储的安全。但用honeyd搭建的虚拟蜜罐系统存在这样一个缺陷,honeyd产生的日志是存储在本地计算机上的,其自身不能进行日志的异地存储。4.5.2Honeyd日志转移方案的设计本文用来搭建虚拟蜜罐系统的honeyd是装在运行着LinuxRedHat9.0操作系统的真实主机上。LinuxRedHat9.0下的syslog功能强大,syslog能够发送、记录系统内核及工具所产生的信息。syslog由sysl090调用、syslogd守护进程和配置文件/etc/syslog.eonf组成。当系统内核及工具产生信息时,通过调用syslog(),可以把信息送往syslogd,syslogd再根据/etc/syslog.eonf中的配置要求,将这些信息分别作如下处理:(1)记录到系统日志中;(2)输出到系统控制台上;(3)转发给指定的用户;(4)通过网络转发给其它主机上的syslogd。可以通过对syslog.conf文件的配置,灵活地对日志信息的发送和保存进行控制。本文基于以上特点,提出了用sysl090改写honeyd源程序代码来完成虚拟蜜罐日志转移的方案。我们可以搭建一个如图4.7所示的系统模型来实现这个过程。 工程硕士学位论文Internet内部网络VirtualhoneypotLinuxSyslogServer图4.7日志转移系统模型在虚拟陷阱网络中,增加一台Linux日志服务器。为了能将用虚拟蜜罐收集到的日志信息转移到日志服务器,要对honeyd主机和Linux日志服务器分别做如下修改:1.对honeyd主机的配置修改honeyd源代码中的log.c中的函数,让sysl090替换掉log.c中所有的日志输出的地方,使其日志信息输出到syslogd。log.c中包含了honeyd_log_probeO、honeyd—log_flownewO、honeyd—log_flowend():这_3个函数,本文对这3个函数中把日志信息写入到日志文件中的语句进行修改。honeyd—log_probeO是一个用来增加新的日志信息的函数,以下是其把日志信息写入到日志文件中的语句:fprintf(fp,”%s%s一%s:%d%as%s\Ln”,honeyd—logtimeO,honeyd—logproto(proto),honeyd_logtuple(hdr),size,proto==IP—PROTO—TCP?honeyd—logtcpnags(nags):””,honeyd—log—comment(proto,hdr,comment));我们对它做修改,用sysl090进行替换:syslog(LOG_WARNING,%s一%s:%d%s%s”,honeyd_logproto(proto),honeyd—logtuple(hdr),size,prot02=IP—PROTO—TCP?honeyd—logtcpnags(nags):””,honeyd—log—comment(proto,hdr,comment));35 虚拟蜜罐在刚络安全中的应用研究honeydlogflownewO、honeydlogflowendO中也是通过fprintfO进行日志一——一一信息输出,可以用类似的方法用syslogO进行替换,替换结果分别如下:撑对honeyd—log—flownew()f向替换syslog(fp,”%s%sS%s%s\n”,protoname,tuple,honeyd—log_comment(proto,hdr,NULL))jfj}对honeyd—log—flownew()的替换syslog(fp,”%s%sE%s:%d%d\n",protoname,tuple,hdr->received,hdr一>sent)通过以上替换,honeyd产生的日志信息被送往syslogd。最后通过对syslog.conf的修改,来实现将本地的日志信息转存备份到日志服务器上。在/etc/syslog.conf文件中加入以下语句实现此功能:木.info@A撑A为Linux日志服务器地址2.对Linux日志服务器的配置(1)在/var/log目录下新建honeyd.109文件,用来保存从honeyd主机传来的日志文件。(2)修改/etc/syslog.conf加入以下语句:木.info/var/log/honeyd.109#这样所有的log信息都写入到/var/109/honeyd.109文件里面了(3)再编辑/etc/sysconfig/syslog,使日志服务器可以接收远端设备的log日志消息将SYSLOGD—OPTIONS=”一m0”修改为SYSLOGD—OPTIONS=”一r—m0”(4)重启syslog服务,使新的配置生效。配置成功则两机都在udp514端口监听。通过以上的配置和修改,能使honeyd的日志信息备份到部署的Linux日志服务器上。这样保障了日志信息的安全。4.6本章小结本章分析了虚拟蜜罐在网络安全中的作用及在网络中可以部署的位置。详细研究了对虚拟蜜罐的配置。设计了一个虚拟陷阱网络系统,该系统用honeyd来模拟虚拟蜜罐,通过防火墙IPTables来严格监控该系统。并将该系统放入局域网 T程硕十学位论文中进行了测试,验证了该虚拟陷阱网络系统可以成功的诱骗攻击者,转移攻击流量。并针对honeyd的日志功能缺陷,提出了一种转移备份日志数据的方案,使黑客的行为被保存到安全的地方。37 虚拟蜜罐扯网络安令中的应用研究第5章基于虚拟蜜罐的蠕虫对抗实验研究5.1蠕虫简介5.1.1蠕虫技术分析蠕虫是一种能够在网络中自动传播的程序,它严重影响到了网络安全。与病毒相比,它可以不依附于其他的正常程序而独立的存在。它会扫描和攻击网络上存在系统漏洞的主机,通过网络从一个节点传到另一个节点。如图5.1所示,通常蠕虫传播时会随机选取一段IP地址,然后对这一段地址上的主机进行扫描,当发现扫描对象为存在系统漏洞的主机时就进行攻击。当一台计算机被蠕虫感染后可以会选择几百个目标进一步传播,而这些进一步被感染的计算机会以这种方式感染更多的计算机。所以蠕虫可以在很短的时间内蔓延整个网络,造成网络拥塞甚至瘫痪,给网络安全带来极大的困扰乜引。是l攻击、感染及其他行为图5.1蠕虫传播流程图蠕虫程序通常包括传播、隐藏和目的功能这样三个模块。这三个模块的作用38 工程硕士学位论文如下:(1)传播模块:负责蠕虫病毒的传播。(2)隐藏模块:侵入主机后,隐藏蠕虫病毒程序,防止被用户发现。(3)目的功能模块:实现对计算机的控制,监视或破坏等功能。传播模块是最重要的一个模块。传播模块可以分为三个主要的过程∞引:(1)扫描和感染:探测扫描大量主机,找可以利用的系统漏洞,然后入侵到一个目标主机当中。(2)攻击:攻击模块自动攻击扫描找到的对象,取得这个主机的权限,获得一个shell。(3)传播:利用被感染主机作为跳板,继续扫描和攻击其它主机。5.1.2常用的蠕虫对抗方法目前国内的网络安全领域几乎没有专门的蠕虫检测和防御系统,通常使用防火墙、入侵检测系统、防病毒软件来对抗蠕虫的攻击。这些工具在抑制蠕虫攻击的时候都存在着一些缺陷。防火墙必须通过对已知类型的蠕虫进行正确配置才能防御蠕虫,因此为了能识别不断出现的新的蠕虫必须不断更新防火墙的知识库。入侵检测系统通常是基于特征来检测蠕虫,为了避免漏报也需要不断更新知识库才能识别新的蠕虫攻击,虽然IDS提供了异常检测功能,可以发现网络中的异常行为,但通常会出现大量误报,也不能很好的抑制蠕虫的传染。防病毒软件也只能检测到已知其特征的蠕虫,不能对未知的蠕虫进行检测。因此从本质上说,防火墙、入侵检测系统和防病毒软件都是被动的防御措施都滞后于各类蠕虫的攻击。因此需要引入一种新的主动的蠕虫对抗方法。5.1.3蠕虫的传播模型分析本文通过分析蠕虫传播模型SIR模型,来构思一种新的蠕虫对抗方法。SIR模型把网络中的主机分为.三种状态:易感染主机(Susceptiblemachine),被感染主机(infectedmachine)和免疫主机(recoveredmachine)。在SIR模型中,如果易感染主机被感染,就变成了被感染主机,如果被感染主机被修复,就进入了免疫状态,处于免疫状态的主机不会被再次感染阳¨。以下是SIR模型的微分方程表达式:ds石2一Bi(t)s(t)(5·1)dij=Bi(t)S(t)一Yi(t)(5.2)“fdri=Yi(t)(5.3)39 虚拟蜜罐在网络安全中的心用研究在时刻t,i(t)表示被感染的主机数,S(t)表示易感染的主机数,r(t)表示免疫的主机数。13表示感染率,Y表示主机从被感染的机器中免疫的恢复率。这种模型的最终结果是希望网络中的所有主机都免疫。本文把新的网络安全技术蜜罐技术引入到对抗蠕虫中,蜜罐这种主动防御技术可以弥补传统的蠕虫对抗技术的缺陷。但如果在被保护的网络中部署的是大量物理蜜罐,那么成本太高,实际采用这种方案不现实。而如果只部署几个物理蜜罐,那么被蠕虫攻击到的概率又太小。通过分析蠕虫的SIR传播模型,结合虚拟蜜罐的优势,本文提出一种用Honeyd模拟出大量易感染的虚拟主机,来转移蠕虫的攻击流量,当主机被蠕虫感染后,修补其系统漏洞,使其成为免疫主机,最终达到网络中蠕虫消亡来保护网络安全的方案。5.2用Honeyd对抗蠕虫的原理与过程5.2.1方案原理蜜罐是一种主动防御技术,可以尝试把它用在对抗蠕虫上。通过分析蠕虫传播方法和其传播模型,了解到蜜罐被蠕虫探测的概率主要取决于以下因数:已感染主机的数量、蠕虫传播的概率和易被感染的主机的数量。蠕虫传播的概率取决于蠕虫传播的算法、易感染的主机的数量和地址空间的大小。因此,蜜罐受到扫描刺探的可能性从一定程度上取决于部署的蜜罐数量。蜜罐部署得越多,蜜罐之一就越容易收到蠕虫病毒的刺探,这样对网络中有价值主机的保护效果就越好[32】O虚拟蜜罐是一种诱测随机扫描的理想工具,因为虚拟蜜罐可以很方便的伪装出大量真实主机,并且可以通过设置开放很多对攻击者极具诱惑力的系统漏洞和脆弱的服务,来到吸引攻击者攻击。因此用虚拟蜜罐来对付通过随机扫描来寻找攻击目标的网络蠕虫会特别有效,如Blaster,codered,Nimda,Slammer等等。本文基于以上分析以及honeyd的特点提出了用honeyd模拟大量虚拟蜜罐来对抗蠕虫保护网络安全的方案。本方案用Honeyd在一台物理主机上虚拟出大量蜜罐,通过配置让这些虚拟蜜罐具有能引诱蠕虫攻击的Windows系统漏洞,并且把这些虚拟蜜罐与局域网中未使用的IP地址绑定。把这样的一个虚拟蜜罐系统部署到局域网中能转移蠕虫对有价值的真实主机的攻击并能捕获蠕虫病毒样本。这种用Honeyd搭建的对抗蠕虫的系统耗费资源少,配置简单,要恢复也非常容易。这种方案可以弥补防火墙、入侵检测系统和防病毒软件在对抗蠕虫上的不足。 工程硕上学位论文5.2.2方案实现过程我们可以通过以下的几步如图5.2,来实现用虚拟蜜罐对抗蠕虫的过程:/,、\(开始)’\~//1r捕获蠕虫副本,研究蠕虫特征上转移攻击流量,保护网络安全上修补已感染主机漏洞,使其免疫1r/,、\(结束)\\//图5.2基于honeyd的蠕虫对抗流程1.捕获蠕虫副本,研究蠕虫特征通过对honeyd配置文件的配置,以及与未使用IP的绑定,模拟出大量具有windows漏洞的虚拟蜜罐,来引诱蠕虫攻击捕获蠕虫副本。通过脚本的编写与调用,使虚拟蜜罐能提供某些蠕虫感兴趣的网络服务,以达到进一步欺骗与交互的目的。通过对蜜罐同志的分析,回放整个攻击的过程,了解攻击蠕虫的特征。2.转移攻击流量,保护网络安全蠕虫攻击的时候是任意的选取一段IP进行扫描,当某些主机感染了蠕虫病毒后,它将继续扫描探测网络中的其它易感染主机,进行进一步的攻击。本方案用Honeyd可以低成本的虚拟出成千上万的漏洞主机并与未使用IP绑定,当蠕虫对其进行探测攻击以及进一步交互时,会浪费掉蠕虫攻击的时间,转移攻击流量,起到保护网络中有价值主机的作用。3.修补已感染主机漏洞,使其免疫假设局域网中的主机I感染了蠕虫病毒,J下准备将蠕虫传播到主机II。由于蠕虫攻击主机I时所利用的系统漏洞依旧存在,如果主机II是部署的虚拟蜜罐,可以通过相应的配置使主机II能利用此漏洞对主机I发起反攻。主机II可以利用41 虚拟蜜罐柚:网络安全中的心用研究主机I上的该漏洞,反攻进入已感染主机,副本,修补其系统漏洞,杜绝其再次感染,5.3模拟实验控制已感染主机,清除其上的蠕虫从源头上阻断蠕虫的传播。本文做了一个用honeyd模拟虚拟蜜罐系统来对抗冲击波蠕虫的模拟实验来验证能把虚拟蜜罐用在对抗蠕虫上。冲击波蠕虫∞31的特点是会随机扫描攻击打开了135端口的Windows漏洞主机。可以根据冲击波蠕虫的特点在honeyd里配置具有这些特征的模板,让冲击波相信虚拟蜜罐是开放着TCPl35端口的Windows漏洞主机,而且还提供RPCDCOM服务。通过这种配置,冲击波蠕虫会被伪造的信息欺骗,对部署的虚拟蜜罐进行攻击,达到转移攻击流量拖延时间的目的∞引。以下是我们配置的模板:createdefaultcreatedefaultsetdefaultpersonality”WindowsXPPro"adddefaulttcpport135openadddefaulttcpport4444”/bin/shscripts/WormCatcher.sh$ipsrc$ipdst”setdefaulttcpactionblocksetdefaultudpactionblock该模板在TCP4444端口调用了脚本WormCatcher.sh,该脚本程序能对蠕虫对该端口提出的远程请求做出应答,起到更好的欺骗交互效果。以下是WormCatcher.sh脚本的内容:.cd/tmp/$1一$2/tripSI<c:\cleanerMSB.r43 虚拟蜜罐在嗍络安伞中的应用研究定,然后让网络中的一台IP地址为172.20.0.3的主机感染蠕虫病毒,一段时间后,查看Honeyd的日志,日志中记录了蠕虫扫描的信息,以下是从日志里截取的一段信息:2008-03—02—10:32:40.0338tcp(6)一172.20.0.34608172.25.1.11135:482008一03—02—10:33:01.0450tcp(6)一172.20.0.34609172.25.1.25135:482008-03—02—10:33:21.0347tcp(6)一172.20.0.34608172.25.1.31135:482008-03一02—10:33:45.0411tcp(6)一172.20.0.34608172.25.2.4135:482008一03—02—10:34.11.0367tcp(6)一172.20.0.34609172.25.2.14135:482008-03一02—10:34:24.0347tcp(6)一172.20.0.34609172.25.3.12135:48图5.3Honeyd日志信息从测试结果中可以看到用honcyd模拟的打开了135端口的Windows漏洞主机在很短的时间内就成功的欺骗了冲击波蠕虫,吸引了它的扫描攻击。5.4用虚拟蜜罐对抗蠕虫的优势与不足通过以上分析与实验本文总结出用honeyd搭建的虚拟蜜罐系统在对抗蠕虫时的优势与不足:1.优势(1)用honeyd可以在一台真实主机上虚拟出成千上万的蜜罐,并且能通过配置模拟出对蠕虫极具诱惑力的系统漏洞,伪装成易感染主机。这些虚拟蜜罐可以转移网络蠕虫的攻击流量,保护高价值的真实主机。而搭建出这样的一个系统需要的硬件资源少,成本底,恢复也容易。(2)通过编写脚本,在某些端口调用脚本来提供服务,使honeyd能与攻击者进行交互。为研究网络蠕虫的行为、追踪网络蠕虫的根源提供了更多的数据。(3)Honeyd支持重定向和代理,能够很好的与真实网络结合,并能将攻击返回到攻击主机。(4)虚拟蜜罐作为一种主动防御系统能捕获未知的新的蠕虫攻击,能弥补传统的对抗方法的不足。2.不足(1)虚拟蜜罐能否成功诱骗网络蠕虫取决于很多因素,如蜜罐的指纹特征、蜜罐部署在网络中的位置以及蜜罐本身模拟的漏洞和提供的服务等等。如果虚拟蜜罐被攻击者识别出来,它就失去了对网络的保护作用。 工程硕士学位论文(2)虚拟蜜罐在对抗通过大量扫描(随机性扫描、顺序扫描等)来攻击的网络蠕虫上比较有效,但在对抗路由扫描和DNS扫描的网络蠕虫上效果不好。3.改进思想因为用honeyd搭建的系统是一种低交互级的蜜罐系统,为了能通过更进一步的交互获取跟新蠕虫相关的更多信息,我们可以把虚拟蜜罐和高交互蜜罐结合起来,在少量的高交互蜜罐前部署大量的虚拟蜜罐。在这个系统里虚拟蜜罐用honeyd来构建,高交互蜜罐可以采用ReVirt。ReVirt是一种能够检测网络攻击或网络异常行为的蜜罐系统。我们可以在边界网关或易受到网络蠕虫攻击的地方放置大量的虚拟蜜罐,蜜罐之间可以相互共享捕获的数据信息,采用NIDS的规则生成器产生网络蠕虫的匹配规则,当网络蠕虫根据一定的扫描策略扫描存在漏洞主机的地址空间时,蜜罐可以捕获网络蠕虫扫描攻击的数据,然后采用特征匹配来判断是否有网络蠕虫攻击。5.5本章小结本章介绍了严重影响网络安全的蠕虫病毒并研究了其技术原理。分析了现在常用的对抗方法及这些技术的缺陷。根据传播模型SIR模型和honeyd的特点,提出了一种用honeyd搭建虚拟蜜罐系统来捕获蠕虫副本、转移攻击流量,并利用虚拟蜜罐反攻已感染主机,使其免疫,减轻蠕虫对局域网的破坏的方案。并做了一个用虚拟蜜罐来对抗蠕虫的模拟实验。最后分析了用虚拟蜜罐对抗蠕虫的优势与不足,提出了一种把虚拟蜜罐和高交互蜜罐结合起来的设想。45 虚拟蜜罐在网络安伞中的应用研究总结与展望,D:口—■厅《三E1.总结蜜罐是当今网络安全研究的一个新领域。传统的网络安全技术,如防火墙技术、入侵检测技术都是一些被动防御技术,都是基于己知的事实和攻击模式,它们往往滞后于网络攻击行为。而蜜罐技术是一种主动防御技术,·其价值在于被探测、攻击或损害,它能够转移攻击者视线,使之远离有价值的主机,还能收集到新型的攻击和探测的信息,它是一种新的网络安全的重要辅助手段。本文着重研究的虚拟蜜罐,是一种低交互级的蜜罐。把其应用于网络安全,具有以下优势:它收集到的信息价值高,没有误报,因为所有对它的访问都是未授权的;部署这样的一种防御系统耗费资源少,在少量物理主机上就能模拟出大量虚拟蜜罐;如果出现故障的话恢复也很快。本文用虚拟蜜罐框架honeyd搭建了一个虚拟陷阱网络系统,通过指纹匹配技术来欺骗攻击者的指纹识别工具,通过调用不同的脚本来模拟各种网络服务,通过虚拟蜜罐网络技术模拟出动态路由拓扑结构。并将虚拟蜜罐与防火墙IPTables相结合,通过IPTables来严格监控该系统,防止黑客攻陷该系统后将其作为跳板去攻击其它主机。本文将该系统放入校园网中进行了测试,验证了该系统可以成功的诱骗攻击者,并把攻击从网络中比较重要的计算机上转移开。因为蜜罐的只志是记录攻击的重要资源而honeyd自身不支持自动日志转移,因此本文提出了一种改进方案,通过该方案能实现honeyd日志的远程备份。本文还针对严重影响网络安全的蠕虫病毒,根据honeyd的特点,提出了一种用honeyd搭建虚拟蜜罐系统来捕获蠕虫副本、转移攻击流量,并利用虚拟蜜罐反攻已感染主机,减轻蠕虫对局域网的破坏的方案。2.展望下阶段的改进和加强:虚拟蜜罐是一种低交互的蜜罐,和攻击者的交互非常有限,捕获的数据也很有限,而提高蜜罐的交互性可以获得更多的攻击信息,对研究攻击者如何攻击有很大帮助。我们可以将虚拟蜜罐与高交互蜜罐结合起来,以捕获更多的攻击信息。虚拟蜜罐对网络安全的作用主要是间接的,即识别威胁,转移攻击流量。因而蜜罐与其他安全技术,如防火墙技术和入侵检测系统的结合也是今后一个很重要的发展方向。随着攻击事件的增多,虚拟蜜罐收集到的数据也会越来越多,如何从这些丰富的数据中挖掘出新的有关黑客的知识,也是蜜罐的今后要解决的一个问题。蜜罐擅长捕获有效数据,它消除了大部分的漏报和误报。但Internet是一个 工程硕士学位论文巨大而复杂的体系。因此只部署一两个蜜罐能够提供的信息是有限的,所以在分布式环境中部署多个研究型蜜罐也是今后发展的一个趋势,这样收集的信息就会更有效。47 虚拟蜜罐在网络安伞中的心用研究参考文献[1]崔志磊,房岚,陶文林.一种全新的网络安全策略一蜜罐及其技术[J].计算机应用与软件,2004,(02):99.101.【2]连一峰,王航.网络攻击原理和技术【M】.北京:科学出版社,2004.279.348.[3】诸葛建伟,叶志远,邹维.攻击技术分类研究[EO/BL].http://www.honeynet.org.cn/reports,2005-08[4】杨义先,钮心忻.网络安全理论与技术【M].人民邮电出版社,2003.1-9.[5]叶飞,翟继强.入侵检测技术研究[J]。网络安全技术与应用,2006,(06):.25-27。【6】赵伟锋,曾起铭.一种了解黑客的有效手段一蜜罐[J].计算机应用,2003,(06):259-261.[7】LanceSpitzner.honeypot:追踪黑客【M】.清华大学出版社,2004.[8]熊华,郭世泽,慧勤.网络安全一取证与蜜罐【M】.北京人民邮电出版社,2003.97.136【9】Baumann,Reto,Plattner,Christian.Honeypots[C].March142003.Pages3—40.http://security.rbaumann.net/download/diplomathesis.pdf【lo】李培国,杨天奇.蜜罐对于网络安全方面的价值【J】.计算机工程与技术,2005,(11):83—85.[1l】诸葛建伟.蜜罐与蜜罐系统技术简介[R】.北大狩猎女神项目组技术报告,2004.【12】胡蓓,李俊,郁维等.对未知攻击进行检测的蜜罐系统【J】.计算机安全,2006,(09):22.24.【13】NFR(Security).BackOfficerFriendly[EB/OL].http://www.nfr.com/resource/backOfficer.php.[14】NielsProvos.HoneydNetworkRhapsodyfor-You[EB/OL].http://WWW.citi.umich.edu/u/provos/honeyd/.[15】胡志勇.网络安全之蜜罐技术篇[J】.电子材料与电子技术,2004,(2):22.28.[16】连红,胡谷雨.网络防御中的蜜罐技术研究【J】.军事通信技术,2005,(2):57.61.[17]赵建峰.蜜罐系统的研究与初步实现[D】.北京:中国工程物理研究院2003,(6):35-39.【18】EdwardBalas,CamiloViecco.TowardsaThirdGenerationDataCaptureArchitectureforHoneynets[EB/OL].http://www.honeynet.org,2005.[19】LanceSpitzner.TheValueofHoneypots,PartOne:DefinitionsandValuesofHoneypots【EB/OL】.http://www.securityfocus.com/infocus/1492【20】LallceSptizner.Trackinghackers[EB/OL].http://www.tracking—hackers.com/,2003.【2l】江森林,张既温,严俊.honeyd解析[J】.计算机工程与设计,2005,(03):682—685. 工程硕上学位论文【22】http://www.honeyd.org.ca.【23】http://www.eiti.umich.edu/u/provos/honeyd/[EB/OL].【24】翟继强,叶飞.利用Honeyd构建虚拟网络【J】.计算机安全,2006,(3):26.48.【25】官凌青,娄嘉鹏,刘莉.蜜罐Honeyd的扩展设计与实现【J】.北京电子科技学院学报,2006,(4):83-86.【26】HoneynetProjeet[EB/OL].http://www.honeynet.net【27】李宁波.虚拟蜜罐软件Honeyd[EB/PDF】http://www.icst.pku.edu.cn/honeynetweb/reports/honeyd.pdf’2005.[28】Thedevelopmentofhoneyd[EB/OL].http://www.honeyd.org.【29】文伟平,斯汉.网络蠕虫研究与进展【J】.软件学报,2004,(08):1208.1011.[30】LanceSpitzner.KnowYourEnemy:WormatWar[EB/OL].http://project.honeynet.org,2001.【31】ChenZ,GaoL,KwiatK.Modelingthespreadofactiveworm[A].ProceedingsofIEEEINFOCOM[C].SanFrancisco.2003.1890-1900.【32】张运凯,郭永宏,王浩.网络蠕虫的传播与控制【J】.网络安全技术与应用,2004,(06):l6一l8.【33】谭毓安,曹元大.“冲击波"蠕虫的分析和防范[J】.计算机系统应用,2004,(06):48.50.【34】KnowYourEnemy(KYE)seriesofpaper[EB/OL].http://www.honeynet.org/papers/kye.html,2005.【35】LaurentOudot.FightingInternetWormsWithHoneypots[EB/OL].http://www.securityfocus.com/infocus/l740,Oct2003.[36】冲击波(MSBlast)病毒分析报告[EB/OL】http://www.chinageren.com/jc/HTML/60614-1.html,2006.‘49 虚拟蜜罐在网络安伞中的应用研究附录A(攻读硕士学位期间所发表的学术论文目录)【1】邹文,陈浩.基于虚拟蜜罐的网络安全研究.电脑知识与技术,已录用,定-于2008年5月出版。