- 154.00 KB
- 2022-06-16 12:37:10 发布
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
基于虚拟蜜罐的入侵检测系统设计天津大学硕士学位论文基于虚拟蜜罐的入侵检测系统设计姓名:惠伟申请学位级别:硕士专业:信息与通信工程指导教师:鹿凯宁2011-12摘要
随着互联网的快速普及,计算机网络安全问题日益引起人们的关注。层出不穷的网络攻击不仅对当前的网络技术提出了挑战,还给用户造成了重大的经济损失。传统的网络防御技术已经越来越不能满足信息安全保护的需求。入侵检测作为动态的保护网络安全的技术,采用基于规则匹配的方法来检测入侵和攻击,对于已知攻击特征的入侵行为具有良好的检测效果,但传统的入侵检测系统也存在显著的缺陷:漏报率和误报率比较高、对未知攻击行为无能为力等。蜜罐作为保护网络安全的新技术,不但能够检测未知攻击,还可以采集到入侵检测系统无法获得的信息,在一定程度上克服了入侵检测技术的不足。
本文将虚拟机技术引入蜜罐系统中,在对比分析入侵检测技术和蜜罐技术的典型应用的基础上,对这两种技术进行融合,提出了一种新的基于虚拟蜜罐技术的入侵检测系统设计方案,并对此方案的各个模块进行了详细的分析设计。通过搭建模拟系统测试该设计方案的数据捕获、控制功能以及安全功能,验证了其在现实应用中的可行性。实验表明,这种基于虚拟蜜罐的入侵检测系统完全满足当前网络对入侵者信息捕获的需求,能够对用户网络提供全面的保护,不但可以检测到已知攻击特征的入侵行为,还能够捕获到未知的攻击。此外,模拟系统还能在一定程度上抵御
DDoS攻击和僵尸病毒攻击。因此,这种混合设计方案在实际应用中具有一定的价值。关键词:入侵检测:虚拟蜜罐:Snort;网络安全ABSTRACTWithofmoreattentionontheofrapidpopularizationIntemet,peoplepayproblemnetworkattacksnotcurrentnetworksecurity.Network
computeronlychallengealsocauseeconomiclossestousers.Traditionalnetworktechnologies,butsignificantdefensehavebeenunabletomeetoftheneedsinformationtechnologiesincreasinglydetectionactsasanetworkofsecurity.Intrusiontechnologydynamictechnologynetworkonmethodstodetectintrusionandprotectingsecurity,basedrule―matching
hasaeffectonattacksofknownthereareattack,andespeciallygoodsignatures.Butalsodefectsfortraditionalintrusiondetectionsignificantsystems,forexample,thefalserateandfalsealarmrateofIDSareithaslittlenegativerelativelyhigh,andmethodstodowithunknownattacks.Asanewtonetworkcouldnotdetecttechnologyprotectsecurity,honeypotonly
unknownalsoinformationthatIDSCannotforattacks,butcapturedo,makingupdefaultofdetectiontoaintrusioncertainextent.Thisthesisintroducestechnologyvirtualmachineintoandtechnologyhoneypotsystem.Aftercomparinganalyzingofintrusiondetectionandtypicalapplicationstechnologyhoneypottechnology,we
asolutionthem.Thenthisthesiscarriesoutadetailedintegratedproposebyfusingandonmodulesofthesolution.Afterbuildathat,weanalysisdesigneverysimulationenvironmenttotestdatacontrolandfeaturesoftheanditssecuritysystemintherealfeasibilityapplications.
couldconcludethattheintrusiondetectionbasedonByValidation,wesystemvirtualmeetstheneedofinformationofhoneypotfullycapturingintruders,providingforuser’Snetwork.Itcoulddetecttheintrusionofknowncomprehensiveprotectionwellasunknownattacks.Incouldresistattackingsignatures,ascapturingaddition,itDDoSattacksvirusandzombieattackstosome
extent.Therefore,thishybriddesignhasacertainvalueinpracticalapplication.KEYWORDS:IDS;Virtualhoneypot;Snoa;Networksecurity第一章绪论第一章绪论1.1研究背景及问题提出
互联网的飞速发展极大的满足了人们信息交流的需要,促进了科技、教育、文化等各方面的快速发展,并成为人们工作、学习、生活的重要组成部分,但Intemet在给人们带来便利的同时,也不断的产生各种问题,对信息安全造成严重的威胁。根据国家互联网应急中心2010中国互联网网络安全报告【l】,网络安全事件主要集中在恶意代码、漏洞、网页仿冒等事件,其中,恶意代码事件和漏洞事件是影响企业和用户网络安全的主要威胁,而且2010年上半年所接收的网络安全事件报告数量比去年同期大幅增加。2010互联网安全威胁呈现以下五个特征:病
毒木马呈现“互联网化”趋势,高度依赖联网传播;80%的病毒传播渠道被病毒集团所操纵,危害更深入;网络购物人群成为入侵重点对象;新型木马不断出现,破坏性超传统10倍:病毒木马与钓鱼网站相互“勾结”越发突出。由此可以得出,互联网威胁事件不但在数量上增加,而且在技术上也不断创新,会互联网带来越来越严重的危害。传统的网络安全技术主要有:认证技术、加密技术、数字签名、防火墙技术、入侵检测技术等。这些网络安全技术都极大的促进了互联网的健康发展,但这些传统的技术也存在固有的缺陷,例如,只考虑系统自身的安全保护,主要侧重于
“静态”的保护,不能应对未知的攻击。因此,越来越多的研究机构正在致力于研究主动的网络安全防御技术。Detection入侵检测技术InstructionTechnology是指通过对系统日志、行为、审计数据以及网络其它可以获取的数据进行操作,检测到对系统的入侵或入侵的企图【21。入侵检测系统Instruction‘DetectionSystem可以简单的理解成一
个能够读取和解释防火墙、服务器、路由器以及其它网络设备日志文件内容的工具。它通常维护着一个数据库,保存着已知攻击行为的特征,并且以此特征库的内容匹配所监视的网络流量,如果出现匹配内容,入侵检测系统可以向网络安全管理员发出报警信息,并根据事先设定的规则自动地做出响应,例如,记录攻击行为,追查入侵者信息,切断网络连接等。随着入侵者使用越来越复杂的逃避技术,以及通过加密技术保护网络通信防止被窃听的协议越来越多,入侵检测系统能够提供有用信息越来越少。针对这第一章绪论
些缺陷,人们提出了很多新技术,本文采用的虚拟蜜罐技术就是其中的一种。蜜罐是一个被严密监控的计算机资源,希望被入侵者探测、攻击或者攻陷【3】。一个蜜罐的价值可以用其获得的信息量来衡量,通过检测进出蜜罐的数据来收集IDS无法获得的信息,此外,蜜罐系统还能够检测到未知攻击,这更是IDS无法做到的。本文基于入侵检测系统,结合蜜罐技术,同时使用了透明网桥、防火墙、虚拟机等技术,设计了一个基于虚拟蜜罐的入侵检测系统,不但能够确保自身的安全,还能提供数据采集、控制和分析功能。1.2国内外发展现状
1980年,JamesP.Anderson第一次提出入侵检测的概念,在Computersecuritythreatandsurveillance一文中详细论述了入侵检测,提出了计算机系monitoring统威胁分类以及通过审计入侵行为日志来监控入侵活动的思想,被公认为是入侵检测的开山之作。1984年到1986年,乔治敦大学的DorothyDenning和SRI/CSL的PeterNeumann研究出了一种实时入侵检测系统模型.入侵检测专家系统InstructionDetection
ExpeaSystem,IDES。1990年,加州大学戴维斯分校的Monitor,该系统第一次将L.T.Heberlein等人开发出了NSMNetworkSecurity网络数据流纳入审计数据来源,优势是不用进行数据格式转换即可监控主机,由此,入侵检测系统的发展进入了新的历史阶段,并使基于网络的IDS成为主流的InstructionDetectionSystem,DIDS展开研究,并融合基于主机和基于网络的检测方法。
20世纪90年代以后,入侵检测系统的发展进入繁荣期,在分布式与智能化这两个方面取得突破性的成就。1990年,Heberlein等人设计了网络安全监控NetworkSecurityMonitor,NSM系统,该系统首次对网络数据流进行审计,主动监测网络数据中异常流量。1994年,为了提高IDS的伸缩性、维护性以及容错性,Mark等人建议采用自治代理。21世纪初,国际上一些研究机构开始对入侵检测系统进行标准化工作,目前主要有两个标准组织:IETF的IDWGInstructionDetectionInstructionDetectionWorkingGroup和CIDFCommon
Framework。CIDF是一个开放的组织,其制定的规范对IDS的发展做出了突出的贡献。入侵检测技术为信息资源提供保护,是一种检测计算机系统中恶意行为的技术,近几年得到快速的发展,可以在一定程度上实现自动检测、报警,还可以与防火墙进行整合,阻断攻击者的入侵,但IDS不能,很可能永远无法做到检2第一章绪论测所有的入侵事件,而且目前的IDS普遍存在误报,漏报等情况。目前,国内外比较典型的商用的入侵检测产品有以下几种。国外产品
1Cisco公司的NetRanger1分为传感器和控制器,其中传感器用于检测数据包和发出告警信息,控制器接收、分析告警并启动对策。硬件配置最低需要一台普通PC运行传感器程序,一台安装在Sun制器程序能够采集多个站点的数据并监视入侵者对企业网上任何站点的攻击。题时,会综合数据包的上下文而不是仅仅查看单个包的内容。Associates公司的SessionWall-3/eTrustIntrusionDetection2Computer
SessionWall.3/eTrustIntrusionDetection能够有效降低对网络管理人员管理技能的要求,并在保证网络连接性能的条件下,提高系统的安全性能。SessionWall.3/eTrustIntrusionDetection能够主动辨别特殊网络应用以及网络使Intrusion用的模式,并检测基于网络的攻击等行为。此外,SessionWall.3/eTrustDetection还能够提取网络上的各种可疑数据,这些数据涉及各种网络应用以及网络安全。SessionWall.3/eTrustIntrusion
Detection还包括用于监视、阻塞和报警的WEB访问策略集,以及用于检测攻击、恶意电子邮件等的入侵监测策略集。Intrusion这些策略集含有SessionWall.3/eTmstDetection检测所有网络数据流的策略,即规定了扫描模式、URL、网络域以及检测内容,还规定了相关的处理操作。国内产品NIPS1绿盟科技的冰之眼网络入侵防御系统ICEYE冰之眼网络入侵防御系统ICEYENIPS作为绿盟科技公司自主研发,拥有
全部知识产权的IDS产品,是其整个入侵防御解决方案的核心,它不但拥有先进的体系架构,还综合了多种领先的入侵检测技术。ICEYENIPS的核心是协议识别技术、协议异常检测技术和关联分析技术,其基础是协议分析技术,能够做到实时检测并阻止多种类型的恶意入侵、攻击行为以保护网络安全。它的设计目标旨在准确监测网络的异常流量,自动对各类攻击性的流量,尤其是应用层的威胁进行实时阻断,而不是在监测到恶意流量之后才发出告警,克服了传统的网络安全产品,比如防火墙、入侵检测等的缺陷,为各类用户提供全方位的、主动式的、新式的入侵防御解决方案。
2安氏领信入侵检测2600型Professional系列第一章绪论控制,最大限度地缩短响应时间,并降低网络安全的维护成本。它使用业界领先的入侵检测技术,包括基于状态的应用层协议分析技术、灵活的行为描述代码、基于目标操作系统指纹识别的智能IP碎片重组技术,配合高性能专用硬件设备,提供丰富完善的管理功能,是目前先进的网络实时入侵检测系统。安氏领信入侵检测系列产品以不引人注目的方式提供全天候地检测和分析企业网络中的安全问题,及时捕获入侵事件,提供适当的响应,最大限度的保护企业的信息资产安
全。它具备应用感知与识别能力、协议解码能力、预定义和定制签名能力等优势。1.3本人主要工作1.结合当前网络安全现状,对目前应用较为广泛的典型的Snoa入侵检测系统和蜜罐系统的优缺点进行分析。2.在蜜罐技术中引入虚拟机技术,提出结合Snort入侵检测系统和虚拟蜜罐技术的混合入侵检测系统设计方案,并分析其应用的可能性。3.提出简化的基于虚拟蜜罐的Snort入侵检测系统设计方案,并对各模块的功能进行详细的分析、设计。
Server、Snoa、4.基于主机、路由器、网关,并在网关上安装配置VmwareSebek等程序搭建实验环境,模拟部署基于虚拟蜜罐的入侵检测系统。5使用Web应用程序XAMPP验证系统对入侵的数据采集功能;在模拟系统内部发动ICMP攻击,验证系统的数据控制功能,最后,分析系统对僵尸程序的传播抑制效果来进一步验证系统的安全性能。1.4论文主要结构本论文共分为六章,各章主要内容如下所示:第一章为绪论,重点介绍课题的研究背景、国内外入侵检测技术的发展动态及本文的主要工作。
第二章介绍了入侵检测和虚拟蜜罐技术,包括Snoa网络入侵检测技术、蜜罐技术以及VMware虚拟机技术等。第三章分别对当前基于Snort和蜜罐技术的典型应用进行研究,探讨它们的优缺点,并提出结合Snoa和虚拟蜜罐技术的入侵检测系统的解决方案。第四章提出一个简化的基于虚拟蜜罐的入侵检测系统的解决方案,并对各个4第一章绪论模块进行了详细的分析、设计。第五章搭建实验环境,并使用XAMPP等软件对系统的数据采集功能进行验
证,在系统中模拟ICMP攻击,验证系统的数据控制功能,最后,分析系统对僵尸程序的防范来验证系统的安全性能。第六章总结了本文所作的工作,分析存在的问题,并指出了下一步的工作的重点。第二章入侵检测与蜜罐技术研究第二章入侵检测与蜜罐技术研究2.1入侵检测概述2.1.1入侵检测相关概念Detection入侵检测技术Instruction
Technology是指通过对系统日志、行为、审计数据以及网络其它可以获取的数据进行操作,检测到对系统的入侵或入侵的企图。Detection入侵检测系统InstructionSystem可以简单的解释为一个能够读取和解释防火墙、服务器、路由器以及其它网络设备目志文件内容的工具【4】。它通常维持一个特征数据库,保存着已知攻击行为的特征,并且用此特征库的内容匹配所捕获的网络数据包。如果出现匹配内容,入侵检测系统可以向网络安全管
理员发出报警信息,并根据事先设定的规则自动地做出响应,例如,记录攻击行为,追寻入侵者信息,切断网络连接等。IDS的工作原理类似于反病毒软件查杀病毒的机制。区别是杀毒软件分析文件内容,IDS则检查数据包的内容,判断是否存在未经许可的访问、资源请求以及恶意的攻击等可疑行为,从已知的攻击类型中检测是否存在攻击者尝试入侵受保护的主机或者网络,并尽力捕获攻击。通过入侵检测系统采集的信息,可以了解攻击者的入侵动机、采用的攻击手段等,从而能够采取更有效的措施防护自身的网络安全,避免遭受进一步的损失。
2.1.2入侵检测标准为了使入侵检测系统产品规范化,互联网工程任务组InternetEngineeringTaskDetectionForce.IETF入侵检测工作组InternetWorkingGroup,IDWGAdvancedResearch和美国国防部高级研究计划署DefenseProjectsAgency,DARPA发起并起草了一系列建议草案标准,这些标准涉及到IDS体系结构、应用编程接口等方面。DARPA提出的建议草案是公共入侵检测框架Common
IntrusionDetectionFramework,CIDR【5】,这个框架对入侵检测的研究影响很大,分别从体系结构、应用编程接口API、描述语言、通信机制这四个方面规定了IDS。1CIDR体系结构包括四个基本组件:事件产生器EventGenerator、事件分析器Event第二章入侵检测与蜜罐技术研究Database。如图Unit以及事件数据库EventAnalyzer、响应单元Response2-1所示。
图2.1CIDR体系结构事件产生器又称为传感器,本质上是一个嗅探器,是入侵检测的第一步,目的是从网络环境中收集数据,并提供给系统其它部分。Instruction事件分析器接收事件产生器传递的统一入侵检测对象GeneralizedDetectionObject,GIDO并分析之,然后将新产生的GIDO传递给响应单元。它是IDS的核心组件,决定其性能。事件数据库用来存储系统需要时可供查询和使用的GIDO。响应单元接收事件分析器传递的GIDO,并执行相应的操作。
2通信机制通信机制是一个三层模型:统一入侵检测对象层、消息层以及协商传输层。GIDO详细定义如何表示事件;消息层负责传递消息;协商传输层定义组件之间传递GIDO的方式。3CIDF语言InstructionCIDF定义了一种应用层语言.通用入侵描述语言CommonSpecificationLanguage,CISL,其作用是规定各组件之间传送的信息。此外,CISL还编码各种事件和结果生成GIDO。
4API应用编程接口API负责与GIDO相关的编、解码和传递工作,它提供的调用功能能够以一种简单的方式对GIDO进行构建和传递。API包括以下几部分内第二章入侵检测与蜜罐技术研究API容:GIDO编码和解码APIGIDOEncoding/DecodingSpecification、消API息层APIMessageLayer
CIDFAddendumAPI、顶层CIDFAPI、签名APISignatureAPITop-LevelAPI。2.1.3入侵检测技术入侵检测技术通常分为两大类:异常检测和特征检测。异常检测技术detection通过识别入侵者的异常行为进行检测。首先,异常检测Anomaly
需要预定义一组系统正常行为的基准,例如CPU利用率、击键次数等,然后使用采样统计等方法构造“用户正常行为基准”,IDS通过从用户系统采集数据,判断其是否偏离基准,如果偏离基准,则认为该活动是异常的,有可能是入侵行为。异常检测的核心是如何分析系统正常的运行情况,其优越性是具有比较强的通用性,不依赖与对已知攻击的识别,不足是误报率高等。异常检测模型如图2.2所示。异常检测技术有【6】基于统计的异常检测方法、基于神经网络的异常检测技术、基于数据挖掘的异常检测技术、基于随机过程方法的异常检测技术等。
图2-2异常检测模型特征检测技术第二章入侵检测与蜜罐技术研究特征检测又称为误用检测,是指鉴别那些试图通过非授权或者非标准方式使用系统的事件。IDS中保存己知攻击行为的特征,据此判断系统行为,如果存在匹配已知攻击行为特征的活动,则认为是入侵行为。特征被定义为对已知攻击行为的描述,而且必须明确表示某一攻击行为的特征,从而减少由正常行为引起的误报。因此,基于特征检测的IDS设计难点在于如何既能够描述“入侵”行为,又不会包括正常的操作。
采用特征检测技术的IDS能够检测出大部分己知的恶意流量,其优点是对己知的入侵检测率高,但不能检测未知的入侵行为。其检测原理模型如图2.3所示。图2-3误用检测模型用于误用检测的主要技术有基于条件概率的误用入侵检测技术、基于专家系统的误用入侵检测技术、基于模型推理的特征入侵检测技术和基于模式匹配的误用入侵检测技术等。2.1.4入侵检测系统的分类IDS可以根据保护目标、检测机制、反应时间等进行分类。
Intrusion根据保护目标不同可划分为基于主机的入侵检测系统饵ostIntrusionDetectionDetectionSystem,HIDS和基于网络的入侵检测系统Network第二章入侵检测与蜜罐技术研究根据检测机制不同可划分为误用入侵检测系统和异常入侵检测系统;根据反应机制不同可划分为主动响应式入侵检测系统和被动响应式入侵检测系统,主动响应式IDS能够采取主动措施阻止攻击,被动响应式IDS只能通过报警的方式通知
网络安全人员;根据反映时间不同可划分为实时连续型入侵检测系统和间隔批处理型入侵检测系统,前者能够进行实时处理,后者只处理某时间段内的入侵并反馈结果给管理员。本文着重介绍基于主机的入侵检测系统以及基于网络的入侵检测系统。基于主机的入侵检测系统基于主机的IDS仅仅保护它所在的主机系统,网卡被设置为“非混杂模式”,在应用程序、操作系统或者内核层次上监控入侵行为,HIDS需要检查被保护主机上的任何资源,比如日记、服务和应用程序权限等。此外,HIDS还必须了解
应用程序,能够正确识别正常数据与异常攻击数据,并有权监控进行解码等行为的程序。HIDS系统结构如图2-4所示:图2_4HIDS系统结构HIDS的优点:1拥有访问主机的特权。第二章入侵检测与蜜罐技术研究2系统误报率较低,系统比较简单。HIDS的弱点:1无法监控整个网络的活动。2被监控主机运行审计功能等会占用系统资源,降低系统效率。基于网络的入侵检测系统
基于网络的IDS置于网络的关键区域,利用工作在混杂模式下的网卡监控流向网络中其它主机的流量,NIDS一般在网络层监控、分析网络流量,阻止入侵以及盗用系统资源等非法行为。NIDS系统结构如图2.5所示。图2.5NIDS系统结构NIDS的优点:1监控范围广,能够接收并监控所在子网内的所有网络流量。2较HIDS安全,监控不易被中断。3部署成本更低,出现故障也不会影响正常业务运行。NIDS的弱点:1
为了维持安全需要,必须高效的捕获数据包,导致NIDS的放置位置、丢包处理等不易协调。2NIDS无法阻止IDS逃避技术的入侵、攻击。3NIDS传感器之间协同工作能力较弱。第二章入侵检测与蜜罐技术研究2.2网络入侵检测系统Snort概述2.2.1Snort定义Snort是一个著名的开源的轻量级NIDS,经过不断的修改以及功能扩展,现已成为流行的NIDS和事实上的业内标准。Snort可以被认为是一个拥有数据包
嗅探和记录功能的NIDS,核心在于如何根据规则对数据包进行处理,其规则灵活强大,能够分析网络中出现的所有数据包,处理后可以选择忽略、记录或者报警。Snort具备开源、可扩展和适应多平台的优点,在很大程度上它是一个基于规则的入侵检测系统,其规则存储在文本文件中,并以类别分组,因此,易于修改。Snort缺点也比较明显,包括安装比较困难、不能捕获所有的数据包、存在误报和漏报等。尽管Snort存在诸多弱点,但瑕不掩瑜,并不妨碍它被大规模的部署应用以保护网络或者系统安全。
2.2.2Snort的体系结构Snort的体系结构包括Sniffer数据包嗅探器、预处理器、检测引擎以及报警输出四部分。Snort体系结构如图2-6所示。库图2-6Snort体系结构数据包嗅探器数据包嗅探器既可以基于硬件也可以基于软件实现,并联在网络中嗅探数据包,工作原理类似于电话窃听,主要用于网络分析、性能分析、监听敏感信息等方面。
预处理器用插件查看原始的数据包,分析其在应用层的表现,然后传送给检测引擎。12第二章入侵检测与蜜罐技术研究预处理器工作流程如图2―7所示。数据包图2.7Snort预处理器检测引擎模块这是Snort的核心模块。检测引擎依据事先设定的规则查看预处理模块发送
过来的数据包,一旦发现异常,就告知预警模块。检测引擎模块工作流程如图2-8所示。图2-8Snort检测引擎模块工作流程报警日志模块检测引擎检查数据时,若匹配某条规则,则会触发报警信息,该信息要么发送给日志文件存入数据库,要么通过Web插件显示。报警输出模块结构如图2-9所示。第二章入侵检测与蜜罐技术研究数据包Web服务器
I‘―Win―Pop刁up捅思II1.......................-J图2-9报警输出模块2.3蜜罐技术面对越来越复杂的逃避技术,以及采用加密技术来保护网络通信,防止被窃听的协议越来越多,入侵检测系统能提供的有用信息数量越来越少。此外,入侵检测系统也受高误报率的困扰,从而进一步降低了它的作用。蜜罐技术在这方面
能够解决一些问题。为了检测恶意攻击,入侵检测系统需要了解已知攻击特征,而一般检测不到未知的威胁,因此,入侵检测技术面临的难题是如何检测未知攻击行为。在某种意义上,未知攻击对于网络安全是致命的。如何防御未知攻击一直是研究的热点,而蜜罐系统不但能够检测到未知攻击,还可以了解系统漏洞,因此,蜜罐系统将会是研究、应用的热点。2.3.1蜜罐的定义蜜罐是一个被严密监控的计算机资源,希望被探测、攻击或者攻陷,更准确的说,蜜罐是一个信息系统资源,其价值在于未经授权或非法使用该资源【_71。一
个蜜罐的价值可以通过从它获得的信息来衡量,通过检测进出蜜罐的数据来收集NIDS无法获得的信息。例如,即使使用了加密技术保护网络流量,蜜罐仍然能够记录一个交互式会话中的击键行为。通过设置一个专门构造的蜜罐系统来引诱入侵者,记录其如何攻入系统,以及其攻击目的、所用工具等以获取有用的信息。通常在蜜罐中故意设置黑客企图14第二章入侵检测与蜜罐技术研究获取的信息,以此吸引入侵者攻陷蜜罐系统,当攻击者在蜜罐中停留的时问越长,暴露的攻击手段和技术就越多,网络管理员获取入侵者的有用信息也就越多,这
样可以发现系统更多的安全隐患,允许网络安全人员采取相应的措施来增强系统或者网络的安全。在现实应用中,蜜罐既可以基于物理主机实现,也可以通过软件模拟,部署比较灵活。蜜罐没有生产价值,任何连接蜜罐系统的尝试都被认为是别有用心的FJ。由于入侵者会误以为蜜罐是真实的系统,不断的尝试攻陷,从而可以保护真实的系统。然而蜜罐并没有像防火墙或者基于主机型的入侵检测系统那样直接保护网络安全,与之相反,它会吸引更多的网络攻击,一旦黑客攻陷蜜罐,就会以
此为跳板攻击其他系统,因此可以说蜜罐在某种程度上削弱了系统的安全性与稳定性,这需要网络管理者结合入侵检测以及其它安全技术来弥补此类安全隐患。和入侵检测系统相比,蜜罐就有以下优势和不足:优势1检测未知入侵入侵检测系统通常情况下只能检测已知攻击,对于未知攻击行为无能无力,而通过观察进出蜜罐的网络流量,就能够检测到未知的攻击手段。这样,可以及时发现新的安全隐患和黑客攻击工具等。2性能优越
因为蜜罐没有生产价值,任何连接蜜罐的尝试都被解释为试图攻击蜜罐,因此分析蜜罐收集的数据产生的误报比从入侵检测系统收集到得数据导致的误报少,而且漏报率也很低。通过蜜罐收集的数据可以帮助网络管理员了解入侵行为。3检测加密攻击入侵者在攻击过程中通常对数据进行加密,在入侵检测系统中,虽然可能采集到入侵者的加密数据,但由于没有相关的密钥,一般不易解密得到有价值的信息,而在蜜罐系统中,由于数据采集是在加密通信解密之后进行的,因此不用担心攻击者的加密攻击。蜜罐的不足
1蜜罐监控范围有限,不像入侵检测系统能覆盖整个网络。2蜜罐作为吸引黑客攻击的工具,并不能直接保护系统或者网络的安全,只能作为事后分析的工具,了解黑客的攻击行为。3使用蜜罐会带来一定的安全隐患,如果蜜罐被黑客识别、攻陷后,会以此为跳板对其它主机发动攻击。第_章入侵检测与蜜罐技术研究2.3.2蜜罐的分类1.根据服务配置的不同,可以分为高交互蜜罐和低交互蜜罐1高交互蜜罐提供给入侵者一个完全可交互的系统,它不模拟任何服
31。因此,入侵者能够完全务、功能或者基础操作系统,提供真实的系统和服务【l攻陷并控制它,这有助于网络管理员了解更多的有关入侵者所使用的工具、手段和动机,加深对攻击团体的了解。高交互蜜罐的优点是能够捕获大量的威胁信息。缺点是存在高风险,攻击者可能攻陷高交互蜜罐,并有可能由此损害其它非蜜罐系统。另外,部署和维护比较困难。2低交互蜜罐模拟物理机器的有限的功能,例如,服务、网络堆栈峭J等。允许入侵者与其在特定范围内进行有限的交互,有助于系统收集攻击的定量
信息。低交互蜜罐的主要功能是采集特定漏洞或者服务的统计数据,还可以作为入侵检测系统使用,提供对未知新攻击的自动预警。另外,低交互蜜罐还可以检测蠕虫等病毒以及干扰入侵者的攻击行为。低交互蜜罐的优点主要是风险可控,由于入侵者只是与模拟系统交互,不用担心完全攻陷系统。此外,易于部署和维护也是其一大优势。2.根据具体实现方式可以分为虚拟蜜罐和物理蜜罐物理蜜罐是指一台或者多台物理机器只承担运行蜜罐的功能,通常意味着高
交互蜜罐,需要单独的IP地址,以便被入侵者完全攻陷,突出的劣势是安装和维护的成本比较高。所谓虚拟蜜罐是指用一台物理机器实现多个蜜罐的功能,即通过虚拟机技术构造蜜罐部署到物理机器上。虚拟蜜罐是通过另一台机器模拟实现的,响应是发送给虚拟蜜罐的网络流量。这种方案最大的优势是易维护和低成本,可以用一台主机建立拥有多个操作系统的虚拟蜜罐网络。建立虚拟蜜罐的工具主要有VMwarc[91和用户模式UML[10】。鉴于虚拟蜜罐的诸多优点,本系统采用虚拟蜜罐。2.3.3蜜罐的部署蜜罐是连接到网络上的可被探测、攻击、控制以及滥用的服务。部署蜜罐的
位置有两处:本地网络和分布式网络。本地网络蜜罐部署在本地是指完全在本地自我管理的网络中部署。优点是可以确保蜜罐在一个完全可控的环境中运行,对外界网络没有任何依赖,可以根据需求配置第二章入侵检测与蜜罐技术研究系统不必担心蜜罐与其它系统的交互。缺陷是需要采取措施保证本地网络的蜜罐不被攻破或者访问其它资源,这可以通过防火墙等网络设备将蜜罐网络与其它网络隔离来实现。分布式网络
分布式部署蜜罐可以检测发生在远程网络上的恶意攻击。目前一些蜜罐项目支持将发生在异地网络的攻击行为重定向到本地蜜罐网络中,入侵者检测不到重定向从而无法攻击本地网络。目前有许多分布式蜜罐项目,大大简化了分布式蜜罐的部署。其中,SURFids是著名的开源分布式入侵检测项目,使用数据库进行事件管理,通过开源组件将VPN和tap接恶意网络流量重定向到中心蜜罐,在Nepenthes蜜罐中使用Open口提供TCP/IP之上的两层连接。它拥有许多特性,比如自动映射攻击者的源IP
地址和地理位置,主动指纹识别攻击者的主机系统,防病毒扫描等。其中突出的特性是拥有USB存储棒功能,这项功能可配置在低配置的主机上,只需要通过网卡将在远程的传感器/重定向器启动,使得对大量远程传感器的管理变简单。2.4高交互虚拟蜜罐及相关技术2.4.1高交互虚拟蜜罐的定义高交互虚拟蜜罐High.interactionhoneypots通过在高交互蜜罐中引入虚拟机技术,可以在一个常规的计算机系统,如计算机、路由器或交换机,虚拟构造出多个蜜罐主机。高交互虚拟蜜罐不但具有常规高交互蜜罐的优点,还具有便于
管理,成本低等优点。高交互虚拟蜜罐没有部署常规的任务,也没有固定的活动用户,只运行正常的守护进程,不产生任何网络流量。因此,任何与高交互虚拟蜜罐的连接都是异常的,配置在高交互虚拟蜜罐上的信息采集工具会收集所有的网络流量并记录系统的活动。通过高交互虚拟蜜罐,可以捕获入侵者全面的攻击行为。首先,在侦查阶段,观察黑客如何搜索目标,使用何种技术尝试发现一个给定系统的更多信息,随后,可以观察入侵者利用何种漏洞攻陷系统,最后,可以追踪他在虚拟蜜罐上留下的痕迹。总之,通过高交互虚拟蜜罐可以方便的了解攻击者的入侵工具、手段和动
机。高交互虚拟蜜罐的优势:1与入侵检测相比,不存在误报或者误报率极低是高交互虚拟蜜罐的显著优势。第二章入侵检测与蜜罐技术研究2部署成本低。与每台主机单独部署高交互蜜罐相比,虚拟高交互蜜罐只需一台物理机器就可以构造出多个虚拟蜜罐主机,并构成虚拟密网,增加网络的真实性。3便于维护。一旦入侵者攻陷了虚拟蜜罐,就可以观察和跟踪其活动,一
段时间后,可以轻易的还原虚拟蜜罐到原始状态。4风险降低。使用虚拟机建立的蜜罐降低了风险,入侵者不太可能攻陷或者损坏正在运行的实际机器。高交互虚拟蜜罐的缺陷1与低交互虚拟蜜罐相比,攻击者能够完全访问蜜罐主机,并开始恶意行为,例如,入侵者通过蜜罐试图攻击Intemet上的其它主机,或者通过被攻陷的机器向外发垃圾邮件等。2攻击者可以区分虚拟机和真实的机器。高水平的攻击者攻陷蜜罐后会发
现可疑环境,有可能改变策略,欺骗网络管理员,从而不易获取入侵者的信息。2.4.2V脚are虚拟机技术VMware公司是目前虚拟化软件解决方案的佼佼者,作为硬件虚拟层的一种解决方案,VMware的产品在部署高交互蜜罐中非常流行。虚拟化软件是指通过软件模拟一个完整的基于X86的计算机系统,在虚拟机上提供一个或者多个操作系统。主机是指执行VMware进程的计算机和操作系统实例,也就是安装VMware的物理机器。运行在虚拟机内部的操作系统称为客户系统或者客户虚拟机,这两类系统之间的交互式是完全透明的,主机与客户虚拟
机共享CPU和内存资源,类似于模拟器,VMware为客户机构造了一套完整的虚拟硬件资源,制定了自己的一套虚拟设备来虚拟网络和其它I/O设备,以提供必要的抽象。Vmware支持基于X86处理器的操作系统,允许安装几乎任何操作的结构如图2.10所示。蜜罐系统虚拟化提供很多好处【14】,首先,方便管理并节约部署成本。通过虚拟化技术不用为每个蜜罐提供一个物理服务器,只需在一个物理硬件上就可以同时运行多个操作系统。其次,虚拟机监视器能够提供隔离能力,增强网络的安全性。
第二章入侵检测与蜜罐技术研究图2.10VlⅥwal"e结构示意图VMware虚拟网络VMware提供四种不同的方法配置主机系统和客户虚拟机之间的虚拟网络。1.桥接网络Bridged这是主机系统和客户机系统的默认模式,主机系统为客户虚拟机充当透明网桥,配置示意图如图2.1l所示。1图2.1VMware桥接网络结构在这一配置中,两个客户虚拟蜜罐都有自己的MAC地址和IP地址,在网络
上作为一个完整的机器存在。IP地址可以自己配置,也可以使用DHCP[15】第二章入侵检测与蜜罐技术研究HostProtocol,动态主机协议自动获取。客户虚拟机DynamicConfiguration的虚拟网络接口与主机的网络接口相互配合,并使用它向本地网络发送数据包,主机系统把所有目的地是虚拟主机的数据包路由到正确的虚拟机,整个过程是透明的,因此,攻击者几乎不能辨别主机是否作为一个虚拟机在运行。2.NAT[16】网络如果系统不能给虚拟蜜罐配置一个非私有的IP地址,则可以通过网络地址转
Translation,NAT实现外部网络与虚拟蜜罐之间的通信。换NetworkAddress在NAT网络配置中,虚拟蜜罐的网关是蜜罐宿主机,并且虚拟蜜罐在这个虚拟网络中被托管,这表明客户蜜罐系统与主机系统共享IP地址,虚拟蜜罐系统的forCommems定义的私DHCP服务器为虚拟蜜罐系统分配一个RFCRequest有IP地址。这种方案的缺点是从外部网络不是很容易访问虚拟蜜罐,因此,这种配置一般只适合测试目使用。
3.主机网络Host-only在这种配置方案中,客户虚拟蜜罐与蜜罐宿主机同属于一个网络,并且没有接入到互联网。每个虚拟蜜罐主机都可以与蜜罐宿主机交互,虚拟蜜罐主机之间也可以相互交互,但是本地网络无法与外部网络通信,虚拟蜜罐系统完全包含在主机之内,可以通过DHCP服务器为虚拟蜜罐分配IP地址,因此,这种方案与NAT网络一样也只是适于分析和测试目的。4.白定义模式Custom如果希望建立一个复杂的网络,可以使用这种配置方式。例如,希望配置多
个虚拟蜜罐与多个私有虚拟网络通信,就需要配置成这种模式。配置白定义模式需要对网络概念和一些用户级应用程序的实现有很好的理解。2.4.3蜜网1.蜜的定义蜜网是指严格控制并被高度监视的网络上的一组高交互蜜罐的集合。蜜项目使用被称为蜜的二层桥接提供严格的控制和监视,蜜墙提供了一种保护蜜罐完整的和易于管理的解决方案,使攻击者在网络中几乎完全探测不到其存在。通过对进入和流出蜜网的数据类型和数量进行监视和限制,蜜墙可以有效减少被攻陷的蜜罐对蜜网之外的网络造成威胁,以减少控制与实施蜜的相关风险。
另外,虚拟化技术使蜜墙易于安装。在蜜中,蜜罐客户端负责采集入侵者的攻击痕迹,并通过隐蔽的方式传送给蜜罐服务器,蜜罐服务器负责监控流向蜜的流量并分析客户端上传的数据。蜜是蜜罐技术的一种网络化扩展,或者说是分布式蜜罐技术,相对于单一的蜜罐而言,第二章入侵检测与蜜罐技术研究蜜具有更强的真实性,因此对黑客更具有吸引力。此外,蜜网网关控制各个蜜罐主机,能够增强网络的安全性,增加被黑客攻陷的难度。2.蜜网的结构Lance
Spitzer在第一代蜜网的发布报告中阐述了蜜网的三大核心需求,即数据控制、数据捕获以及数据分析【ll】。数据捕获数据捕获是网的首要功能。数据捕获的目地是记录攻击者从扫描、攻击、攻21。陷蜜罐主机,到在蜜罐主机上的活动以至最后离开蜜罐的所有动作【I低交互度蜜罐由于只是模拟真实系统的单一或者部分功能,只允许入侵者和目标系统进行有限的互动,因此数据捕获能力有限,只能采集特定攻击的定量信息。
对于高交互蜜罐而言,则具有很强的数据捕获能力。由于高交互蜜罐作为一个常规的计算机系统,只运行正常的守护进程或者服务,因此每个与高交互蜜罐的通信都可疑的,所以数据捕获工具会记录出入蜜罐的所有网络流量,而且还会记录系统的行为,因此能够捕获到攻击者大量的信息。数据控制蜜罐系统设计的目的就是吸引黑客攻击从而获取有价值的信息,因此蜜罐自身的安全性必须首先得到保证,否则不但获取不到攻击者的信息,反而会成为黑客继续入侵的中转站,因此,数据控制功能在蜜罐系统中具有举足轻重的地位。
数据控制包括两部分功能,首先,允许外部对蜜罐的所有连接请求,即放行攻击者进入蜜罐系统。其次,严格限制蜜罐对外的连接数量,以防止入侵者攻陷蜜罐后通过蜜罐发起对其它系统的攻击。数据分析数据分析是指蜜罐主机将采集到的攻击者的日志信息发送到服务器后,服务器对其进行攻击行为和特征等方面的分析,从而发现黑客的入侵动机、攻击工具等。2l第三章几种入侵检测系统设计方案
第三章几种入侵检测系统设计方案本章对几种典型的入侵检测系统进行分析,首先给出典型的设计方案,重点分析各种设计方案的优缺点,最后融合Snort和蜜罐技术提出了基于虚拟蜜罐的入侵检测系统的设计方案,并进行了可行性分析。3.1基于Snort的入侵检测系统设计方案入侵检测系统根据监控范围可划分为基于网络、基于主机及分布式三类。目前应用较多的是基于网络的IDS,本文以基于网络的IDS为例介绍传统的入侵检测系统设计方案。基于网络的入侵检测系统承担保护某个子网的任务,由遍及网络的传感器组
成。传感器安装在与被监控的服务器在同一个网段的集线器或者交换机上,通过监听网络上到达服务器的网络流量来分析报警。Snort是著名的轻量级的开源的NIDS,经过被不断的重写、功能扩充,Snort已经成为流行的NIDS[17】和事实上的业内标准。图3.1是典型的基于Snort的入侵检测系统解决方案拓扑图。在此解决方案中使用了3个SnortIDS,都部署在网络的关键位置,能够监控各个关键部位处所有设备的网络流量,从而实现深层安全防护。这种基于Snort的NIDS具有如下优点:
I.可以检测到非授权的访问;不会影响业务系统的性能;系统发生故障时,对正常业务的运行没有影响。2.可以检测到网络攻击。SnortIDS监控提供公共服务的服务器子网以及内部业务子网。如果子网中的某台服务器被攻陷,则会成为入侵者继续攻击其它子网的跳板,因此,为了降低风险,需要监控整个网络的所有子网,而业务网络由其它的SnortIDS监控,这样就增加了内网主机的安全以及整个网络的安全。
3.此系统中Snort的组件采用集成式安装,即Snort传感器、数据库服务器层、Web服务器层都安装到一台机器上,这种部署的优点是比三层安装简单、成本低廉,适于小型网络。4.系统风险比HIDS小得多;系统安装方便;实时性好。第三章几种入侵检测系统设计方案图3-1典型的基于Snort的入侵检测系统拓扑随着互联网的不断发展,用户对网络安全的要求也越来越高,这种NIDS的缺点在实际应用中也不断暴露。1.Snort不能捕获所有的网络流量:存在误报和漏报。漏报意味着存在Snort未
能发现的某些攻击行为;误报是指Snort将正常流量误判为攻击行为提交的报警信息。2.NIDS对加密通信束手无策;数据捕获对高速网络无能为力;不能预测命令的执行结果。3.Snort采用集成式安装,Snort应用程序的性能会受到其他组件的影响,导致Snort可能丧失检测入侵的能力,采用分布式安装可以解决此类问题。第三章儿种入侵检测系统设计方案3.2纯蜜罐系统解决方案
目前,应用较多的蜜罐系统是第二代蜜网的网络安全解决方案,该模型通过一个被称为蜜墙n83HoneyWall的网关隔离蜜罐系统与业务网络,所有进入蜜罐系统的流量都必须经过蜜墙,这使它成为蜜罐系统的控制中心n引。网关工作在透明网桥模式,其上部署蜜墙,具有三个网络接口eth0、ethl、eth2,其中,eht0接口连接路由器,ethl接口与蜜罐网络连接,eth2接口连接业务网络,接口ethl、eth2均为混杂模式工作,没有配置真实的IP地址,使业务网络和蜜罐系统处于同一个网段,这使得入侵者不易发现网关,因此具有很大的欺骗性。网
关的eth0接口具有真实的IP地址,方便远程访问,用于管理和维护蜜墙,网络拓扑如图3-2所示。图3-2基于蜜罐的解决方案第三章几种入侵检测系统设计方案该方案具有如下优点:1.该方案的最大优势是可以发现未知攻击手段。通过捕获黑客与蜜罐的交互行为,能够分析出未知的入侵方式、攻击工具等,可以克服Snort网络入侵检测系统的不足,有助于及时发现系统的漏洞。2.所有出入蜜罐系统的通信量必须通过网关,这样在单一网络设备上就可以实
现数据捕获和控制,便于配置管理,增加了蜜罐系统的灵活性。3.网桥没有配置IP协议栈,入侵者不易发现其存在,也就很难觉察自己处于被监控状态。缺点:1.对于加密数据通信,系统通常通过记录入侵者的击键行为从蜜罐系统捕获入侵者的加密数据,但击键记录工具易于被黑客发现,因此存在安全漏洞。2.蜜墙的控制规则较为单一,没有黑名单,白名单以及防护名单等功能,易于被攻陷,进而导致整个系统完全暴漏。3.由于数据捕获和控制都集成在网关上,因此这种拓扑存在性能和可测量性较
差的问题。3.3基于虚拟蜜罐的IDS设计方案的提出及可行性分析对上述基于Snort的入侵检测系统和基于纯蜜罐的安全解决方案分析可知,这两种解决方案具有一定的互补性,技术实现在理论上并没有矛盾。因此,本文将这两种技术融合,并将虚拟机技术引入蜜罐中构造虚拟蜜罐,提出了一种新的网络安全解决方案,该方案既可以通过Snort网络入侵检测系统捕获已知攻击特征的入侵行为,又可以使用虚拟蜜罐系统采集攻击者新式的攻击手段、工具等,从而全面的捕获入侵者的攻击行为,更有效的保护网络安全。基于虚拟蜜罐的入
侵检测系统解决方案如图3-3所示。该方案使用旁路侦听技术和网桥等技术构造了一种基于分布式部署虚拟蜜罐的Snort入侵检测系统模型,尽最大努力做到全面的收集入侵者的信息,克服单独部署Snort与蜜罐系统的不足。在非军事区和内部工作网络都设置虚拟蜜罐系统。网关采用透明网桥模式连接内部网络的虚拟蜜罐系统和工作网络,并安装Snort网络入侵检测系统,对虚拟蜜罐系统的外出数据包进行异常特征匹配,若发现异常数据包则修改其内容或者直接抛弃;当攻击者扫描内部业务工作网络时,虚拟蜜罐可以捕获其攻击行为,并将系统日志发送到同志服务器。
在非军事化区,由于虚拟蜜罐和服务器等处于同一个网段,一旦黑客扫描或者攻击虚拟蜜罐系统,虚拟蜜罐就会通过数据捕获工具采集其攻击行为,并通过第三章几种入侵检测系统设计方案分路器和旁路侦听器将采集的攻击日志汇总到日志服务器。此外,分路器工作在串行模式,将非军事区虚拟蜜罐的通信数据拷贝传递给旁路侦听器,旁路侦听器安装Snort入侵检测系统,当采集到入侵行为时,根据相应的规则做出反应,并记录入侵行为目志并发送给日志服务器。内部网络的网关在捕获到攻击时,也将攻击日志发送到日志服务器,日志服务器上的控制程序对日志进行处理,提供给
网络安全人员分析。由于蜜网关工作在透明网桥模式,没有配置IP地址,同时,分路器只在数据链路层及以下层抛弃传递到侦听端口的数据流量,因此入侵者无法发现网关和旁路侦听器的存在,不能使用网段扫描等手段攻击旁路侦听器以及蜜网网关,增加了系统的安全性。蜜罐图3―3基于虚拟蜜罐系统入侵检测解决方案第三章几种入侵检测系统设计方案该方案具有如下优点:1.该方案的最大优势是既可以捕获已知攻击特征的入侵行为,又可以发现未知
攻击行为。通过Snort的异常规则库匹配非军事化区和内部网络的流量,易于发现己知攻击特征的入侵;通过虚拟蜜罐构成的蜜网,可以吸引黑客攻击,从而捕获其攻击目的、手段等信息,及时获取入侵者新的攻击方式。2.该方案引入虚拟机技术构造虚拟蜜罐主机,并可以方便的构成蜜,既能够节约部署成本,又可以方便管理,增强系统的可维护性。该设计方案的主要不足:1.建设成本较高。2.配置管理比较复杂。第四章基于虚拟蜜罐的入侵检测系统的设计
第四章基于虚拟蜜罐的入侵检测系统的设计4.1系统设计概述本章以上一章的系统模型为基础,对其进行简化设计,不再考虑在内部网络中部署虚拟蜜罐系统,系统简化模型如图4.1所示。邮件服务器web服务器笔记本图4.1系统模型该模型是综合Snort入侵检测系统和蜜罐系统,并引入虚拟机技术构造蜜罐主机而设计的,由网关、蜜罐宿主机以及控制机组成【20】。其中网关设置为透明网
桥,配置三个网络接口,接口cth2连接路由器;cthl连接控制机,用于管理和维护网关,ethO连接一台蜜罐宿主机,该主机通过虚拟化技术虚拟出两个蜜罐主机,构成一个虚拟蜜罐系统。第四章基于虚拟蜜罐的入侵检测系统的设计4.2系统总体框架设计系统由网关、蜜罐宿主机和控制机组成,包括以下四个模块:数据捕获模块、数据控制模块、Snort入侵检测模块以及SnortSnarf数据分析模块,其中,网关Hat运行Red
Linux操作系统,并安装Snort网络入侵检测系统以及数据捕获工具Sebek服务器端程序。蜜罐宿主机通过虚拟化软件VmwareServer虚拟出两个分Hat别运行RedLinux和Windows2000操作系统的虚拟蜜罐主机,同时针对每个虚拟蜜罐都安装Sebek客户端程序,捕获入侵者加密通信以及其它系统活动。为了尽可能全面的采集数据,记录入侵者的攻击过程,在网关和虚拟蜜罐主机上构建了三层数据采集功能,主要针对防火墙日志、网络通信以及系统日志进行采集。1防火墙日志
其作用是记录攻击信息日志,阻止虚拟蜜罐系统向外的网络连接,强制执行预定义的访问控制规则。虚拟蜜罐系统与外界的通讯数据都需要通过防火墙,所以防火墙能够采集到与虚拟蜜罐通讯的所有数据。iptables/netfilter捕获所有进出虚拟蜜罐的数据包,并截取数据包头部的所需信息,匹配用户定义的访问控制规则,然后根据结果执行相应的动作。2网络通讯用作网络嗅探器。Snort网络入侵检测系统安装在网关上,它工作在网络入侵防御模式,同时也采集通讯数据包,在网络接口eth0上获取进出虚拟蜜罐系统的
全部数据存储在本地相关文件中,对匹配Snort定义的入侵特征的数据包进行特定的处理,然后依据配置规则执行相应的操作,比如执行抛弃或者改变数据包内容使攻击失效。3系统日志入侵者一般会对其传输的数据进行加密,如果没有相关的密钥,则数据捕获工具对这种加密数据无能无力,因此,即使虚拟蜜罐主机上安装的数据采集工具能够收集所有的加密数据,也无法理解加密的入侵行为。这些加密通信数据最后一定会在虚拟蜜罐上被解密,为此需要在虚拟蜜罐上配置数据采集工具,以采集
入侵者使用加密进行的入侵活动。本系统,采用基于内核的Sebekt23】来收集数据。Sebek使用UDPt24】进行通信,由客户端和服务器端组成,Sebek客户端运行于虚、socket拟蜜罐的系统内核,负责采集sysnepo.sys能但不是势优,用调核内等够隐藏自己,还可以采集加密后的解密数据;Sebek服务器端部署在网关上,接29第四章基于虚拟蜜罐的入侵检测系统的设计收各个客户端上传的日志信息。Sebek的部署方式是客户端与服务器端在同一网段,客户端将捕获到的入侵者的击键记录等信息伪装成UDP包,通过网卡驱动
而非网络套接字上传,Sebek服务器端通过自定义的原始套接字接收并处理收集到的日志。因此,即使黑客完全攻陷虚拟蜜罐以后,也无法发现这种数据采集工具的存在。Sebek的工作原理如图4.2所示。■■■■&:S蹬一。。疆一1,X蜘,一V。攻击者使用SS咖密/
唐谱1打;#葛Sebek服务器囊捌卜J糊皿…1.蜜罐A蜜罐B图4.2Sebek工作原理示意图4.3系统各模块详细设计本部分详细介绍虚拟蜜罐系统各个关键部分的具体设计,重点在设计防火墙具SnortSnarf这四部分。
4.3.1Sebek数据捕获模块在网关上部署Snoa采集数据的缺陷之一是,不能分析加密的入侵数据包,没有相关密钥,无法解密。此外,Snoa捕获的数据也无法揭示攻击的详细内容。加密后的攻击数据到达虚拟蜜罐后必然解密,才能以明码的形式执行解密后的动作。本文通过收集虚拟蜜罐的系统日志避免解密过程来获取入侵活动的详细信息。1.数据捕获的要求第四章基于虚拟蜜罐的入侵检测系统的设计
利用定时捕获并上传日志的方式,为实现对入侵者攻击行为进行全面分析,收集系统日志需满足以下要求:1采集数据数据采集须具备全面捕获攻击者入侵活动的能力。2数据上传数据上传采用客户端一服务器模式。在虚拟蜜罐上安装数据收集客户端工具,采集目志后传递到服务器端。需要注意的是,客户端上传的日志中不允许含有服务器端的相关信息,目的是防止入侵者发现收据收集工具的存在。3数据接收
数据采集的服务器端要求能够接收到客户端上传的数据,而虚拟蜜罐之间不需要接收各自的上传数据。4隐蔽性日志采集工具必须确保自身的安全性,也就是说,从日志采集、传递到接收都必须做到高度的隐蔽性。2.Sebek数据捕获综合考虑日志采集的这几个需求,采用监视系统Sebek。Sebek试图捕获被监视设备的所有系统活动。它运行于内核并记录系统用户的访问数据,使得系统能够记录加密保护下的键盘记录,还原通过SCP复制的文件,采集登录远程系统
的密码,还原通过Burneye加密的二进制文件,以及完成其它的与取证有关的任务。为了增加Sebek模块的安全性,需要安装cleaner模块,此模块以一种特殊的方式控制模块列表,使其能够隐藏Sebek,这样黑客无法通过查看安装列表发现Sebek的存在,除非攻击者使用暴力手段查看隐藏的内核模块,但在这种情况下,Snort入侵检测模块会捕获攻击者的行为并向管理员告警,管理员能够及时做出处理。??Sebek内核数据捕获
Sebek采用客户端/服务器端模式,Sebek客户端运行于虚拟蜜罐主机的系统内核,密切监视和记录入侵者的活动;Sebek服务器端部署在网关上,接收各个客户端上传的日志信息。为了实现监视,Sebek把某些系统调用替换为自己的函数,据此监控通过这些系统调用存取的数据。Sebek可以跟踪以下系统调用:Read0/readv0/pread:保持跟踪进程读取的所有的数据。Open:保持跟踪进程打开的文件。Socketcall0:保持跟踪所有套接字系统调用。ForkO/vforkO:保持跟踪派生的进程。第四章基于虚拟蜜罐的入侵检测系统的设计以read为例,介绍Sebek改变read0函数实现系统内核调用,如图4.3所示。
KernalUserSpaceSpace图4-3Sebek改变read0"啄i数实现系统内核调用Sebek客户端执行时需要改变系统调用表中的函数指针,使系统read函数调用自己定义的函数,Sebek定义的read函数仅仅调用系统本身的readi函数,然后将数据传递到一个缓存中,并且添加上一个数据报头,将之传递给Sebek服务端。
●Sebek数据上传虚拟蜜罐客户端一旦捕获到入侵行为,必须立即上传到Sebck服务器端。倘若使用常规的传输协议来传递系统日志,攻击者很容易察觉数据捕获工具的存在。为此,Sebek通过将日志伪装成UDP数据包来传递,但这种伪装的UDP数据包并不是由TCP/IP协议栈生成的,而是由Sebek直接生成数据并封包,然后使用网卡驱动程序上传,并不涉及原始套接字等过程,因此,黑客无法通过嗅探器发现此类数据包。Sebek上传数据包的方式如图4.4所示。第四章基于虚拟蜜罐的入侵检测系统的设计图4_4Sebek上传数据包的方式
Sebek上传UDP包的目的IP以及端口号是随意设定的,并通过广播方式发送,处于同一子网的虚拟蜜罐和Sebek服务器端,使用Sebek白定义的套接字进行接收和处理,此功能是将被称之为Sebek报头的内容添加到UDP报头之后实现的,Value,地址字段的值被定义为Sebek报头的关键要素是32bit的魔法值MagicValue共总有2810亿种目的端Vi号加上Sebek魔法值。由于目的端口号和MagicValue
可能的组合,因此,入侵者不易破解。Sebek客户端和服务器端根据Magic决定被隐藏的数据包。Sebek报头结构如图4.5所示。Value系统中其它虚拟蜜罐部署的客户端在监听到MagicValue与自身MagicValue与自相等的UDP数据包时,便抛弃此包,而Sebek服务器端捕获到MagicValue相同的UDP包后,利用魔法数解析数据报。己Magic第四章基于虚拟蜜罐的入侵检测系统的设计032
24816valueMagicVersionTypeCounterTimerMicrosecondsTimeSecondsProcessID
UserIDFileDescriptorCo--andNameLength图4.5Sebek报头结构4.3.2Iptable数据控制模块数据包和对防火墙进行配置。作为过滤IP数据包的一款功能强大的工具,Netfilter/iptables主要用于编辑、添加以及删除防火墙进行数据过滤时所遵循的规
则。这些规则存储在Linux内核中的数据包过滤表中,并被分类保存在规则链中。所谓信息包过滤是指防火墙依据事先确定的规则来判断某个数据包是否合法,或者对具有某个源IP地址、某个目的IP地址以及某种协议的包要做什么,以决定是否接收或者拒绝这些包。Netfilter可以设置某时间区间内允许连接的次数,还允许抛弃所有的数据包来阻断虚拟蜜罐系统与外界的通信。一旦虚拟蜜罐系统有对外连接请求时,Netfilter就开始计数,当达到允许连接次数上限,就切断系统对外的所有连接请求。随后iptables/Netfilter就会重新设置各个时问间隔的对外连接请求数量。防
第四章基于虚拟蜜罐的入侵检测系统的设计火墙只许可符合要求的数据包出入虚拟蜜罐系统,阻断所有不合法的数据通信。当有IP数据包需要通过防火墙时,系统会先判断要将包传递给哪一条链,根据数据包的目的地址不同存在以下三种情况。1数据包的目的IP地址是本机时,Netfilter会将此数据包转发到输入链进行规则匹配,如果合法,该数据包会被交给合适的进程处理;否则,Netfilter丢弃该数据包。2数据包的目的IP地址不是本机时,那么,这个数据包将被传递到转发链
进行转发,如果合法,该包会被交给合适的进程处理;否则,Netfilter丢弃该数据包。3数据包由本地进程生成,则会被传递到输出链进行规则匹配,如果合法,就交给本地合适的进程处理;否则,丢弃该数据包。然后,系统会将包头内容与其所在链中的规则逐条匹配,判断与某一规则是否相符合。如果符合,系统将对该数据包执行此规则指向的特定操作,否则继续匹配链中的下一条规则。如果匹配至最后也没有找到合适的规则,则系统将根据此链的默认操作来处理该数据包。建议的操作是通知系统丢弃此包。图4-6阐述了数据包过滤过程。
。。j8。t即Netfilter/iptables??kiliedDroppedIncoJring包Input链Acce,ted,系统内核处理Forward
进程链tput“outptOutput链edAccep图4-6数据包过滤过程第四章基于虚拟蜜罐的入侵检测系统的设计4.3..3
Snort入侵检测模块利用iptables防火墙控制虚拟蜜罐系统的对外网络连接数量只能阻止虚拟蜜罐系统向外的攻击渠道,但不能排除一个成功的系统攻击引起的一切风险,因为这并不能保证入侵者不会在许可的网络连接范围内对外发动攻击。一旦攻击者使用一个特殊的漏洞在合法的对外连接范围内攻击其它主机,防火墙限制就无能为力了,例如,黑客通过虚拟蜜罐进行Samba远程溢出攻击,因为数据包数量没有达到防火墙的连接门限值,黑客可以利用虚拟蜜罐为跳板对其它系统发动攻
击,这样就对网络安全造成潜在的威胁,所以需要监控虚拟蜜罐外发数据流量,当检测到异常内容时就需要进行处理,比如丢弃或者修改此数据包。本系统使用Snort完成此工作。Snort模块在本系统的功能1部署在网关上,收集并分析出入虚拟蜜罐系统的网络流量,判断是否存在入侵行为。2数据控制功能,监控虚拟蜜罐系统外发数据包,避免入侵者通过虚拟蜜罐对其他系统进行攻击。设计过程中遇到的难题是Snort不支持路由转发,以至Snorrt不能转发修改后
的数据包。因此,本文引入snort来预防这种情况。Snortinline基于Snort,但已经被扩展,允许修改或者丢弃通eueuq.的有所,数函个一册注中块模过的数据包,通过在netfilter/iptables的ip流量都被转发到snortinline,这样通过该工具就可以修改带有已知攻击特征的输出数据,防止对虚拟蜜罐以外的系统发动攻击,例如:rulethatmodifiespackets:Snort――inlinesuspiciousAlret
ip$HONEYNETany-$EXTERNAL_NETanyx86stealthmsg:”shellcodenoop”;02EB02EB021”;content:”IEB00999900replace:”IOOOOl”;any.上通过密网,且目的IP地址此规则表明:在任意端Elip$HONEYNET
any为外部的任意端1:3-$EXTERNALTEN.若倘。查检须必都包据数PI切一的EB02EB0002监控到可疑的数据包content:”IEB021”,则修改为replace:”100x86999900stealth00|,,,并写一条消息msg:”shellcodenoop至0日志文件,这样通过修改入侵者的攻击数据包,可以使攻击失效或者攻击其它系统。第四章基于虚拟蜜罐的入侵检测系统的设计
4.3.4SnortSnarf数据分析模块界面来分析Snort数据的工具,即可以作为一个cron任务定期执行,也可以随时手动执行。SnortSnarf支持以下日志文件格式:Snort报警文件:包含Snort日志的syslog文件:预处理器sppnacstrop.;件文志日的成生预处理器spp2nacstrop.。件文志日的成生SnortSnarf通过访问MySQL数据库对日志文件进行统计、查询、管理,生成一套静态的结果页面,还可以根据签名、IP地址对日志进行分组,并提供Web
链接以获取探测到的攻击的相关信息资源。该模块安装在网关上,通过数据库接W曲服务器,便于远程管理。还需要安装Apache第五章基于虚拟蜜罐的入侵检测系统模拟实现及性能检验第五章基于虚拟蜜罐的入侵检测系统模拟实现及性能检验本章介绍基于虚拟蜜罐的入侵检测系统的模拟实现,重点是探讨虚拟蜜罐系统的数据捕获和数据控制功能。5.1系统环境搭建考虑到实验室环境的限制,对网络拓扑进行了改进,如图5.1所示:雨-_-.-育
图5.1系统拓扑5.1.1硬件环境需求硬件资源受限于具体条件,因为蜜罐宿主机需要虚拟出两台蜜罐,要求配置比较高,网关需要安装Snort入侵检测系统、Sebek服务器以及日记服务器等,第五章基于虚拟蜜罐的入侵检测系统模拟实现及性能检验也需要较高的配置,监控主机和攻击机则没有具体要求。具体配置如下:网关:CPU2.0GHZ以上,内存lG以上,硬盘80G蜜罐宿主机:CPU2.0G以上,内存1G以上,硬盘40G控制机与攻击机:普通PC
5.1.2软件需求本系统软件资源一般是通过网络获取,具体软件如下所示。Hat网关:操作系统为RedLinux9.0;数据库为MySQL,下载地址:v1.0.6,下载地址:http://dev.mysql.com/download/;软件网桥工具为bridge.milsv1.2.7;系统日志收集工具服http://linux-net.osdl.org/index/Bridge;防火墙iptables
Serverv3.03务器Sebek蜜罐宿主机:VMwareServer2.0。2,HatLinux统Windows2000和Red9.0,虚拟机之间采用桥接方式连接,IP地址分别为:192.168.1.8、192.168.1.9,同时在两个虚拟系统中安装系统日志收集工具客户端SebekClientv3。5.2系统模拟实现5.2.1VM_呲。eServer创建虚拟蜜罐及配置VMware
Serverl28】是服务器虚拟化技术,它是VMware的免费版本,可以在一台物理机器上虚拟出多个虚拟机。1.VMwareServer搭建虚拟蜜罐Hat在蜜罐宿主机上安装VMwareServer2.0.2,虚拟出Windows2000和RedLinux9.0两个客户虚拟机,配置IP地址分别为:192.168.1.8、192.168.1.9,从而两个虚拟蜜罐都具有独立的操作系统、IP地址以及相应的软件,具备更强的欺
骗性。蜜罐宿主机与网关的eth2接口相连,并透过桥接方式与各虚拟蜜罐连接,因此网关能够记录和监控进出虚拟蜜罐的网络数据。2.虚拟蜜罐网络配置在本系统中,虚拟蜜罐之间采用桥接方式连接,主机系统为客户虚拟机充当透明网桥,这两个虚拟机都有自己的MAC和IP地址,从而在网络上作为一个完全独立的主机存在,客户虚拟机的虚拟网络接口与主机的网络接口配合,并使用它向本地网络发送数据包,主机系统把所有目的主机是虚拟机的数据包路由到第五章基于虚拟蜜罐的入侵检测系统模拟实现及性能检验
正确的虚拟机,整个过程对虚拟机是透明的,从而攻击者几乎不能分辨主机是否作为虚拟机在运行。5.2.2网桥配置v1.06,网址在软件需求里已给出,编首先,下载配置网桥的工具bridge―utils译后生成brct配置工具。然后,配置接口ethO、ethl、eth2构成网桥。口就成为网桥brl的端口,其中ethO是网关连接路由器的接口,ethl是网关连接虚拟蜜罐系统的接口,eth2是网关连接控制机的接口,由于每个端口都工作在混杂模式,属于数据链路层,所以不需要IP地址。配置如下:
编译bridge.utils下载最新的bridge―utils,本系统用的版本是1.0.6tarzxvfbridge―utils―1.0.6.tar.gzcdbridge-utils-1.0.6./configure一一prefix/usrinstallMake;maketarzxvfbridge-utils一1.0.6.tar.gz
cdbridge―utils―1.0.6cpbridge-utils.spec/usr/src/redhat/SPECSbridge-utils-1.0.6.tar.gz/usffsre/redhaffSOURCEcprpmbuild-ba/usr/src/redhaffSPECS/bridge―utils.speccd/usr/src/redhat/l冲MS/i386rpm_UVhbridge-utils-1.0.6-1.i386.rpmbridge-utils-devel-1.0.6-1.i386.rpm安装bridge-utils结束。使用命名bretl配置网桥如下:
brlbrctladdbr向brO中添加网卡ethO和e