项目8入侵检测技术.ppt
项目8 入侵检测技术,项目1 双机互连对等网络的组建,8.1 项目提出,张先生开办的公司发展势头良好,网站的点击也逐日增加。与此同时,张先生也更加愿意投入资金,添置了防火墙、杀毒软件等来保护自己的网站。尽管如此,他的网站还是会不时遭到莫名的攻击。新来的网络管理员小李了解了该网站的大概情况后,他向张先生建议,只配备防火墙和杀毒软件还不够,还需要一个强大的技术来保证网络的安全,那就是入侵检测技术。在采纳了小李的建议后,网站的安全状况有了明显的好转。,8.2 项目分析,防火墙尽管具有强大的抵御外部攻击的功能,能保护系统不受未经授权访问的侵扰,但却无法阻止来自内部人员的攻击。在网络安全管理中,除了消极被动地阻止攻击行为,还应该主动出击去检测那些正在实施的攻击行为,进一步预防安全隐患的发生。传统的防火墙在工作时,就像深宅大院虽有高大的院墙,却不能挡住小老鼠甚至是家贼的偷袭一样,因为入侵者可以找到防火墙背后可能敞开的后门。,另外,防火墙完全不能阻止来自网络内部的攻击,通过调查发现,65%左右的攻击来自于网络内部,对于企业内部心怀不满的员工来说,防火墙形同虚设。还有,由于性能的限制,防火墙不能提供实时的入侵检测能力,而这一点,对于现在层出不穷的攻击技术来说是至关重要的。最后,防火墙对于病毒也束手无策。因此,以为在Internet入口处部署防火墙系统就足够安全的想法是不切实际的。根据这一问题,人们设计出了入侵检测系统(IDS),IDS可以弥补防火墙的不足,为网络安全提供实时的入侵检测及采取相应的防护手段,如,记录证据用于跟踪、恢复、断开网络连接等。,如果说防火墙是一幢大楼的门卫,那么入侵检测和防御就是这幢大楼里的监视系统。一旦有入侵大楼的行为,或内部人员有越界行为,实时监视系统就会发现情况并发出警报。,8.3 相关知识点,8.3.1 入侵检测系统概述入侵检测系统(Intrusion Detection System,IDS)是一类专门面向网络入侵的安全监测系统,它从计算机网络系统中的若干关键点收集信息,并分析这些信息,查看网络中是否有违反安全策略的行为和遭到袭击的迹象。入侵检测被认为是防火墙之后的第二道安全防线,在不影响网络性能的情况下能对网络进行监测,从而提供对内部攻击、外部攻击和误操作的实时保护。,入侵检测系统的基本功能有以下几个方面。(1)检测和分析用户及系统的活动。(2)审计系统配置和漏洞。(3)识别已知攻击。(4)统计分析异常行为。(5)评估系统关键资源和数据文件的完整性。(6)对操作系统的审计、追踪、管理,并识别用户违反安全策略的行为。,一个成功的入侵检测系统,不但可使系统管理员时刻了解网络系统(包括程序、文件和硬件设备等)的任何变更,还能给网络安全策略的制定提供指南。同时,它应该是管理和配置简单,使非专业人员也能容易地获得网络安全。当然,入侵检测的规模还应根据网络威胁、系统构造和安全需求的改变而改变。入侵检测系统在发现入侵后,应及时做出响应,包括切断网络连接、记录事件和报警等。,目前,入侵检测系统主要以模式匹配技术为主,并结合异常匹配技术。从实现方式上一般分为两种:基于主机和基于网络,而一个完备的入侵检测系统则一定是基于主机和基于网络这两种方式兼备的分布式系统。另外,能够识别的入侵手段数量的多少、最新入侵手段的更新是否及时也是评价入侵检测系统的关键指标。,8.3.2 入侵检测系统的基本结构美国国防部高级研究计划署(DARPA)提出的建议是公共入侵检测框架(CIDF)。CIDF阐述了一个入侵检测系统的通用模型,它将一个入侵检测系统分为以下四个基本组件:事件发生器、事件分析器、响应单元和事件数据库。,(1)事件发生器。负责原始数据采集,并将收集到的原始数据转换为事件,向系统的其他部分提供此事件。收集内容,包括系统、网络数据及用户活动的状态和行为。需要在计算机网络系统中的若干不同的关键点(不同网段和不同主机)收集信息。包括系统和网络的日志文件;网络流量;系统目录和文件的异常变化;程序执行的异常行为等。入侵检测系统很大程度上依赖于收集信息的可靠性和正确性,要保证用来检测网络系统的软件的完整性,特别是入侵检测系统软件本身应具有坚固性,防止被篡改而收集到错误的信息。,(2)事件分析器。接收事件信息,并对其进行分析,判断是否为入侵行为或异常现象,最后将判断的结果转变为告警信息。分析方法主要有以下几种。模式匹配。将收集到的信息与已知的网络入侵和系统误用模式数据库进行比较,从而发现违背安全策略的行为。统计分析。首先给系统对象(如用户、文件、目录、设备等)创建一个统计描述,统计正常使用时的一些测量属性(如访问次数、操作失败次数和延时等);测量属性的平均值和偏差将被用来与网络、系统的行为进行比较,任何测量属性值在正常值范围之外时,就认为有入侵发生。完整性分析(往往用于事后分析)。主要关注某个文件或对象是否被更改。,(3)事件数据库。存放各种中间和最终数据的地方,它可以是复杂的数据库,也可以是简单的文本文件。从事件发生器或事件分析器接收数据,一般会将数据进行较长时间的保存。(4)响应单元。根据告警信息做出反应,是IDS中的主动武器,可做出强烈反应,如切断连接、改变文件属性等,也可以只做出简单的报警。以上四个组件只是逻辑实体,一个组件可能是某台计算机上的一个进程甚至线程,也可能是多个计算机上的多个进程,它们以GIDO(统一入侵检测对象)格式进行数据交换。,8.3.3 入侵检测系统的分类1.根据分析方法和检测原理分类基于异常的入侵检测。首先总结出正常操作应该具有的特征(用户轮廓),当用户活动与正常行为有重大偏离时即被认为是入侵。基于误用的入侵检测。收集非正常操作时的行为特征,建立相关的特征库,当被监测的用户或系统行为与库中的记录相匹配时,系统就认为这种行为是入侵。,2.根据数据来源分类基于主机的入侵检测系统(HIDS)。系统获取数据的依据是系统运行所在的主机,保护的目标也是系统运行所在的主机。基于网络的入侵检测系统(NIDS)。系统获取数据的依据是网络传输的数据包,保护的是网络的正常运行。分布式入侵检测系统(混合型)。将基于网络和基于主机的入侵检测系统有机地结合在一起。,3.根据体系结构分类集中式。集中式结构的IDS可能有多个分布于不同主机上的审计程序,但只有一个中央入侵检测服务器。审计程序把当地收集到的数据踪迹发送给中央服务器进行分析处理。随着网络规模的增加,主机审计程序和服务器之间传送的数据就会剧增,导致网络性能大大降低。并且一旦中央服务器出现问题,整个系统就会陷入瘫痪。分布式。分布式结构的IDS就是将中央检测服务器的任务分配给多个基于主机的IDS。这些IDS不分等级,各司其职,负责监控当地主机的某些活动。所以,其可伸缩性、安全性都得到提高,但维护成本也高了很多,并且增加了所监控主机的工作负荷。,4.根据工作方式分类离线检测。离线检测又称脱机分析检测系统,就是在行为发生后,对产生的数据进行分析,而不是在行为发生的同时进行分析,从而检测入侵活动,它是非实时工作的系统。如对日志的审查,对系统文件的完整性检查等都属于这种。一般而言,脱机分析也不会间隔很长时间,所谓的脱机只是与联机相对而言的。在线检测。又称为联机分析检测系统,就是在数据产生或者发生改变的同时对其进行检查,以便发现攻击行为,它是实时联机检测系统。这种方式一般用于网络数据的实时分析,有时也用于实时主机审计分析。它对系统资源的要求比较高。,8.3.4 基于网络的IDS和基于主机的IDS1.基于网络的入侵检测系统基于网络的入侵检测系统(NIDS)放置在比较重要的网段内,不停地监视网段中的各种数据包。对每一个数据包进行特征分析。如果数据包与系统内置的某些规则吻合,入侵检测系统就会发出警报甚至直接切断网络连接。目前,大部分入侵检测系统是基于网络的。一个典型的NIDS如图8-2所示,一个传感器被安装在防火墙外以探查来自Internet的攻击。另一个传感器安装在网络内部以探查那些已穿透防火墙的入侵以及内部网络入侵和威胁。,基于网络的入侵检测系统使用原始网络数据包作为数据源。基于网络的IDS通常利用一个运行在混杂模式下的网络适配器来实时监视并分析通过网络的所有数据包。一旦检测到了攻击行为,NIDS的响应模块就提供多种选项用于通知、报警,并对攻击行为采取相应的措施。采取的措施因系统而异,但通常都包括通知管理员、中断连接并且/或为法庭分析和证据收集而做的会话记录。基于网络的IDS已经广泛成为安全策略的实施中的重要组件,它有许多仅靠基于主机的入侵检测系统无法提供的优点。,(1)拥有成本较低。基于网络的IDS可在几个关键访问点上进行策略配置,以观察发往多个系统的网络通信。所以它不要求在许多主机上装载并管理软件。由于需监测的点较少,因此对于一个公司的环境来说,拥有成本很低。,(2)检测基于主机的IDS漏掉的攻击。基于网络的IDS检查所有数据包的头部从而发现恶意的和可疑的行为迹象。基于主机的IDS无法查看数据包的头部,所以它无法检测到这一类型的攻击。例如,许多来自于IP地址的拒绝服务型(DoS)和碎片包型(Teardrop)的攻击只能在它们经过网络时,检查包的头部才能被发现。这种类型的攻击都可以在基于网络的IDS中通过实时监测网络数据包流而被发现。基于网络的IDS可以检查有效负载的内容,查找用于特定攻击的指令或语法。例如,通过检查数据包有效负载可以查到黑客软件,而使正在寻找系统漏洞的攻击者毫无察觉。由于基于主机的IDS不检查有效负载,所以不能辨认有效负载中所包含的攻击信息。,(3)攻击者不易转移证据。基于网络的IDS使用正在发生的网络通信进行实时攻击的检测。所以攻击者无法转移证据。被捕获的数据不仅包括攻击的方法,而且还包括可识别的黑客身份及对其进行起诉的信息。许多黑客都熟知审计记录,他们知道如何操纵这些文件掩盖他们的入侵痕迹,如何阻止需要这些信息的基于主机的IDS去检测入侵。,(4)实时检测和响应。基于网络的IDS可以在恶意及可疑的攻击发生的同时将其检测出来,并做出更快的通知和响应。例如,一个基于TCP的对网络进行的拒绝服务攻击可以通过将基于网络的IDS发出TCP复位信号,在该攻击对目标主机造成破坏前,将其中断。而基于主机的系统只有在可疑的登录信息被记录下来以后才能识别攻击并做出反应。而这时关键系统可能早已遭到了破坏,或是运行基于主机的IDS的系统已被摧毁。实时IDS可根据预定义的参数做出快速反应,这些反应包括将攻击设为监视模式以收集信息,立即中止攻击等。,(5)检测未成功的攻击和不良意图。基于网络的IDS增加了许多有价值的数据,以判别不良意图。即便防火墙可以正在拒绝这些尝试,位于防火墙之外的基于网络的IDS可以查出躲在防火墙后的攻击意图。基于主机的IDS无法查到从未攻击到防火墙内主机的未遂攻击,而这些丢失的信息对于评估和优化安全策略是至关重要的。,(6)操作系统无关性。基于网络的IDS作为安全监测资源,与主机的操作系统无关。与之相比,基于主机的IDS必须在特定的、没有遭到破坏的操作系统中才能正常工作,生成有用的结果。,基于网络的入侵检测系统也有弱点:只检查直接连接网段的通信,不能检测在不同网段的网络包,在交换以太网环境中会出现监测范围的局限;很难实现一些复杂的需要大量计算与分析时间的攻击检测;处理加密的会话过程较困难。,2.基于主机的入侵检测系统基于主机的入侵检测系统(HIDS)通常是安装在被重点检测的主机之上,主要是对该主机的网络实时连接以及系统审计日志进行智能分析和判断。如果其中主体活动十分可疑(特征或违反统计规律),入侵检测系统就会采取相应措施。基于主机的IDS使用验证记录,自动化程度大大提高,并发展了精密的可迅速做出响应的检测技术。通常,基于主机的IDS可检测系统、事件和Window下的安全记录以及UNIX环境下的系统记录。当有文件发生变化时,IDS将新的记录条目与攻击标记相比较,看它们是否匹配。如果匹配,系统就会向管理员报警并向别的目标报告,以采取措施。,基于主机的IDS在发展过程中融入了其它技术。对关键系统文件和可执行文件的入侵检测的一个常用方法,是通过定期检查校验和来进行的,以便发现意外的变化。反应的快慢与轮询间隔的频率有直接的关系。许多IDS产品都是监听端口的活动,并在特定端口被访问时向管理员报警。这类检测方法将基于网络的入侵检测的基本方法融入到基于主机的检测环境中。尽管基于主机的入侵检查系统不如基于网络的入侵检测系统快捷,但它确实具有基于网络的IDS无法比拟的优点。这些优点包括:更好的辨识分析、对特殊主机事件的紧密关注及低廉的成本。,基于主机的入侵检测系统有如下优点。(1)确定攻击是否成功。由于基于主机的IDS使用含有已发生事件信息,它们可以比基于网络的IDS更加准确地判断攻击是否成功。在这方面,基于主机的IDS是基于网络的IDS的完美补充,网络部分可以尽早提供警告,主机部分可以确定攻击成功与否。,(2)监视特定的系统活动。基于主机的IDS监视用户和访问文件的活动,包括文件访问、改变文件权限,试图建立新的可执行文件,或者试图访问特殊的设备。例如,基于主机的IDS可以监视所有用户的登录及下网情况,以及每位用户在连接到网络以后的行为。对于基于网络的系统要做到这个程度是非常困难的。,(3)能够检查到基于网络的系统检查不出的攻击。基于主机的系统可以检测到那些基于网络的系统察觉不到的攻击。例如,来自主要服务器键盘的攻击不经过网络,所以可以躲开基于网络的入侵检测系统。,(4)适用于被加密的和交换的环境。由于基于主机的入侵检测系统安装在遍布企业的各种主机上,它们比基于网络的入侵检测系统更加适用于被加密的和交换的环境。,(5)近于实时的检测和响应。尽管基于主机的入侵检测系统不能提供真正实时的反应,但如果应用正确,反应速度可以非常接近实时。从操作系统做出记录到基于主机的系统得到辨识结果之间的这段时间是一段延迟,但大多数情况下,在破坏发生之前,系统就能发现入侵者,并中止他的攻击。,(6)不要求额外的硬件设备。基于主机的入侵检测系统存在于现行网络结构之中,包括文件服务器、Web服务器及其它共享资源,这些使得基于主机的系统效率很高,因为它们不需要在网络上另外安装登记、维护及管理硬件设备。,(7)记录花费更加低廉。基于网络的入侵检测系统比基于主机的入侵检测系统要昂贵的多。,基于主机的入侵检测系统也有弱点:依赖于服务器固有的日志与监视能力,而主机审计信息易受攻击,入侵者可设法逃避审计;全面部署HIDS代价较大;除了监测自身的主机以外,不监测网络上的情况;HIDS的运行或多或少会影响主机的性能;只对主机的特定用户、应用程序执行动作和日志进行检测,所检测到的攻击类型有限。,基于主机和基于网络的入侵检测系统都有其优势和劣势,两种方法互为补充。一种真正有效的入侵检测系统应将二者结合。基于主机和基于网络的入侵检测系统的比较见表8-1,8.4 项目实施,任务:SessionWall入侵检测软件的使用1.任务目标(1)掌握SessionWall-3的使用方法。(2)理解入侵检测系统的作用。2.任务内容(1)SessionWall-3的使用。(2)自定义QQ服务。,8.4 项目实施,3.完成任务所需的设备和软件(1)Windows Server 2000 虚拟机1台(主机A),Windows XP计算机1台(主机B)。(2)SessionWall-3软件1套。(3)X-Scan扫描软件1套。(4)UDP Flood攻击软件1套。,4.任务实施步骤(1)SessionWall-3的使用在Windows Server 2000虚拟机(主机A)中安装SessionWall-3软件,另一Windows XP计算机(主机B)用来对主机A实施X-Scan 和UDP Flood攻击。步骤1:在Windows Server 2000虚拟机(主机A)上安装并启动SessionWall-3软件,启动后的主窗口如图8-3所示。,步骤2:在另一Windows XP计算机(主机B)上启动X-Scan扫描软件,对主机A进行各种安全扫描。步骤3:在主机A上可看到报警消息图标和安全冲突图标在不停地闪烁,并发出报警声。选择菜单“View”“Alert Messages”命令,打开如图8-4所示的对话框,该对话框中列出了各种报警消息。,步骤4:查看违反安全规则的行为。SessionWall-3中内置了许多预定义的违反安全规则的行为,当检测到这些行为发生的时候,系统会在“Detected security violations”对话框中显示这些行为。在工具栏上单击“show security violations”按钮,打开如图8-5所示的对话框,该对话框中列出了检测到的违反安全规则的行为。,步骤5:在主机B上对主机A的80端口发起UDP Flood攻击,查看主机A的最近活动情况(Recent activity),如图8-6所示,可见主机A在80端口收到了大量的UDP攻击数据包。,(2)自定义QQ服务SessionWall-3已经预定义了许多服务,用户根据需要也可以自定义服务,如QQ服务。步骤1:选择菜单“settings”“Definitions”命令,打开“Definitions”窗口,在“Services”选项卡中显示了系统预定义的服务,如图8-7所示。步骤2:单击“Add”按钮,打开“Service Properties”对话框,设置服务名称为QQ,协议为UDP,端口号为8000,如图8-8所示,单击“OK”按钮,返回“Definitions”窗口,再单击“确定”按钮。,步骤3:定义好QQ服务后,当网络中存在QQ连接时,就会被系统监测到,如图8-9所示。,8.5 拓展提高:入侵防护系统,随着网络入侵事件的不断增加和黑客攻击水平的不断提高,一方面网络遭受攻击的速度日益加快,另一方面网络受到攻击做出响应的时间却越来越滞后。解决这一矛盾,传统的防火墙或入侵检测技术(IDS)显得力不从心,这就需要引入一种全新的技术入侵防护系统(Intrusion Prevention System,IPS)。,1.IPS的原理防火墙是实施访问控制策略的系统,对流经的网络流量进行检查,拦截不符合安全策略的数据包。入侵检测技术(IDS)通过监视网络或系统资源,寻找违反安全策略的行为或攻击迹象,并发出报警。传统的防火墙旨在拒绝那些明显可疑的网络流量,但仍然允许某些流量通过,因此防火墙对于很多入侵攻击仍然无计可施。绝大多数 IDS 系统都是被动的,而不是主动的。也就是说,在攻击实际发生之前,它们往往无法预先发出警报。,而入侵防护系统(IPS)则倾向于提供主动防护,其设计宗旨是预先对入侵活动和攻击性网络流量进行拦截,避免其造成损失,而不是简单地在恶意流量传送时或传送后才发出警报。IPS 是通过直接嵌入到网络流量中实现这一功能的,即通过一个网络端口接收来自外部系统的流量,经过检查确认其中不包含异常活动或可疑内容后,再通过另外一个端口将它传送到内部系统中。这样一来,有问题的数据包,以及所有来自同一数据流的后续数据包,都能在IPS设备中被清除掉。,2.IPS的分类(1)基于主机的入侵防护系统(HIPS)。在技术上,HIPS采用独特的服务器保护途径,由包过滤、状态包检测和实时入侵检测组成分层防护体系。这种体系能够在提供合理吞吐率的前提下,最大限度地保护服务器的敏感内容,既可以以软件形式嵌入到应用程序对操作系统的调用当中,拦截针对操作系统的可疑调用,提供对主机的安全防护,也可以以更改操作系统内核程序的方式,提供比操作系统更加严谨的安全控制机制。,由于HIPS工作在受保护的主机/服务器上,它不但能够利用特征和行为规则检测,阻止诸如缓冲区溢出之类的已知攻击,还能够防范未知攻击,防止针对Web页面、应用和资源的未授权的任何非法访问。HIPS与具体的主机/服务器操作系统平台紧密相关,不同的平台需要不同的软件代理程序。,(2)基于网络的入侵防护(NIPS)。NIPS通过检测流经的网络流量,提供对网络系统的安全保护。由于它采用在线连接方式,所以一旦辨识出入侵行为,NIPS就可以去除整个网络会话,而不仅仅是复位会话。同样由于实时在线,NIPS需要具备很高的性能,以免成为网络的瓶颈,因此NIPS通常被设计成类似于交换机的网络设备,提供线速吞吐速率以及多个网络端口。,3.IDS和IPS的关系绝大多数 IDS 系统都是被动的,而不是主动的。在攻击实际发生之前,IDS往往无法预先发出警报。IPS 则倾向于提供主动防护,其设计宗旨是预先对入侵活动和攻击性网络流量进行拦截,避免其造成任何损失,而不是简单地在恶意流量传送时或传送后才发出警报。这也是IPS市场启动的根源。,在主动防御渐入人心之时,担当网络警卫的IDS的报警作用更加重要。尽管IDS功过参半,但是IDS的报警功能仍是主动防御系统所必需的,也许IDS的产品形式会消失,但是IDS的检测功能并不会因形式的消失而消失,只是逐渐被转化和吸纳到其他的安全设备当中。IDS与IPS技术还会并驾齐驱很长一段时间。据市场研究公司Infonetics Research 发布的数据显示,到2006年,全球IDS/IPS 市场收入已超过13 亿美元。,其实IDS 的发展道路可以借鉴防火墙的发展。防火墙早期从包过滤、应用代理发展起来,是从网络层应用及应用层解释开始,一步步关心起具体的协议。包过滤关注分组的包头,应用代理关心分组的有效载荷,状态检测开始关注分组之间的关系。从安全设备发展的角度,这些并未发展到头,因为对有效载荷的分析还比较弱。IDS从特征匹配开始到协议分析,走的也是这条路,只是 IDS走到协议分析,也算是比较深入了,但网络上的应用太复杂了,技术挑战性太大,依照当前的用法与定位,IDS长期很难生存。但它对分组有效载荷的分析有自己的优势,这种技术可以用于所有的网络安全设备。IPS 其实解决的也是边界安全问题,它已开始像是防火墙的升级版了。,由此来看,IDS和IPS 将会有着不同的发展方向和职责定位。IDS 短期内不会消亡,IPS 也不会完全取代IDS的作用。虽然IPS 市场前景被绝大多数人看好,市场成熟指日可待,但要想靠蚕食IDS 市场来扩大市场份额,对于IPS 来说还是很艰难的。,