入侵检测系的实现朱翔.doc_第1页
入侵检测系的实现朱翔.doc_第2页
入侵检测系的实现朱翔.doc_第3页
入侵检测系的实现朱翔.doc_第4页
入侵检测系的实现朱翔.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

沈 阳 工 程 学 院实训报告实训题目: 信息安全专题设计与实践 系 别 信息工程系 班级 信安本101 学生姓名 朱翔 学号 2010415109 指导教师 张小瑞 郑秀颖 祝世东 实训进行地点: 信息工程系网络实验室 任 务 下 达 时 间: 2013年11月18日起止日期:2013年11月18日起至 2013年12月20日止信息安全专题设计与实践任务书一、性质、任务和基本要求信息安全专题设计与实践是一门以项目设计和技术开发、综合集成为主要方式的综合设计与实践课程,是计算机科学与技术专业信息安全方向的必修实验课程。通过专题项目的设计、开发和集成,要求学生把理论与实践相结合,加深对专业概念和原理的理解,强化学生的设计能力、技术开发能力和综合集成能力,达到巩固专业知识,改善教学质量,培养学生的创新性开发和实践能力,为后续的毕业设计环节以及将来的实际工作打好坚实的基础。二、专题设计的具体内容信息安全专题设计与实践要求学生综合利用本课程的有关知识,在教师的指导下,针对特定的某一专题方面的具体问题,完成从项目的需求分析、设计、到技术开发、综合集成、测试等实现过程,最终实现一个较为完整的硬件或软件系统。下面是各个阶段的具体内容。 项目分析制订要开发或完成的安全系统的安全目标。本阶段应该对整个系统情况作全面的、详细的调查,分析该系统可能面临安全风险和安全威胁。 制订系统安全策略根据阶段一分析的结果,制订为保护系统安全所要采取的安全策略,说明所采用的安全策略与系统所面临的安全风险和可能遭受的安全攻击之间的关系,描述这种安全策略是如何降低系统安全风险的。说明要实施这种安全策略,需要采用何种安全技术或产品。 系统的实现根据前两个阶段的分析设计结果,通过编程或选用集成合适的工具产品,完成该系统的实现。实现过程是对安全技术的综合运用和裁剪过程,是学生综合能力的运用和体现。本阶段要求学生写出详细的实现过程、步骤。对于编程实现的,要求描述主要的算法流程和数据结构。对于产品部署和应用的,要求写出详细的配置和部署的环境和功能。最后,要求针对实现进行分析,说明该实现对系统安全需求的满足程度、实现中的不足以及可以进一步改进和提高的地方。三、实训要求专题设计题目要求紧密围绕密码学、软件安全、网络安全、系统安全相关的教学内容,通过专题设计这种实践性教学环节,深入理解和巩固信息安全的的基本概念、基本原理方法、安全技术等主要相关知识点,提高学生技术开发和解决实际问题的能力,锻炼学生对安全技术的综合运用能力。专题设计可以按每人一个题目进行,也可以把一个完整的较大的题目分解,由2-3人合作完成。鼓励学生发挥自主创新性,自主提出专题设计题目,提高学生发现问题的能力和对信息安全的兴趣。学生自主提出的题目,经指导教师审核认可后,方可以按照该题目进行专题设计任务。参考选题 PKI和PMI系统设计与部署安全的远程控制与访问系统基于开源的防火墙系统的定制与开发蜜罐蜜网系统设计与实现内网加密防护系统的设计与实施操作系统安全审计系统的设计与实现WEB渗透技术的分析与实现嵌入式防火墙系统嵌入式漏洞扫描系统四、实训报告要求专题设计的设计报告是学生对本次专题设计的全面总结,应该反映每个设计阶段的设计思路和设计内容。该设计报告,应作为整个专题设计评分的书面依据和存档材料。设计报告一般要以固定规格的纸张(如A4)书写或打印并装订,字迹及图形要清楚,工整,规范。内容及要求如下: 设计任务、要求及所用软硬件环境或工具介绍。 专题设计内容中要求的分析设计结果。 实现过程和结果 验收情况,总结五、成绩评定标准专题设计的成绩评定以选定课题的难易度,完成情况和设计报告为依据综合评分。从总体来说,所设计的系统应该符合设计要求,设计过程中的每一个阶段均应提供正确的文档(设计报告),设计报告要符合规范要求。序号报告内容所占比重评分原则不给分及格中等良好优秀1问题描述5%没有不完整基本正确描述正确描述准确2设计思想10%没有不完整基本可行方案良好很有说服力3具体设计的正确性70%不正确不完整基本正确正确,清晰正确,清晰4组内是否前后一致5%不一致有些不一致基本一致一致完全一致5其他10%包括是否按时完成,报告格式,字迹、语言等等六、参考资料1石志国,薛为民,尹浩编著,计算机网络安全教程,北方交通大学出版社,2007年1月2(美)斯托林斯(Stallings,W.)著,孟庆树等译,密码编码学与网络安全原理与实践(第四版),电子工业出版社,2006年11月3(美)马里克(Malik,S.)著;王宝生,朱培栋,白建军 译,网络安全原理与实践,人民邮电出版社,2008年08月4周继军,蔡毅主编,网络与信息安全基础(重点大学计算机专业系列教材),清华大学出版社,2008年08月。5张敏波编著,网络安全实战详解(企业专供版),电子工业出版社,2008年05月6杨波 等编著. 现代密码学,清华大学出版社,2003年.7. 关振胜 等编著. 公钥基础设施PKI及其应用,电子工业出版社,2008年.8. 傅建明,彭国军, 张焕国编著. 计算机病毒分析与对抗,武汉大学出版社,2004年.9. 陈志雨 等编著,计算机信息安全技术应用,电子工业出版社,2005年.10. 胡铮 等编著,网络与信息安全,清华大学出版社,2006年.11. 王景中,徐小青 等编著,计算机通信信息安全技术,清华大学出版社,2006年.12. 楚狂 等编著,网络安全与防火墙技术,人民邮电出版社,2000年.13. 胡建伟 等编著,网络对抗原理,西安电子科技大学出版,2004年.14. 杜晔张大伟范艳芳. 网络攻防技术教程:从原理到实践,武汉大学出版社,2008年.实训成绩评定表序号报告内容所占比重评分原则最后得分不给分及格中等良好优秀1问题描述5%没有不完整基本正确描述正确描述准确2设计思想10%没有不完整基本可行方案良好很有说服力3设计的正确性70%不正确不完整基本正确正确,清晰正确清晰4前后一致5%不一致有些不一致基本一致一致完全一致5其他10%包括是否按时完成,报告格式,字迹、语言等等总分最后成绩指导教师签名(盖章):信息安全专题设计与实现 摘要摘 要入侵检测技术是对传统的安全技术(如防火墙)的合理补充。它通过监视主机系统或网络,能够对恶意或危害计算机资源的行为进行识别和响应。通过与其它的安全产品的联动,还可以实现对入侵的有效阻止。入侵检测系统的研究和实现已经成为当前网络安全的重要课题。本文从研究入侵技术入手,分析了入侵过程的各个阶段、各种入侵方法,总结了网络安全事故的根源。然后,介绍了入侵检测方法的分类,分析了各种入侵检测方法和字符串匹配的算法。研究表明基于规则的入侵检测系统是现在入侵检测系统设计的最主要的技术,基于这一理论,设计开发了一个基于规则匹配的网络数据包分析工具。系统开发环境为VC+ 6.0,数据库采用MYSQL数据库。通过该系统可以有效的实现对入侵的检测,并且具有用户友好性。关键词: 入侵检测;响应模块;规则匹配II信息安全专题设计与实现 AbstractAbstractIntrusion detection technology is a security technology to the traditional (such as the reasonable supplement of firewall). By monitoring the host system or the Internet, can to malice behavior recognition and response. Through linkage with other security product, can effectively prevent the invasion. Research and implementation of intrusion detection system has become an important topic of current network security.The research of intrusion technology, analysis of the various stages of the invasion process, all kinds of intrusion methods, summed up the root causes of network security incidents. Then, introduces the classification of the intrusion detection system, analyzing various intrusion detection methods and string matching algorithm. Research shows that the rule based intrusion detection system is the most important technical intrusion detection system design, based on this theory, design and develop a network data packet analysis tool based on rule matching. System development environment for VC+ 6, the database using MYSQL database. Through the system can be effective to intrusion detection, and user-friendly.Keywords: intrusion detection; response rule matching module信息安全专题设计与实现 目录目录摘 要IAbstractII第1章 绪 论11.1 选题背景11.2 研究现状11.3 主要工作1第2章 理论基础22.1入侵基本概念22.1.1安全与入侵的概念22.1.2入侵的步骤22.1.3黑客攻击的方法32.1.4安全威胁的根源52.2入侵检测技术62.2.1入侵检测的概念62.2.2入侵检测系统的基本结构构成62.2.3入侵检测的分类72.2.4入侵检测方法92.3BM算法10第3章 系统总体设计123.1 系统概述123.2 系统总体结构框架123.3 开发环境13第4章 响应模块设计实现134.1规则库设计实现134.2事件分析设计与实现154.2.1规则解析154.2.2规则匹配流程174.3输出模块的设计184.3.1响应输出流程184.3.2日志数据库设计194.4模块集成实现19第5章 系统测试和分析205.1攻击检测测试205.1.1测试目的205.1.2测试过程205.1.3测试结果分析205.2误报和漏报测试215.2.1测试目的215.2.2测试过程215.2.3测试结果分析22结 论23致 谢24参考文献25III信息安全专题设计与实现 第1章 绪论第1章 绪 论1.1 选题背景近年来,随着信息和网络技术的高速发展以及其它的一些利益的驱动,计算机和网络基础设施,特别是各种官方机构网站成为黑客攻击的目标,近年来由于对电子商务的热切需求,更加激化了各种入侵事件增长的趋势。作为网络安全防护工具“防火墙”的一种重要的补充措施,入侵检测系统(Intrusion Detection System,简称 IDS)得到了迅猛的发展。依赖防火墙建立网络的组织往往是“外紧内松”,无法阻止内部人员所做的攻击,对信息流的控制缺乏灵活性从外面看似非常安全,但内部缺乏必要的安全措施。据统计,全球80%以上的入侵来自于内部。由于性能的限制,防火墙通常不能提供实时的入侵检测能力,对于企业内部人员所做的攻击,防火墙形同虚设。 入侵检测是对防火墙及其有益的补充,入侵检测系统能使在入侵攻击对系统发生危害前,检测到入侵攻击,并利用报警与防护系统驱逐入侵攻击。在入侵攻击过程中,能减少入侵攻击所造成的损失。在被入侵攻击后,收集入侵攻击的相关信息,作为防范系统的知识,添加入知识库内,增强系统的防范能力,避免系统再次受到入侵。入侵检测被认为是防火墙之后的第二道安全闸门,在不影响网络性能的情况下能对网络进行监听,从而提供对内部攻击、外部攻击和误操作的实时保护,大大提高了网络的安全性。1.2 研究现状入侵检测技术国外的起步较早,有比较完善的技术和相关产品。如开放源代码的snort,虽然它已经跟不上发展的脚步,但它也是各种商业IDS的参照系;NFR公司的NID等,都已相当的完善。虽然国内起步晚,但是也有相当的商业产品:天阗IDS、绿盟冰之眼等不错的产品,不过国外有相当完善的技术基础,国内在这方面相对较弱。1.3 主要工作本文从分析现有网络中存在的安全说起,指出了现有的网络所面临的安全威胁,主要介绍了基于特征(signature-based)的网络入侵检测技术,阐述了由入侵检测理论所构建的入侵检测平台,监测并分析网络、用户和系统的活动,识别已知的攻击行为,统计分析异常行为。在本文的后面针对基于windows平台并基于特征(规则)的入侵检测系统响应模块的设计与实现作了详细的说明,阐述了什么是入侵检测、如何检测、如何响应等一系列问题,同时也给出了一套完整的设计思想和实现过程。- 1 -信息安全专题设计与实现 第2章 理论基础第2章 理论基础2.1入侵基本概念2.1.1安全与入侵的概念安全定义广义的计算机安全的定义:主题的行为完全符合系统的期望。系统的期望表达成安全规则,也就是说主体的行为必须符合安全规划对它的要求。而网络安全从本质上讲就是网络上信息的安全,指网络系统的硬件、软件及其系统中数据的安全。网络信息的传输、存储、处理和使用都要求处于安全的状态。根据OSI狭义的系统与数据安全性定义:1. 机密性(Confidentiality):使信息不泄露给非授权的个人、实体和进程,不为其所用;2. 完整性(Integrity):数据没有遭受以非授权的个人、实体和进程的窜改,不为其所用;3. 可确认性(Accountability):确保一个实体的作用可以被独一无二地跟踪到该实体;4. 可用性(Auailability):根据授权实体的请求可被访问与使用。入侵定义Anderson在80年代早期使用了“威胁”概念术语,其定义与入侵含义相同。将入侵企图或威胁定义为未授权蓄意尝试访问信息、篡改信息、使系统不可靠或不能使用。Heady给出另外的入侵定义:入侵是指有关试图破坏资源的完整性、机密性及可用性的活动集合。Smaha从分类角度指出入侵包括尝试性闯入、伪装攻击、安全控制系统渗透、泄漏、拒绝服务、恶意使用六种类型。 2.1.2入侵的步骤黑客通常采用以下的几个步骤来实现入侵目标主机的目的。1、搜集信息:寻找目标主机并分析要攻击的环境。2、实施入侵:获取帐号和密码,登录主机。3、提升权限:黑客一旦获得目标主机普通用户的帐号,便可以利用一些登录工具进入目标主机,进入以后,他们会想方设法的到超级用户的权限,然后进行任意操作。4、攻击活动的实施:黑客获取了超级用户权限后,就可以在目标系统上为所欲为。根据各自不同的目的,黑客在攻克的目标系统上进行不同的破坏活动,例如窃取敏感资料、篡改文件内容,替换目标系统WWW服务的主页是黑客示威常采用的手段。5、清除日志记录:黑客在退出被攻克的目标前通常要进行一些善后处理。2.1.3黑客攻击的方法1、网络监听网络监听最初是为了协助网络管理员监测网络传输的数据,排除网络故障而开发的技术,然而网络监听也给以太网安全带来了极大的隐患。监听是通过将网络接口设为混杂模式,从而接收经过它的所有网络数据包,达到偷看局域网内其它主机的通讯的目的。反监听的方法是:将网络分段,把不可信任的机器隔开以防止被监听;加密,大量的密文让黑客无所适从。2、端口扫描端口扫描的基本原理是扫描方通过向目标系统的不同端口发送具有特殊位的数据包,并记录目标做出的应答,通过分析得出关于目标的相关信息。根据数据包的类型可分为:TCP扫描、UDP扫描、ICMP扫描。其中TCP扫描包括:TCP connect()扫描、TCP SYN扫描、TCP SYN|ACK扫描、TCP ACK扫描、TCP FIN扫描、TCP空扫描、TCP Xmax树扫描(往目标端口发送一个设置了FIN|URG|PUSH位的分组。);ICMP扫描包括:ICMP查询报文请求及应答扫描、ICMP差错报文扫描;UDP扫描包括:UDP端口不可达扫描等。3、口令入侵口令入侵是指攻击者使用合法的用户帐号和口令登录到目标主机,然后再实施攻击行为。攻击者通过猜测、监听和破解用户口令等方法获得对主机或网络的访问权,登录目标系统访问资源,安装后门等。防范方法:一方面强制用户选择安全的口令;另一方面限制口令文件的访问,例如只让管理员可读。4、特洛伊木马特洛伊木马程序是指非法驻留在目标系统中,提供隐秘的、非用户所希望的程序。特洛伊木马程序可用于窃取目标系统的敏感信息(例如用户名和口令)、记录用户的键盘操作,直至远程控制目标系统。特洛伊木马程序一般采用客户/服务器方式,驻留到目标系统中的程序作为服务器端,接收客户端(在黑客的主机上)的控制命令。要利用特洛伊木马程序,关键一点是怎样让特洛伊木马程序能驻留到目标系统中去,这一般需要使用欺骗手段让目标系统上的用户执行一个程序或者某个动作从而完成特洛伊木马程序的安装。黑客在成功入侵后也常在目标系统中安装特洛伊木马程序以便长期控制目标系统。防范方法:经常检查系统中运行的服务或开启的端口号,如果陌生的服务程序在运行或陌生的端口号被开启,就应该进一步查清是正常启动的新服务还是特洛伊木马程序。特洛伊木马程序为了能在每次系统启动的时候自动启动,必须要修改注册表项,所以通过检查注册表也可以发现特洛伊木马程序,目前已有专用的防范软件来记录系统的状态及其修改并可擒获非法修改。5、缓冲区溢出缓冲区溢出就是向堆栈中分配的局部变量传递超长的数据,导致数据越界而覆盖它后面的堆栈区域。黑客利用缓冲区溢出覆盖程序或函数的返回地址,当程序或函数返回时指针指向黑客设计的位置,使黑客的恶意代码得以执行而获得系统中的用户权限甚至特权用户权限。缓冲区溢出是目前最常见的攻击收集。缓冲区溢出攻击又可分为远程溢出攻击和本地溢出攻击,本地溢出攻击是黑客获得普通用户权限后提升自己权限采用的方法;远程溢出攻击是黑客获得普通用户权限后提升自己权限常采用的方法;远程溢出攻击则可以在没有系统的任何帐号的情况下获得系统中的用户权限,甚至直接获得特权用户权限。防范缓冲区溢出的方法是在程序设计时记住进行越界检查。6、拒绝服务DOS(Denial of Service)拒绝服务是就攻击结果而言的,指目标主机不能为用户提供正常的服务,即破坏目标系统的可用性。要达到这一目的,有几种不同的方法:服务超载、报文洪水攻击使系统变慢,以阻止处理常规工作、SYN、分布式拒绝服务攻击。7、暗藏ICMP通道ICMP (因特网控制报文协议)是IP层上的差错和控制协议。Ping命令是利用ICMP的回应请求报文来探测一个目的机器是否可以连通和有响应。任何一台机器接收到一个回应请求,都返回一个回应应答报文给原请求者。因为ping命令的数据报文几乎会出现在每个网络中,许多防火墙和网络都认为这种数据无危险而让其通过。黑客正是利用了这一点,用ICMP数据包开一个暗藏的通道。ICMP数据包有一选项可以包含一个数据段,尽管其中的有效信息通常是时间信息,实际上任何设备都不检查其数据内容,这样它包含任何数据,成为黑客传递信息的载体。利用此通道,可以秘密向目标主机上的木马程序传递命令并在目标机器上执行,也可以将在目标主机上搜集到的信息传送给远端的黑客,作为一个秘密用户与用户、用户与机器间通信的方法。 防范的方法是设置ICMP数据包的智能过滤器。8、欺骗欺骗可以分为以下几种:IP欺骗在UNIX网络中可以有被信任的主机。如果一个主机将信任扩展到另一台主机,那么两台主机上都有的相同名字的用户,可以从被信任的主机上登录到这台主机上,而不必提供口令。信任也可被扩充到一些选中的机器上的不同用户,而最终可到任何主机上的任何用户。除rlogin外,rpc,rdist,rsh等(称为R*命令)都可使用信任方案。当从远程主机上启动任何R*命令,接收的主机仅检查发送机器的IP地址是否符合授权信任的主机,如果符合,命令就被执行;若不符合,就拒绝命令或要求口令。由于Internet协议缺乏源IP地址认证,IP欺骗攻击就是利用这个弱点。若入侵者的主机为illegal,目标主机为target,信任主机为friend,入侵者将illegal的IP地址改为friend的IP地址,即入侵者将发向目标主机的数据包中源地址改为被信任主机的地址,这样target就会相信illegal,允许它访问。防范的方法是禁用基于IP地址的信任关系:将MAC与IP绑定等。路由欺骗通过伪造或修改路由表来故意发送非本地报文以达到攻击目的。路由欺骗的分为:基于ICMP的路由欺骗、基于RIP的路由欺骗、基于源路径的欺骗。DNS欺骗DNS完成IP地址到域名之间的相互转换,从DNS服务器返回到响应一般为Internet上所有的主机所信任。黑客只需先于域名服务器所发送给客户机一个伪造的响应数据报就可欺骗客户机连接到非法的主机上,或者先在服务器验证一个可信任的客户机名的IP地址时欺骗服务器。防范方法是用转化得到的IP地址或域名再次作反向转换验证。Web欺骗Web欺骗通过创建某个WWW网站的一个复制图像,从而达到欺骗该网络用户的目的。如果用户访问这个假冒的网站,从用户角度来说感觉不到任何差别,但是用户的一举一动都在黑客的监视之下,用户提交的任何敏感信息(例如信用卡的帐号和密码)都成了黑客的猎物。台湾的某个电子商务网站就曾遭到黑客冒充,造成大量用户的信用卡密码被盗。为了实施Web欺骗,黑客必须引诱用户去访问这个假冒的网站,一般有以下方法:利用前面介绍的DNS欺骗;创建错误的Web索引,指示给搜索引擎;把错误的WEB连接发送给用户。防范的方法是:禁止浏览器中的Javascript、ActibeX功能,使黑客不能改写浏览器的信息栏来隐藏自己;通过浏览器提供的WEB属性或者直接查看HTML源文件发现错误的URL。TCP会话劫取TCP会话劫取是入侵者强行强占已经存在的连接。入侵者监视一个会话已经通过口令或其他较强的身份验证之后,就抢占这个会话。例如一个用户用login或其他终端会话连接到远程主机上,身份验证之后,入侵者抢占该连接。TCP会话劫取需要综合使用拒绝服务、监听和IP欺骗的方法。2.1.4安全威胁的根源五花八门的攻击方法让人眼花缭乱,那么为什么会有这么多的漏洞让黑客有机可乘呢?概括地说,安全威胁的根源主要是三个方面:1.网络协议设计和实现中的漏洞TCP/IP协议族在规则之初是为了方便地实现信息的共享,设计时注重的是开放和灵活,未能对安全性(身份鉴别和信息保密等)给予足够的考虑。这在当时的历史条件下是适用的,但在今天这样商业和政府广泛参与、INTERNET普遍应用的条件下,INTERNET缺乏安全性的先天不足就给无孔不入的黑客许多可乘之机。例如监听、暗藏的ICMP通道、SYN洪水、IP欺骗、DNS欺骗、TCP会话劫取、路由欺骗等都是利用了网络协议设计上的漏洞。各种类型的TCP/IP协议的软件实现中的漏洞更是五花八门,例如著名的OOB攻击就是利用了WINDOWS操作系统的早期版本中TCP/IP协议栈实现上的一个漏洞。2.计算机软件设计和实现中的疏漏包括作为计算机核心的操作系统和作为支撑软件的编译器和数据库管理系统,也包括提供服务的应用程序等,这些软件往往由于功能复杂、规模庞大,又没有安全理论的指导或安全原则未能贯穿始终,甚至有的在设计之初就没有考虑安全问题,导致了诸如缓冲区溢出、符号连接和后门等各种各样的攻击手段,这些漏洞一旦被发现,就可对系统的安全构成致命的威胁。3. 系统和网络使用过程中的错误配置及误操作完善的安全防范体系包括安全准则的正确执行,人为疏忽会造成系统错误配置。如果配置不当,攻击者就可以很容易突破防线,获得非授权访问能力甚至是系统特权。由此可见,只要杜绝了计算机系统在设计、实现和使用上的错误,黑客就束手无策了,这也是计算机工作者梦寐以求的一个理想。但是,经验证明程序错误和其它人为错误造成的安全隐患是不可能完全避免的。在这样的条件下,具有主动防御能力的入侵检测技术就显的尤为重要。2.2入侵检测技术2.2.1入侵检测的概念1980年4月,在James P.Anderson为美国空军做的题为 :计算机安全威胁监控与监视(“Computer Security Threat Monitoring and Surveillance”)的技术报告中,首次提出了入侵(威胁 threat)的概念:潜在的有预谋未经授权访问信息、操作信息、致使系统不可靠或无法使用的企图。Heady认为入侵是指试图破坏资源的完整性、机密性及可用性的行为集合。关于入侵检测的概念,还有许多从不同角度的定义。入侵检测是对发生在计算机系统或网络中的事件进行监控及对入侵信号的分析过程。使监控和分析过程自动化的软件或硬件产品称为入侵检测系统(Intrusion Detection System),简称IDS。一个完整的入侵检测系统必须具有:经济性、时效性、安全性、可扩展性的特点。2.2.2入侵检测系统的基本结构构成CIDF(Common Intrusion Detection Frame,公共入侵检测框架)提出了通用模型,将入侵检测系统分为四个基本组件:事件产生器、事件分析器、响应单元和事件数据库,见下图。输出:事件的有关信息输出:原始或低级事件响应单元事件分析器事件数据库事件产生器输出:高级中级事件输出:反应或事件输入:原始事件源图2.1公共入侵检测框架(CIDF)的体系结构(1)事件产生器(Event generators)事件产生器是入侵检测系统中负责原始数据采集的部分,它对数据流、日志文件等进行追踪,然后将收集到的原始数据转换为事件,并向系统的其他部分提供此事件。(2)事件分析器(Event analyzers)事件分析器接收事件信息,然后对它们进行分析,判断是否是入侵行为或异常现象,最后把判断的结果转换为警告信息。(3)事件数据库(Response units )事件数据库是存放各种中间和最终数据的地方。(4)响应单元(Response units )响应单元根据警告信息做出反应,如切断连接、改变文本属性等强烈的反应,也可能是简单地报警。它是入侵检测系统中的主动武器。2.2.3入侵检测的分类根据原始数据的来源分类:(1)基于主机(host-based)的入侵检测系统该系统获取的数据来源于运行该系统所在的主机。它通过监视和分析主机的审计记录和日志文件来检测入侵。基于主机的入侵检测系统主要用于保护运行关键应用的服务器。由于需要在主机上安装软件,针对不同的系统、不同的版本需安装不同的主机引擎,安装配置较为复杂,同时对系统的运行和稳定性都会造成影响。(2)基于网络(network-based)的入侵检测系统该系统获取的数据来源是网络上传输的数据包。它通过监听网络上的所有分组来采集数据,分析可疑现象。基于网络的入侵检测系统主要用于实时监控网络上的关键路径(某一共享网段)。只需把它安装在网络的监听端口上,对网络的运行影响较小。(3)混合型入侵检测系统毋庸质疑,混合型就是既基于主机又基于网络。基于主机的和基于网络的IDS具有互补性,基于网络的入侵检测能够客观地反映网络活动,特别是能够监视到系统审计的盲区;而基于主机的入侵检测能够更加准确地监视系统中的各种活动。由于近些年来,混合式病毒攻击的活动更为猖獗,单一的基于主机或者单一的基于网络的IDS无法抵御混合式攻击,因此,采用混合型的入侵检测系统可以更好的保护系统。根据分析方法分类(1)误用检测(特征检测 signature-based)误用检测是基于已知的系统缺陷和入侵模式,所以又称为特征检测。误用检测是对不正常的行为建模,这些不正常的行为是被记录下来的确认的误用和攻击。通过对系统活动的分析,发现与被定义好的攻击特征相匹配的事件或事件集合。该检测方法可以有效地检测到已知攻击,检测精度高,误报少。但需要不断更新攻击的特征库,系统灵活性和自适应性较差,漏报较多。商用IDS多采用该种检测方法。(2)异常检测(anomaly-based)异常检测是指能根据异常行为和使用计算机资源的情况检测出入侵的方法。它试图用定量的方式描述可以接受的行为特征,以区分非正常的、潜在的入侵行为。也就是,异常检测是对用户的正常行为建模,通过正常行为与用户的行为进行比较,如果二者的偏差超过了规定阈值则认为该用户的行为是异常的。异常检测的误报较多。目前,大多数的异常检测技术还处于研究阶段,基本没有用于商业IDS中。根据体系结构分类(1)集中式入侵检测系统集中式IDS有多个分布在不同主机上的审计程序,仅有一个中央入侵检测服务器。审计程序将当地收集到的数据踪迹发送给中央服务器进行分析处理。随着服务器所承载的主机数量的增多,中央服务器进行分析处理的数量就会猛增,而且一旦服务器遭受攻击,整个系统就会崩溃。(2)等级式(部分分布式)入侵检测系统等级式IDS中定义了若干个等级的监控区域,每个IDS负责一个区域,每一级IDS只负责所监控区的分析,然后将当地的分析结果传送给上一级IDS。等级式IDS也存在一些问题:首先,当网络拓扑结构改变时,区域分析结果的汇总机制也需要做相应的调整;其次,这种结构的IDS最后还是要将各地收集的结果传送到最高级的检测服务器进行全局分析,所以系统的安全性并没有实质性的改进。(3)分布式(协作式)入侵检测系统分布式IDS是将中央检测服务器的任务分配给多个基于主机的IDS,这些IDS不分等级,各司其职,负责监控当地主机的某些活动。所以,其可伸缩性、安全性都等到了显著的提高,并且与集中式IDS相比,分布式IDS对基于网络的共享数据量的要求较低。但维护成本却提高了很多,并且增加了所监控主机的工作负荷,如通信机制、审计开销、踪迹分析等。分布式IDS是本文研究一个重点。根据时效性分类(1)脱机分析:就是在行为发生后,对产生的数据进行分析,而不是在行为发生时进行分析。如对日志的审核、对系统文件的完整性检查等。(2)联机分析:就是在数据产生或者发生改变的同时对其进行检查,以发现攻击行为,这种方式一般用于对网络数据的实时分析,并且对系统资源要求比较高。不同的分类方法体现的是对入侵检测系统不同侧面的理解。入侵检测的核心在于对事件的分析,所以分析分类方法是较重要的。2.2.4入侵检测方法1、模式匹配模式匹配是传统的、最简单的入侵检测方法。该方法需要建立一个攻击特征库,检查接收到的数据中是否包含特征库中的攻击特征,从而判断是否受到攻击。它的算法简单、准确率高,但是只能检测到已知攻击,对已知攻击稍加修改就可以躲过检测,漏报现象严重,模式库需要不断更新。对于高速大规模的网络来说,由于要分析处理大量的数据包,该方法的速度就成为了问题。2、协议分析协议分析是对模式匹配的智能扩展,它利用网络协议的高度规则性快速探测攻击的存在。它的提出弥补了模式匹配技术的一些不足,如计算量大、探测准确率低等。另外,协议分析还可以探测碎片攻击。例如:假设袭击执行的基础协议是虚构的BGS协议,攻击要求非法变量foo必须传递到BGS型字段中。如果BGS协议允许隔字节为空,那么模式匹配将无法发现fx00ox00ox00,相反,协议分析则能够跳过空字节,如期发出警报。3、专家系统专家系统使用基于规则的语言为已知攻击建模,它把审计事件表述成语义的事实,推理引擎根据这些规则和事实进行判定。专家系统的建立依赖于知识库的完备性,知识库的完备性取决于审计记录的完备性和实时性。4、统计分析统计分析是通过设置极限阈值等方法,将检测数据与已有的正常行为加以比较,如果超出极限值,则认为是入侵行为。常用的入侵检测统计分析模型有:操作模型,方差,多元模型,马尔可夫过程模型,时间序列分析。5、数据挖掘数据挖掘是数据库中的一项技术,它的作用是从大型数据库中抽取知识。对于入侵检测系统来说,也需要从大量的数据中提取出入侵的特征。因此,将数据挖掘技术引入入侵检测系统中,通过数据挖掘程序处理收集到的审计数据,为各种入侵行为和正常操作建立精确的行为模式,这是一个自动的过程。数据挖掘的关键点在于算法的选取和一个正确的体系结构的建立。6、神经网络神经网络具有自适应、自组织和自学习的能力,可以处理一些环境信息复杂、背景知识不清楚的问题。将神经网络技术应用于入侵检测系统,以检测未知攻击。来自审计日志或正常网络访问行为的信息,经数据信息预处理模块的处理后即产生输入向量。使用神经网络对输入向量进行处理,从中提取用户正常行为的模式特征,并以此创建用户的行为特征轮廓。这要求系统事先对大量实例进行训练,具有每一个用户行为模式特征的知识,从而可以找出偏离这些轮廓的用户行为。7、模糊系统模糊理论在知识和规则获取中具有重要的作用。人类思维、语言具有模糊性,模糊思维形式和语言表达具有广泛性、完美和高效的特征。人们的许多知识是模糊的,模糊知识在控制和决策中具有巨大的作用。由于计算机网络中的正常行为和异常行为难以很好界定,使用模糊逻辑推理方法,入侵检测系统的误报率则会降低。8、免疫系统免疫系统是一个复杂的多代理系统。将免疫系统应用到入侵检测当中,本质上是设计和实现一个分布式智能多代理系统。免疫的基本原理是分辨本体(正常)和异体(异常)。在入侵检测领域,本体是被监控网络的正常行为,异体是网络的异常行为。9、遗传算法遗传算法是基于自然选择,在计算机上模拟生物进化机制的寻优搜索法.在自然界的演化过程中,生物体通过遗传、变异来适应外界环境,一代又一代地优胜劣汰,发展进化。遗传则模拟了上述进化现象。它把搜索空间映射为遗传空间,即把每个可能的解编码为一个向量,称为一个染色体,向量的每个元素称为基因。所有染色体组成群体,并按预定的目标函数对每个染色体进行评价,根据结果给出一个适应度的值。算法开始时先随机地产生一些染色体,计算其适应度,根据适应度对各染色体进行选择复制、交叉、变异等遗传操作,剔除适应度低的染色体,留下适应度高的染色体,从而得到新的群体。由于新群体的成员是上一代群体的优秀者,继承了上一代的优良形态,因而明显优于上一代。遗传算法就这样反复迭代,向着更优解的方向进化,直至满足某种预定的优化指标。10、数据融合数据融合是针对一个系统中使用多个和(或)多类传感器这一特定问题展开的一种新的数据处理方法,因此数据融合又称多传感器信息融合或信息融合。多传感器信息融合的基本原理就像人脑综合处理信息的过程一样,它充分利用多个传感器资源,通过对各个传感器及其观测信息的合理支配和使用,将各种传感器在空间和时间上的互补与冗余信息根据某种优化准则组合起来,产生对观测环境的一致性解释和描述。它的最终目的是利用多个传感器共同或者联合操作的优势,来提高整个系统的性能。把数据融合引入入侵检测领域,可以从不同角度、不同位置收集反映网络状态的数据信息,如网络数据包、系统日志、系统操作者发出的口令等。对这些信息进行分析和结果融合,给出检测系统的判断结果和响应措施。在实际的应用和研究中,通常不采用单一的检测方法而是采用多种检测方法相结合的方式来检测攻击。以上所介绍的方法有些还处于研究阶段,不能达到一定的检测精度,漏报、误报现象较为严重,还有待进一步的研究。2.3 BM算法Boyer-Moore(BM)算法,又叫做快速字符串搜索算法,它是一种非常有效的字符串匹配算法。主要应用于一些程序的字符串处理,比如:搜索,替代等。这种算法的时间复杂度低于线性,所以是现在用的最多的一种方法。BM算法从匹配串(模式串:pattern)的最右端的第一个字符开始从右至左扫描,匹配字符串(text),一旦发生不匹配就用两种规则向右移动模式串,直到匹配。这两种规则分别叫做:好后缀规则(good-suffix shift)、坏字符规则(bad-character shift)。好后缀规则(good-suffix shift)假设在模式串的字符xi=a,字符串的字符yi+j=b处不匹配,即xi+1 . m-1=yi+j+1 . j+m-1=u, and xi!=yi+j。有两种情况发生:1、如果在x后面的其他位置还包括好后缀u,且与u相邻左端的字符xi-n=c不等于xi=a,这时把在x后面的其他位置出现的u与y中的u对齐,并比较xi-n与yi+j。依次类推,示意图如下:图2.1好后缀规则, u 出现的位置前的字符c!=a2、如果没有出现与u相同的字符串则找到与u 的后缀相同的x的最长前缀u,向右移动x,使v与y中u的后缀相对应。示意图如下:图2.2好后缀规则, 只有u的一部分前缀出现在x中l 坏字符规则(bad-character shift)1、从右到左的扫描过程中,发现xi与yj不同,如果x中存在一个字符xk与yi相同,且ki那么就将直接将x向右移使xk与yi对齐,然后再从右到左进行匹配。图2.3坏字符规则,a与b不匹配,b出现在x中2、如果x中不存在任何与yi相同的字符,则直接将x的第一个字符与yi的下一个字符对齐,再从右到左进行比较。- 22 -信息安全专题设计与实现 第3章 系统总体设计图2.4坏字符规则,a与b不匹配,b没有出现在x中移动规则:当文本字符串与模式字符不匹配时,根据函数bad-character shift和good-suffix shift计算出的偏移值,取两者中的大者。1、存放bad-character shift的数组为BadChar,则BadCharc= mini| 1 im-1 and xm-1-i=c,如果c未在模式字符中出现则BadCharcm(m为x的长度)。2、存放good-suffix shift的数组为GoodSuffix,则suffi=maxk | yi-k+1 . i=xm-k . m-1, 1 i m 。即 suff 是 P0.i和 T 的最长一般后缀。计算suff数组使得计算GoodSuffix函数变得简洁GoodSuffixm - 1 - suffi = m - 1i。最后取BadCharc和GoodSuffixc的最大值。第3章 系统总体设计3.1 系统概述系统构建基于windows操作系统,并且兼容各种windows版本,系统的整体目标是实现一个windows平台下基于规则(基于误用)的网络数据包分析工具,实现基于规则的网络入侵检测,在现有已知的入侵特征下建立规则库,实现数据包地捕获和分析,完成对漏洞攻击和扫描等攻击行为的检测和报告。同时对攻击事件存入数据库,以便事后取证。系统基于windows平台构建的基于规则(基于误用)的网络数据包分析工具,能够有效检测入侵事件、防止入侵、安全审计。系统的开发选择支持国际标准的开发平台类型、系统结构和技术方案,支持跨平台、跨越应用的移植,使系统的硬件环境、通信环境、软件环境相互间依赖程度减至最小,使其各自发挥优势;为使能方便用户开发了一个中央控制台,方便用户管理和使用一系列的功能。3.2 系统总体结构框架信息安全专题设计与实现 第4章 相应模块设计实现入侵检测系统检测模块响应模块数据捕获数据分析规则库规则匹

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论