河南理工大学课程论文(2014-2015第二学年)论文题目:入侵检测技术综述学院:专业班级:学号:姓名:指导老师:日期:2015.7.31引言.........................................................................................................................................12入侵行为的概念、分类和演化.................................................................................................13入侵检测技术的发展.................................................................................................................33.1以Denning模型为代表的IDS早期技术...................................................................33.2中期:统计学理论和专家系统相结合.......................................................................43.3基于网络的NIDS是目前的主流技术........................................................................44结语.........................................................................................................................................5参考文献...........................................................................................................................................61摘要:自从计算机问世以来,安全问题就一直存在着,使用者也一直未给予足够的重视,结果大量连接到Internet上的计算机暴露在愈来愈频繁的攻击中。本文先介绍入侵行为的概念和演化,然后按时间顺序,沿着技术发展的脉络,回顾了入侵检测技术从20世纪70年代初到今天的发展历程。文章以历史和实践的观点,透视入侵和入侵检测技术相互制约,相互促进的演进过程。关键词:计算机安全;入侵检测;入侵检测系统;入侵检测系统的历史1引言自从计算机问世以来,安全问题就一直存在。特别是随着Internet的迅速扩张和电子商务的兴起,人们发现保护资源和数据的安全,让他免受来自恶意入侵者的威胁是件相当困难的事。提到网络安全,很多人首先想到的是防火墙,防火墙作为一种静态的访问控制类安全产品通常使用包过滤的技术来实现网络的隔离。适当配置的防火墙虽然可以将非预期的访问请求屏蔽在外,但不能检查出经过他的合法流量中是否包含着恶意的入侵代码。在这种需求背景下,入侵检测系统(IDS)应运而生。入侵检测系统(IDS)是将电子数据处理、安全审计、模式匹配及统计技术等有机地融合在一起,通过分析被检测系统的审计数据或直接从网络捕获数据,发现违背安全策略或危及系统安全的行为和活动。本文主要讨论入侵和入侵检测技术从20世纪70年代初到今天的发展历程。这个概念出自JamesP.Anderson在1972年的一项报告,随后的30多年中,概念本身几乎没有改变。2入侵行为的概念、分类和演化从最早期的计算机安全开始,人们就密切关注恶意使用者破坏保护机制的可能性。早期系统多为多用户批处理系统。这个时期,主要的威胁来自系统的合法使用者,他们企图得到未经授权的材料。到了20世纪70年代,分时系统和其他的多用户系统已成气候,WillisHWare主持的计算机安全防御科学特别工作小组提供了一项报告,为处理多级数据的计算机系统的发展奠定了基础。但这篇报告并没有受到应有的重视,直到70年代中期,人们才开始进行构建多级安全体系的系统研究。1980年4月,詹姆斯·安德森(JamesP.Anderson)为美国空军做的题为《ComputerSecurityThreatMonitoringandSurveillance》(计算机安全威胁监控与监视)的技术报告,第一次详细阐述了入侵检测的概念,并首先为入侵和入侵检测提出了一个统一的架构,这是该领域的开山之作。他在论文中给出了入侵和入侵检测技术方面的概念:威胁(Threat)可能存在有预谋的、未经认可的尝试:2①存取数据;②操控数据;③使系统不可靠或无法使用。危险(Risk)意外的和不可预知的数据暴露,或者,由于硬件故障、软件设计的不完整和不正确所造成的违反操作完整性的问题。脆弱性(Vulnerability)已知的或可疑的硬件或软件设计中的缺陷;使系统暴露的操作;意外暴露自己信息的操作。攻击(Attack)实施威胁的明确的表达或行为。渗透/入侵(Penetration)一个成功的攻击;(未经认可的)获得对文件和程序的使用,或对计算机系统的控制。威胁概念中的③包括DOS(DenialOfService)“拒绝服务攻击”。盗用计算资源也属于这个类别之内。一般来说,外部入侵者的首要工作是进入系统。所外人,也可能是合法用户,但违规使用了未经授权的资源。另一方面,除了拒绝服务攻击外,多数攻击都需要入侵者取得用户身份。20世纪80年代中后期,网络计算已经相当普遍,渗透和入侵也更广泛。但许多厂商和系统管理员却疏忽了这个危险。一些厂商在售出的系统中预先定义管理账户(曾有厂商使用Username:system,Password:manager),而很多系统操作员却大意地忘记了改变这个缺省设置。1988年11月2日,第一个大范围的Internet上的攻击和渗透事件发生了。肇事者是“莫理斯蠕虫”,他采用多种传输技术在系统间复制,利用的是发送邮件程序的漏洞,这个漏洞允许邮寄的指令能在异地系统上执行。除此之外,蠕虫也利用在finger守护进程溢出串变量来扩散。蠕虫代码中还包含了一个高效的口令破解程序,他尝试破解被他传染的系统上的使用者的密码。在“莫理斯蠕虫”之后,DARPA建立了“计算机紧急情况反应小组”,也就是现在SEI(软件工程学会)的CERT(ComputerEmergencyResponseTeam)。1996年,在线杂志Phrack发表了一篇缓冲溢出攻击的文章,随后这种攻击事件就多了起来。CERT的一项研究显示,从1997年开始,缓冲溢出攻击变成逐渐严重。近年来报告给CERT/CC的攻击事件中涉及缓冲溢出的百分比上升,这种漏洞攻击流行的原因包括:系统的脆弱性;管理者(administrator)或超级用户(superuser)在目标系统中的特权,攻击行为一般都要利用这些特权;这些攻击的脚本或程序在Internet上的适用性很好,使用者只需很少的技巧。和其他攻击方式一样,缓冲溢出已经越来越复杂和更具综合性。早期的攻击主要是通过目标程序读数据。后来发现,包含环境参数的变量也可能被当作攻击向量使用。最近,基于格式串(formatstrings)的缓冲溢出也开始使用。31992年,第一次大范围的“rootkits”开始出现。入侵者会像一个平常的使用者一样进入系统,接着靠猜测、社会工程学或其他方式得到一个使用者的口令,然后他们尝试利用系统的弱点成为root。一旦获得root权限,版本不同的系统公用程序,像是Su,Ftp和Ftpd就会被安装和远程执行,这使侵入者能方便地再次进入(后门技术),而且,入侵者会修改系统信息,清理入侵痕迹,让管理者和安全审计者难以察觉。现在的攻击行为向着大规模、自动和协同方向发展。攻击已经变得越来越复杂、越来越自动化。图1中,实线代表攻击行为,虚线代表入侵者需要掌握的技术,他显示了从90年代起,攻击行为的发展和对入侵者技术要求降低的情况。CERT/CC曾预言:攻击行为的自动化可能在因特网上引发大规模的入侵活动,这在今天得到了验证。3入侵检测技术的发展审计是最早引入计算机安全领域的概念,像存取文件、变更他们的内容或分类等的活动都记录在审计数据中,安全管理员、系统操作员和维护人员和普通用户一样都要经过行为审核。安德森提出要建立一个安全监督系统,保护那些系统敏感信息。他还提出应该检查什么、如何分析他、以及如何保护监督系统免受攻击,这成了今天IDS研究的核心内容。70年代后期,美国zhengfu,包括DoD(国防部)和NIST(国家标准和技术协会)支持的计算机安全研究2开始了,安全审计也被考虑在这些研究中。1980年,安德森提出了另外一项报告,这次是针对一个空军客户,后者使用大型计算机处理大量的机密数据。报告中,安德森提出了减少分析数据量的方法,以及比较统计数据和总的观察——也就是统计行为,以发现反常的行为。当一个安全违例发生或(统计上)反常的事件出现时,就会提醒安全官员。安全官员还能利用详细的观测资料做后续的评估。安德森的报告为SRI(StanfordResearchInstitute)和TRW(美国着名的数据安全公司)的早期工作提供了蓝图。在1980年代中期,入侵检测方面的许多工作都被他的思路深深影响。3.1以Denning模型为代表的IDS早期技术1984~1985年,Sytex为SPAWAR(美国海军)开展了一个审计分析项目。他基于Unix系统的shell级的审计数据,论证这些数据能够识别“正常”和“反常”使用的区别。特里萨·兰特(TeresaLunt)在Sytex为这个项目工作,后来又去了SRI,在那里她参与并领导了IDES(入侵检测专家系统)项目。IDES项目是1984年由乔治敦大学的桃乐茜·顿宁(DorothyDenning)和彼得·诺埃曼(PeterNeumann)开始的,是IDS早期研究中最重要的成就之一。IDES模型基于这样的假设:有可能建立一个框架来描述发生在主体(通常是用户)和客体(通常是文件、程序或设备)之间的正常的交互作用。这个框架由一个使用规则库(规则库描述了已知的违例行为)的专家系统支持。这能防止使用者逐渐训练(误导)系统把非法的行为当成正常的来接受,也就是说让系统“见怪不怪”。1988年,特里萨·兰特等人改进了顿宁的入侵检测模型,并开发出了一个IDES。该系统包括一个异常检测器和一个专家系统,分别用于异常模型的建立和基于规则的特征分析检测。顿宁的模型假设:入侵行为明显的区别于正常的活动,入侵者使用系统的模式不同于正常用4户的使用模式,通过监控系统的跟踪记录,可以识别入侵者异常使用系统的模式,从而检测出入侵者违反系统安全性的情况。论文中的一些提法看起来很吸引人,但却并没有多少有力的证据,有些想当然。顿宁的模型中有6个主要构件:主体、对象、审计数据、轮廓特征(或可称为“范型”profiles)、异常记录和行为规则。范型(profiles)表示主体的行为特色,也是模型检测方面的关键。行为规则描述系统验证一定条件后抽取的行为,他们能“……更新范型,检测异常行为,能把异常和可能的入侵关联起来并提出报告”。审计纪录由一个行为触发,而且记录主体尝试的行为、行为本身、行动对准的目标、任何可能导致例外的情况以及行为消耗的资源和独特的时间戳标记。审计记录会和范型进行比较(使用适当的规则),那些符合异常条件的事件将被识别出来。这个模型独立于特定的系统平台、应用环境、系统弱点以及入侵的类型,也不需要额外的关于安全机制、系统脆弱性或漏洞攻击方面的知识,他为构建入侵监测系统提供了一个通用的框架。桃乐茜·顿宁的“入侵检测模型”论文很有影响,但现在读起来有点令人失望,主要是因为其中许多当