1、从安全性的角度看,所有试图破坏系统安全性的行为都称为攻击,入侵就是成功的攻击。当一次入侵是成功的时候,一次入侵就发生了。或着说,系统藉以保障安全的第一道防线已经被攻破了。所以,只从防御的角度被动地构筑安全系统是不够的。安全监控是从一种积极的防御措施。它通过对系统中所发生的现象的记录,分析系统出现了什么异常,以便采取相应的对策。l4.1 4.1 入侵检测系统概述入侵检测系统概述 l4.2 4.2 入侵检测系统的基本结构入侵检测系统的基本结构 l4.3 4.3 入侵检测系统的实现入侵检测系统的实现 l4.4 4.4 入侵检测系统的标准化入侵检测系统的标准化 l4.5 4.5 网络诱骗网络诱骗 l4
2、.6 4.6 安全审计安全审计 l习题习题 入侵检测(Intrusion Detection System,IDS)就是一种主动安全保护技术。入侵检测像雷达警戒一样,在不影响网络性能的前提下,对网络进行警戒、监控,从计算机网络的若干关键点收集信息,通过分析这些信息,看看网络中是否有违反安全策略的行为和遭到攻击的迹象,从而扩展了系统管理员的安全管理能力,提高了信息安全基础结构的完整性。IDS是对计算机和网络系统资源上的恶意使用行为进行识别和响应的处理,它最早于1980年4月由James P.Anderson在为美国空军起草的技术报告Computer Security Threat Monitor
3、ing and Surveillance(计算机安全威胁监控与监视)中提出。他提出了一种对计算机系统风险和威胁的分类方法,将威胁分为外部渗透外部渗透、内部渗透内部渗透和不法行不法行为为;提出了利用审计跟踪数据,监视入侵活动的思想。“入侵”(Intrusion)是一个广义的概念,不仅包括发起攻击的人(包括黑客)取得超出合法权限的行为,也包括收集漏洞信息,造成拒绝访问(Denial of Service)等对系统造成危害的行为。入侵检测(Intrusion Detection)就是对入侵行为的发觉。它通过对计算机网络等信息系统中若干关键点的有关信息的收集和分析,从中发现系统中是否存在有违反安全规则
4、的行为和被攻击的迹象。入侵检测系统(Intrusion Detection System,IDS)就是进行入侵检测的软件和硬件的组合。入侵检测作为一种积极主动的安全防护技术,提供了对内部攻击、外部入侵检测作为一种积极主动的安全防护技术,提供了对内部攻击、外部攻击和误操作的实时保护,被认为是防火墙后面的第二道安全防线。攻击和误操作的实时保护,被认为是防火墙后面的第二道安全防线。具体说来,入侵检测系统的主要功能有:具体说来,入侵检测系统的主要功能有:监视并分析用户和系统的行为;监视并分析用户和系统的行为;审计系统配置和漏洞;审计系统配置和漏洞;评估敏感系统和数据的完整性;评估敏感系统和数据的完整性
5、;识别攻击行为、对异常行为进行统计;识别攻击行为、对异常行为进行统计;自动收集与系统相关的补丁;自动收集与系统相关的补丁;审计、识别、跟踪违反安全法规的行为;审计、识别、跟踪违反安全法规的行为;使用诱骗服务器记录黑客行为;使用诱骗服务器记录黑客行为;实时入侵检测实时入侵检测实时入侵检测在网络的连接过程中进行,通过攻击识别模块对用户当前的操作进行分析,一旦发现攻击迹象就转入攻击处理模块,如立即断开攻击者与主机的连接、收集证据或实施数据恢复等。如图图4.14.1所示,这个检测过程是反复循环进行的。当前操作当前操作入侵检测入侵检测攻击识别模块攻击识别模块攻击处理模块攻击处理模块是攻击否是攻击否监测监
6、测NY图图4.1 实时入侵检测过程实时入侵检测过程事后入侵检测是根据计算机系统对用户操作所做的历史审计记录,判断是否发生了攻击行为,如果有,则转入攻击处理模块处理。事后入侵检测通常由网络管理人员定期或不定期地进行的。图图4.2为事后入侵检测的过程。历史记录历史记录入侵监测入侵监测攻击处理模块攻击处理模块攻击识别模块攻击识别模块是攻击否是攻击否返回返回NY图图4.2 事后入侵检测的过程事后入侵检测的过程1.IDES模型模型1980年James P.Anderson为美国空军起草的技术报告Computer Security Threat Monitoring and Surveillance仅仅提
7、出了关于入侵检测一些概念。1984年到1986年间,乔治敦大学的Dorothy Denning和SRI/CSI(SRI公司的计算机科学实验室)的Peter Neumann研究出了一个如图图4.34.3所示的实时入侵检测系统模型IDES(入侵检测专家系统)。审计记录审计记录/网络数据包等网络数据包等事件产生器事件产生器行为特征模块行为特征模块规则模块规则模块规则更新规则更新异常记录异常记录变量阈值变量阈值特征表更新特征表更新事件事件图图4.3 Denning的的IDES模型模型这个模型的结构特点:这个模型的结构特点:事件产生器从审计记录事件产生器从审计记录/网络数据包以及其他可视行为中获网络数据
8、包以及其他可视行为中获取事件,构成检测的基础。取事件,构成检测的基础。行为特征表是整个检测系统的核心,它包含了用于计算用行为特征表是整个检测系统的核心,它包含了用于计算用户行为特征的所有变量。这些变量可以根据具体采用的统计户行为特征的所有变量。这些变量可以根据具体采用的统计方法以及事件记录中的具体动作模式定义,并根据匹配上的方法以及事件记录中的具体动作模式定义,并根据匹配上的记录数据进行变量值的更新。一旦有统计变量的值达到了异记录数据进行变量值的更新。一旦有统计变量的值达到了异常程度,行为特征表即产生异常记录,并采取相应的措施。常程度,行为特征表即产生异常记录,并采取相应的措施。规则模块可以由
9、系统安全策略、入侵模式等赞成。它一方规则模块可以由系统安全策略、入侵模式等赞成。它一方面为判断是否入侵提供参考标准;另一方面,可以根据事件面为判断是否入侵提供参考标准;另一方面,可以根据事件记录、异常记录以及有效日期等控制并更新其他模块的状态。记录、异常记录以及有效日期等控制并更新其他模块的状态。这个模型还独立于特定的系统平台、应用环境和入侵类型,这个模型还独立于特定的系统平台、应用环境和入侵类型,为构建入侵检测系统提供了一个通用框家。为构建入侵检测系统提供了一个通用框家。IDES模型的改进模型的改进1988年,SRI/CSI的Teresa Luunt等人改进了Denning的模型,开发出了如
10、图图4.44.4所示的IDES。该系统包括一个异常检测器(用于统计异常模型建立)和一个策略规则专家系统(基于规则的特征分析检测)。审审计计数数据据源源模式匹配器模式匹配器轮廓特征引擎轮廓特征引擎异常检测器异常检测器策略规则策略规则警告警告/报告报告产产 生生 器器图图4.4 IDES结构框架结构框架2.DIDS模型模型1988年,莫里斯蠕虫的爆发,引起了军界、学者和企业界对网络安全的高度重视。美国空军、国家安全局和能源部共同资助空军密码支持中心、劳抡斯利弗摩尔国家实验室、加州大学分校、Haystack实验室开展对分布式入侵检测系统(DIDS)的研究。DIDS将基于主机和基于网络的检测方法集成到
11、一起,形成如图图4.54.5所示的模型。DIDS检测模型采用了分层结构,包括了数据、时间、主体、上下文、威胁、安全状态等6层,成为分布式入侵检测系统发展史上的一个里程碑。DEDS控制器控制器主主 机机 代代 理理主主 机机 监监 视视 器器主机事件发生器主机事件发生器LAN 代代 理理LAN监监 视视 器器LAN事件发生器事件发生器图图4.5 DIDS结构框架结构框架1.优点优点采用入侵检测系统和漏洞评估工具带来的好处有如下一些:采用入侵检测系统和漏洞评估工具带来的好处有如下一些:提高了信息系统安全体系其他部分的完整性;提高了信息系统安全体系其他部分的完整性;提高了系统的监察能力;提高了系统的
12、监察能力;可以跟踪用户从进入到退出的所有活动或影响;可以跟踪用户从进入到退出的所有活动或影响;能够识别并报告数据文件的改动;能够识别并报告数据文件的改动;可以发现系统配置的错误,并能在必要时予以改正;可以发现系统配置的错误,并能在必要时予以改正;可以识别特定类型的攻击,并进行报警,作出防御响应;可以识别特定类型的攻击,并进行报警,作出防御响应;可以使管理人员最新的版本升级添加到程序中;可以使管理人员最新的版本升级添加到程序中;允许非专业人员从事系统安全工作;允许非专业人员从事系统安全工作;可以为信息系统安全提供指导。可以为信息系统安全提供指导。2.局限局限但是,与其他任何工具一样,入侵检测也不
13、是万能的,它们的使用存但是,与其他任何工具一样,入侵检测也不是万能的,它们的使用存在如下局限:在如下局限:在无人干预的情形下,无法执行对攻击的检测;在无人干预的情形下,无法执行对攻击的检测;无法感知组织(公司)安全策略的内容;无法感知组织(公司)安全策略的内容;不能弥补网络协议的漏洞;不能弥补网络协议的漏洞;不能弥补系统提供信息的质量或完整性问题;不能弥补系统提供信息的质量或完整性问题;不能分析网络繁忙时的所有事物;不能分析网络繁忙时的所有事物;不能总是对数据包级的攻击进行处理;不能总是对数据包级的攻击进行处理;入侵检测是防火墙的合理补充,帮助系统对付来自外部或内部的攻击,扩展了系统管理员的安
14、全管理能力(如安全审计、监视、攻击识别及其响应),提高了信息安全基础结构的完整性。如图图4.6所示,入侵检测系统的主要工作就是从信息系统的若干关键点上收集信息,然后分析这些信息,用来得到网络中有无违反安全策略的行为和遭到袭击的迹象。数据收集数据收集数据分析数据分析结果处理结果处理数据数据数据数据事件事件结果结果图图4.6 入侵检测系统的通用模型入侵检测系统的通用模型入侵检测系统这个模型比较粗略。但是它表明数据收集、数据分析和处理响应是一个入侵检测系统的最基本部件。1.数据收集的内容数据收集的内容入侵检测的第一步是在信息系统的一些关键点上收集信息。这入侵检测的第一步是在信息系统的一些关键点上收集
15、信息。这些信息就是入侵检测系统的输入数据。些信息就是入侵检测系统的输入数据。入侵检测系统收集的数据一般有如下入侵检测系统收集的数据一般有如下4个方面:个方面:(1)主机和网络日志文件)主机和网络日志文件(2)目录和文件中的不期望的改变)目录和文件中的不期望的改变(3)程序执行中的不期望行为)程序执行中的不期望行为(4)物理形式的入侵信息)物理形式的入侵信息(1 1)主机和网络日志文件)主机和网络日志文件主机和网络日志文件中记录了各种行为类型,每种行为类型又包含不同的信息,例如记录“用户活动”类型的日志,就包含登录、用户ID改变、用户对文件的访问、授权和认证信息等内容。这些信息包含了发生在主机和
16、网络上的不寻常和不期望活动的证据,留下黑客的踪迹。通过查看日志文件,能够发现成功的入侵或入侵企图,并很快地启动响应的应急响应程序。因此,充分利用主机和网络日志文件信息是检测入侵的必要条件。(2 2)目录和文件中的不期望的改变)目录和文件中的不期望的改变网络环境中的文件系统包含很多软件和数据文件。包含重要信息的文件和私密数据文件经常是黑客修改或破坏的目标。黑客经常替换、修改和破坏他们获得访问权的系统上的文件,同时为了隐蔽系统中他们的活动痕迹,还会尽力替换系统程序或修改系统日志文件。因此,目录和文件中的不期望的改变(包括修改、创建和删除),特别是那些正常情况下限制访问的对象,往往就是入侵产生的指示
17、和信号。(3 3)程序执行中的不期望行为)程序执行中的不期望行为每个在系统上执行的程序由一到多个进程来实现。每个进程都运行在特定权限的环境中,的行为由它运行时执行的操作来表现,这种环境控制着进程可访问的系统资源、程序和数据文件等;操作执行的方式不同,利用的系统资源也就不同。操作包括计算、文件传输、设备以及与网络间其它进程的通讯。黑客可能会将程序或服务的运行分解,从而导致它的失败,或者是以非用户或管理员意图的方式操作。因此,一个进程出现了不期望的行为可能表明黑客正在入侵你的系统。(4 4)物理形式的入侵信息)物理形式的入侵信息黑客总是想方设法(如通过网络上的由用户私自加上去的不安全未授权设备)去
18、突破网络的周边防卫,以便能够在物理上访问内部网,在内部网上安装他们自己的设备和软件。例如,用户在家里可能安装Modem以访问远程办公室,那么这一拨号访问就成了威胁网络安全的后门。黑客就会利用这个后门来访问内部网,从而越过了内部网络原有的防护措施,然后捕获网络流量,进而攻击其它系统,并偷取敏感的私有信息等等。2.2.入侵检测系统的数据收集机制入侵检测系统的数据收集机制准确性、可靠性和效率是入侵检测系统数据收集机制基本指标,在IDS中占据着举足轻重的位置。如果收集的数据时延较大,检测就会失去作用;如果数据不完整,系统的检测能力就会下降;如果由于错误或入侵者的行为致使收集的数据不正确,IDS就会无法
19、检测某些入侵,给用户以安全的假象。(1 1)基于主机的数据收集和基于网络的数据收集)基于主机的数据收集和基于网络的数据收集基于主机的IDS是在每台要保护的主机后台运行一个代理程序,检测主机运行日志中记录的未经授权的可疑行径,检测正在运行的进程是否合法并及时做出响应。基于网络的入侵检测系统是在连接过程中监视特定网段的数据流,查找每一数据包内隐藏的恶意入侵,对发现的入侵做出及时的响应。在这种系统中,使用网络引擎执行监控任务。如图图4.7所示,网络引擎所处的位置决定了所监控的网段子网子网1子网子网2子网子网3控制台控制台防防火火墙墙 Web服务器服务器域域 名名服务器服务器 Internet网络引擎
20、网络引擎内部网内部网图图4.7 基于网络的基于网络的IDS中网络引擎的配置中网络引擎的配置如图图4.7所示,网络引擎所处的位置决定了所监控的网段。网络引擎配置在防火墙内,可以监测渗透过防火墙的攻击;网络引擎配置在防火墙外的非军事区,可以监测对防火墙的攻击;网络引擎配置在内部网络的各临界网段,可以监测内部的攻击。控制台用于监控全网络的网络引擎。为了防止假扮控制台入侵或拦截数据,在控制台与网络引擎之间应创建安全通道。基于网络的入侵检测系统主要用于实时监控网络关键路径。它的隐蔽性基于网络的入侵检测系统主要用于实时监控网络关键路径。它的隐蔽性好、视野宽、侦测速度快、占用资源少、实施简便,并且还可以用单
21、独好、视野宽、侦测速度快、占用资源少、实施简便,并且还可以用单独的计算机实现,不增加主机负担。但难于发现所有数据包,对于加密环的计算机实现,不增加主机负担。但难于发现所有数据包,对于加密环境无能为力,用在交换式以太网上比较困难。境无能为力,用在交换式以太网上比较困难。基于主机的基于主机的IDS提供了基于网络的提供了基于网络的IDS不能提供的一些功能,如二进制完不能提供的一些功能,如二进制完整性检查、记录分析和非法进程关闭等。同时由于不受交换机隔离的影整性检查、记录分析和非法进程关闭等。同时由于不受交换机隔离的影响,在交换网络中非常有用。但是它对网络流量不敏感,并且由于运行响,在交换网络中非常有
22、用。但是它对网络流量不敏感,并且由于运行在后台,不能访问被保护系统的核心功能(不能将攻击阻挡在协议层之在后台,不能访问被保护系统的核心功能(不能将攻击阻挡在协议层之外)。它的内在结构没有任何束缚,并可以利用操作系统提供的功能,外)。它的内在结构没有任何束缚,并可以利用操作系统提供的功能,结合异常分析,较准确地报告攻击行为,而不是根据网上收集到的数据结合异常分析,较准确地报告攻击行为,而不是根据网上收集到的数据包去猜测发生的事件。但是它们往往要求为不同的平台开发不同的程序,包去猜测发生的事件。但是它们往往要求为不同的平台开发不同的程序,从而增加了主机的负担。从而增加了主机的负担。总地看来,单纯地
23、使用基于主机的入侵检测或基于网络的入侵检测,都总地看来,单纯地使用基于主机的入侵检测或基于网络的入侵检测,都会造成主动防御体系的不全面。但是,由于它们具有互补性,所以将两会造成主动防御体系的不全面。但是,由于它们具有互补性,所以将两种产品结合起来,无缝地部署在网络内,就会构架成综合了两者优势的种产品结合起来,无缝地部署在网络内,就会构架成综合了两者优势的主动防御体系,即可以发现网段中的攻击信息,又可以从系统日志中发主动防御体系,即可以发现网段中的攻击信息,又可以从系统日志中发现异常情况。这种系统一般为分布式,由多个部件组成。现异常情况。这种系统一般为分布式,由多个部件组成。基于主机和基于网络的
24、数据收集之间的比较基于主机和基于网络的数据收集之间的比较(2 2)分布式与集中式数据收集机制)分布式与集中式数据收集机制分布式IDS收集的数据来自一些固定位置,而与受监视的网元数量无关。集中式IDS收集的数据来自一些与受监视的网元数量有一定比例关系的位置。(3 3)直接监控和间接监控)直接监控和间接监控IDS从它所监控的对象处直接获得数据,则称为直接监控;反之,如果IDS依赖一个单独的进程或工具获得数据,则称为间接监控。就检测入侵行为而言,直接监控要优于间接监控,因为:就检测入侵行为而言,直接监控要优于间接监控,因为:从非直接数据源获取的数据在被从非直接数据源获取的数据在被IDS使用之前,入侵
25、者还有进行修改的使用之前,入侵者还有进行修改的潜在机会。潜在机会。非直接数据源可能无法记录某些事件,例如它无法访问监视对象的内非直接数据源可能无法记录某些事件,例如它无法访问监视对象的内部信息。部信息。在间接监控中,数据一般都是通过某种机制(如编写审计代码)生成在间接监控中,数据一般都是通过某种机制(如编写审计代码)生成的,但这些机制并不的,但这些机制并不IDS的具体要求,因而从间接数据源获得的数据量的具体要求,因而从间接数据源获得的数据量要比从直接数据源大得多。并且间接监控机制的可伸缩性小,一旦主机要比从直接数据源大得多。并且间接监控机制的可伸缩性小,一旦主机及其内部被监控要素增加,过滤数据
26、的开销会降低监控主机的性能。及其内部被监控要素增加,过滤数据的开销会降低监控主机的性能。间接数据源的数据从产生到间接数据源的数据从产生到IDS访问之间有一个时延。访问之间有一个时延。但是由于直接监控操作的复杂性,目前的但是由于直接监控操作的复杂性,目前的IDS 产品中只有不足产品中只有不足20%使用使用了直接监控机制。了直接监控机制。直接监控和间接监控之间的比较直接监控和间接监控之间的比较(4 4)外部探测器和内部探测器)外部探测器和内部探测器外部探测器的监控组件(程序)独立于被监测个组件(硬件或软件)实现。内部探测器的监控组件(程序)附加于被监测个组件(硬件或软件)实现。表表4.1给出了它们
27、的优缺点比较。比较内容外部探测器内部探测器错 误 引入 和 安全性:代理消耗了过量资源;库调用错误地修改了某些参数;有被入侵者修改的潜在可能 要嵌入被监控程序中,修改被监控程序时容易引进错误。对策:探测器代码尽量短。不是分离进程,不易被禁止或修改可 实 现性 可 使用 性 可维护性好:探测器程序与被监控程序分离,从主机上进行修改、添加或删除等较容易;可以利用任何合适的编程语言差:需要集成到被监视程序中,难度较大 需要使用与被监视程序相同的编程语言;设计要求高,修改、升级难度大开销差:数据生成和使用之间存在时延小:数据的产生和使用之间的时延小,不是分离进程,避免了创建进程的主机开销;完备性差:只
28、能从“外面”监察程序;只能访问外部可以获得的数据获取能力有限好:可以放置在所监视程序的任何地方;可以访问所监视程序中的任何信息正确性只能根据可获数据作出基于经验的猜测较完全表表4.1 外部探测器和内部探测器的优缺点外部探测器和内部探测器的优缺点数据分析是IDS的核心,它的功能就是对从数据源提供的系统运行状态和活动记录进行同步、整理、组织、分类以及各种类型的细致分析,提取其中包含的系统活动特征或模式,用于对正常和异常行为的判断。入侵检测系统的数据分析技术依检测目标和数据属性,分为异常发现技术和模式发现技术两大类。最近几年还出现了一些通用的技术。下面分别介绍。1.1.异常发现技术异常发现技术异常发
29、现技术用在基于异常检测的IDS中。如图图4.8所示,在这类系统中,观测到的不是已知的的入侵行为,而是所监视通信系统中的异常现象。如果建立了系统的正常行为轨迹,则在理论上就可以把所有与正常轨迹不同的系统状态视为可疑企图。由于正常情况具有一定的范围,因此正确地选择异常阈值和特征,决定何种程度才是异常,是异常发现技术的关键。异常检测只能检测出那些与正常过程具有较大偏差的行为。由于对各种网络环境的适应性较弱,且缺乏精确的判定准则,异常检测有可能出现虚报现象。系统审计系统审计比较器比较器入侵入侵正常活动正常活动超限超限底限底限图图4.8 异常检测模型异常检测模型异常发现技术分类异常发现技术分类异常发现技
30、术包括表表4.2所示的一些。其中,自学习系统通过学习事例构建正常行为模型,又可分为时序和非时序两种;可编程系统需要通过程序测定异常事件,让用户知道哪些是足以破坏系统安全的异常行为,又可分为描述统计和缺省否定两类。类类 型型方方 法法系统名称系统名称自学习自学习型型非时序非时序规则建模规则建模Wisdom&Sense描述统计描述统计IDES,NIDES,EMERRALD,JiNao,Haystack时序时序人工神经网络人工神经网络Hyperview可编程可编程型型描述统计描述统计简单统计简单统计MIDAS,NADIR,Haystack基于简单规则基于简单规则NSM门限门限Computer-wat
31、ch,缺省否认缺省否认状态序列建模状态序列建模DPEM,Janus,Bro表表4.2 异常发现技术异常发现技术2.2.模式发现技术模式发现技术模式发现又称特征检测或滥用检测。如图图4.9所示,它们是基于已知系统缺陷和入侵模式,即事先定义了一些非法行为,然后将观察现象与之比较做出判断。这种技术可以准确地检测具有某些特征的攻击,但是由于过度依赖实现定义好的安全策略,而无法检测系统未知的攻击行为,因而可能产生漏报。模式发现技术通过对确知的决策规则编程实现,常用的技术有如下4种。系统审计系统审计模式鉴别模式鉴别入侵入侵正常活动正常活动符合符合 不符合不符合图图4.9 误用检测模型误用检测模型常用的模式
32、发现技术常用的模式发现技术模式发现技术通过对确知的决策规则编程实现,常用的技术有如下4种:(1)状态建模:)状态建模:状态建模将入侵行为表示成许多个不同的状态。如果在观察某个可疑行为期间,所有状态都存在,则判定为恶意入侵。状态建模从本质上来讲是时间序列模型,可以再细分为状态转换和Petri网,前者将入侵行为的所有状态形成一个简单的遍历链,后者将所有的状态构成一个更广义的树形结构的Petri网。(2)串匹配:)串匹配:串匹配通过对系统之间传输的或系统自身产生的文本进行子串匹配实现。该方法灵活性欠差,但易于理解,目前有很多高效的算法,其执行速度很快。(3)专家系统:)专家系统:专家系统可以在给定入
33、侵行为描述规则的情况下,对系统的安全状态进行推理。一般情况下,专家系统的检测能力强大,灵活性也很高,但计算成本较高,通常以降低执行速度为代价。(4)基于简单规则:)基于简单规则:类似于专家系统,但相对简单一些,执行速度快。3.3.混合检测混合检测近几年来,混合检测日益受到人们的重视。这类检测在做出决策之前,既分析系统的正常行为,同时还观察可疑的入侵行为,所以判断更全面、准确、可靠。它通常根据系统的正常数据流背景来检测入侵行为,故也有人称其为“启发式特征检测”。属于这类检测的技术有:人工免疫方法;遗传算法;数据挖掘;。lIDS要有效地捕捉入侵行为,必须拥有一贯强大的入侵特征(signature)
34、数据库,这就如同公安部门必须拥有健全的罪犯信息库一样。lIDS中的特征就是指用于判别通讯信息种类的样板数据,通常分为多种,以下是一些典型情况及其识别方法:IDSIDS中特征的典型情况及其识别方法:中特征的典型情况及其识别方法:来自保留来自保留IP地址的连接企图:可通过检查地址的连接企图:可通过检查IP报头(报头(IP header)的来源的来源地址识别。地址识别。带有非法带有非法TCP 标志联合物的数据包:可通过标志联合物的数据包:可通过TCP 报头中的标志集与已报头中的标志集与已知正确和错误标记联合物的不同点来识别。知正确和错误标记联合物的不同点来识别。含有特殊病毒信息的含有特殊病毒信息的E
35、mail:可通过对比每封可通过对比每封Email的主题信息和病态的主题信息和病态Email的主题信息来识别,或者通过搜索特定名字的外延来识别。的主题信息来识别,或者通过搜索特定名字的外延来识别。查询负载中的查询负载中的DNS 缓冲区溢出企图:可通过解析缓冲区溢出企图:可通过解析DNS域及检查每个域域及检查每个域的长度来识别。另外一个方法是在负载中搜索的长度来识别。另外一个方法是在负载中搜索“壳代码利用壳代码利用”(exploit shellcode)的序列代码组合。的序列代码组合。对对POP3服务器大量发出同一命令而导致服务器大量发出同一命令而导致DoS攻击:通过跟踪记录某个攻击:通过跟踪记录
36、某个命令连续发出的次数,看看是否超过了预设上限,而发出报警信息。命令连续发出的次数,看看是否超过了预设上限,而发出报警信息。未登录情况下使用文件和目录命令对未登录情况下使用文件和目录命令对FTP服务器的文件访问攻击:通过服务器的文件访问攻击:通过创建具备状态跟踪的特征样板以监视成功登录的创建具备状态跟踪的特征样板以监视成功登录的FTP对话,发现未经验对话,发现未经验证却发命令的入侵企图。证却发命令的入侵企图。显然,特征的涵盖范围很广,有简单的报头域数值、有高显然,特征的涵盖范围很广,有简单的报头域数值、有高度复杂的连接状态跟踪、有扩展的协议分析。度复杂的连接状态跟踪、有扩展的协议分析。此外,不
37、同的此外,不同的IDS产品具有的特征功能也有所差异。例如:产品具有的特征功能也有所差异。例如:有些网络有些网络IDS系统只允许很少地定制存在的特征数据或者系统只允许很少地定制存在的特征数据或者编写需要的特征数据,另外一些则允许在很宽的范围内定编写需要的特征数据,另外一些则允许在很宽的范围内定制或编写特征数据,甚至可以是任意一个特征;一些制或编写特征数据,甚至可以是任意一个特征;一些IDS系统,只能检查确定的报头或负载数值,另外一些则可以系统,只能检查确定的报头或负载数值,另外一些则可以获取任何信息包的任何位置的数据。获取任何信息包的任何位置的数据。l早期的入侵检测系统的研究和设计,把主要精力放
38、在对系统的监控和分析上,而把响应的工作交给用户完成。现在的入侵检测系统都提供有响应模块,并提供主动响应和被动响应两种响应方式。一个好的入侵检测系统应该让用户能够裁减定制其响应机制,以符合特定的需求环境。1.1.主动响应主动响应在主动响应系统中,系统将自动或以用户设置的方式阻断攻击过程或以其他方式影响攻击过程,通常可以选择的措施有:针对入侵者采取的措施;修正系统;收集更详细的信息。2.2.被被动响应动响应在被动响应系统中,系统只报告和记录发生的事件。4.3.1 4.3.1 入侵检测系统的设置入侵检测系统的设置网络安全需要各个安全设备的协同工作和正确设置。由于入网络安全需要各个安全设备的协同工作和
39、正确设置。由于入侵检测系统位于网络体系中的高层,高层应用的多样性导致侵检测系统位于网络体系中的高层,高层应用的多样性导致了入侵检测系统分析的复杂性和对计算资源的高需求。在这了入侵检测系统分析的复杂性和对计算资源的高需求。在这种情形下,对入侵检测设备进行合理的优化设置,可以使入种情形下,对入侵检测设备进行合理的优化设置,可以使入侵检测系统更有效的运行。侵检测系统更有效的运行。图图4.10是入侵检测系统设置的基本过程。是入侵检测系统设置的基本过程。可以看出,入侵检测系统的设置需要经过多次回溯,反复调整。可以看出,入侵检测系统的设置需要经过多次回溯,反复调整。确定安全需求设计IDE的拓扑拓扑改变配置
40、系统磨合调试磨合达标使 用拓扑变更或安全更新调整参数是是否是否否 图图4.10 入侵检测系统设置的基本过程入侵检测系统设置的基本过程l入侵检测器是入侵检测系统的核心。入侵检测器部署的位置,直接影响入侵检测系统的工作性能。在规划一个入侵检测系统时,首先要考虑入侵检测器的部署位置。显然,在基于网络的入侵检测系统中和在基于主机的入侵检测系统中,部署的策略不同。1.1.在基于网络的入侵检测系统中部署入侵检测器在基于网络的入侵检测系统中部署入侵检测器基于网络的入侵检测系统主要检测网络数据报文,因此一般将检测器部署在靠近防火墙的地方。具体做法有如图图4.11所示的几个位置。外部外部网网内部网内部网关键子网
41、关键子网 检测器检测器检测器检测器 检测器检测器检测器检测器124345图图4.11 基于网络的入侵检测器的部署基于网络的入侵检测器的部署(1 1)DMZDMZ区区在这里,可以检测到的攻击行为是:所有针对向外提供服务的服务器的在这里,可以检测到的攻击行为是:所有针对向外提供服务的服务器的攻击。由于攻击。由于DMZ中的服务器是外部可见的,因此在这里检测最为需要。中的服务器是外部可见的,因此在这里检测最为需要。同时,由于同时,由于DMZ中的服务器有限,所以针对这些服务器的检测,可以使中的服务器有限,所以针对这些服务器的检测,可以使入侵检测器发挥最大优势。但是,在入侵检测器发挥最大优势。但是,在DN
42、Z中,检测器会暴露在外部,而中,检测器会暴露在外部,而失去保护,遭受攻击,导致无法工作。失去保护,遭受攻击,导致无法工作。(2 2)内网主干(防火墙内侧)内网主干(防火墙内侧)将检测器放到防火墙的内侧,有如下几点好处:将检测器放到防火墙的内侧,有如下几点好处:检测器比放在检测器比放在DMZ中安全。中安全。所检测到的都是已经渗透过防火墙的攻击行为。从中可以有效地发现所检测到的都是已经渗透过防火墙的攻击行为。从中可以有效地发现防火墙配置的失误。防火墙配置的失误。可以检测到内部可信用户的越权行为。可以检测到内部可信用户的越权行为。由于受干扰的机会少,报警几率也少。由于受干扰的机会少,报警几率也少。(
43、3 3)外网入口(防火墙外侧)外网入口(防火墙外侧)优势是:优势是:可以对针对目标网络的攻击进行计数,并记录最为原始的数据包。可以对针对目标网络的攻击进行计数,并记录最为原始的数据包。可以记录针对目标网络的攻击类型。可以记录针对目标网络的攻击类型。但是,不能定位攻击的源和目的地址,系统管理员在处理攻击行为上也但是,不能定位攻击的源和目的地址,系统管理员在处理攻击行为上也有难度。有难度。(4 4)在防火墙的内外都放置)在防火墙的内外都放置这种位一置可以检测到内部攻击,又可以检测到外部攻击,并且无需猜这种位一置可以检测到内部攻击,又可以检测到外部攻击,并且无需猜测攻击是否穿越防火墙。但是,开销较大
44、。在经费充足的情况下是最理测攻击是否穿越防火墙。但是,开销较大。在经费充足的情况下是最理想的选择。想的选择。(5 5)关键子网)关键子网这个位置可以检测到对系统关键部位的攻击,将有限的资源用在最值得这个位置可以检测到对系统关键部位的攻击,将有限的资源用在最值得保护的地方,获得最大效益保护的地方,获得最大效益/投资比。投资比。2.2.在基于主机的入侵检测系统中部署入侵检测器在基于主机的入侵检测系统中部署入侵检测器基于主机的入侵检测系统通常是一个程序。在基于网络的入侵检测器的部署和配置完成后,基于主机的入侵检测将部署在最重要、最需要保护的主机上。l检测到入侵行为需要报警。具体报警的内容和方式,需要
45、根据整个网络的环境和安全需要确定。例如:对一般性服务企业,报警集中在已知的有威胁的攻击行为对一般性服务企业,报警集中在已知的有威胁的攻击行为上;上;对关键性服务企业,需要尽将可能多的报警记录并对部分对关键性服务企业,需要尽将可能多的报警记录并对部分认定的报警进行实时反馈。认定的报警进行实时反馈。1.1.购买入侵检测系统考虑的基本因素购买入侵检测系统考虑的基本因素 实时性。自动反应能力。能检测到所有事件,不会发生遗漏警报。跨平台性好,能在多种平台上运行。2.2.理想的入侵检测系统的几个特点理想的入侵检测系统的几个特点 快速控制。良好的误报警管理。显示过滤器。标志已经分析过的事件。层层探究的能力。
46、关联分析能力。报告能力。l为了提高IDS产品、组件及与其他安全产品之间的互操作性和互用性,美国国防高级研究计划暑(DARPA)和互联网工程任务组(IETF)的入侵检测工作组(IDWG)发起制定了一系列建议草案,从体系结构、API、通讯机制、语言格式等方面规范IDS的标准。lCIDF(Common Intrusion Detection Framework,公共入侵检测框架)是 DARPA从1997年3月就开始制定的一套规范,最早由加州大学戴维斯分校安全实验室主持起草工作。它定义了IDS表达检测信息的标准语言以及IDS组件之间的通信协议,使各种IDS可以协同工作,实现各IDS之间的组件重用,被作
47、为构建分布式IDS的基础。lCIDF的规格文档主要包括四部分:IDS的通信机制、体系结构、CISL(Common Intrusion Specification Language,通用入侵描述语言)和应用编程接口API。1.1.CIDFCIDF的通信机制的通信机制CIDF将通信机制构成一个三层模型:GIDO(Generalized Intrusion Detection Object,通用入侵检测对象)层:它把部件间交换的数据形式都做了详细的定义,统称为Gidos并用CISL描述,以使IDS理解。消息层:负责对信息加密认证,不关心传输的内容,只负责建立一个可靠的传输通道,确保被加密认证消息在防
48、火墙或 NAT等设备之间传输过程中的可靠性。同样,GIDO层也只考虑所传递信息的语义,而不关心这些消息怎样被传递。协商传输层:协商传输层不属于CIDF规范,可以采用多种现有的传输机制实现。但是,单一的传输协议无法满足CIDF各种各样的应用需求,只有当两个特定的组件对信道使用达成一致认识时,才能进行通信。协商传输层规定 GIDO在各个组件之间的传输机制。(1 1)CIDFCIDF组件间的通信结构组件间的通信结构(2 2)CIDFCIDF的通信机制的功能及其实现的通信机制的功能及其实现CIDF的通信机制主要解决两个问题:保证CIDFD的组件能安全、正确地与其他组件建立连接(包括定位和鉴别);连接建
49、立后,组件能有效地进行通信。这两个功能通过中介服务和消息层法实现。中介服务中介服务中介服务(Matchmaking Service):通过中介代理专门负责提供查询其他CIDF组件集的服务。这是为CIDF各组件之间的相互识别、定位和信息共享提供了一个统一的标准机制。它大大提高了组件的互操作性,降低了开发多组件入侵检测与响应系统的难度。通常是基于一个大型目录服务LDAP(Lightweight Directory Protocol,轻量级目录访问协议),每个组件都要通过该目录服务进行注册,并通告其他组件它所使用或产生的GIDO类型。在此基础上,组件才能被归入它所属的类别中,组件之间才能互相通信。目
50、录中还可以存放组件的公共密钥,实现对组件接收和发送GIDO时的身份认证。消息层法消息层法 消息层法:消息层利用消息格式中的选项,在客户端与服务器端握手阶段就可以完成提供路由信息追踪、数据加密和认证等功能,从而在易受攻击的环境中实现了一种安全(保密、可信、完整)并可靠的信息交互机制。具体地说,消息层可以做到:使通信与阻塞和非阻塞处理无关;使通信与数据格式无关;使通信与操作系统无关;使通信与编程语言无关。2.2.CIDFCIDF的体系结构的体系结构CIDF在IDES和NIDES的基础上提出了一个通用模型,将入侵检测系统分为图图4.12所示的4个基本组件:事件产生器、事件分析器、响应单元和事件数据库