硕士学位论文基于攻击树的多层次入侵检测及其在linux上的原型

上传人:a**** 文档编号:115992690 上传时间:2022-07-04 格式:DOC 页数:50 大小:463KB
收藏 版权申诉 举报 下载
硕士学位论文基于攻击树的多层次入侵检测及其在linux上的原型_第1页
第1页 / 共50页
硕士学位论文基于攻击树的多层次入侵检测及其在linux上的原型_第2页
第2页 / 共50页
硕士学位论文基于攻击树的多层次入侵检测及其在linux上的原型_第3页
第3页 / 共50页
资源描述:

《硕士学位论文基于攻击树的多层次入侵检测及其在linux上的原型》由会员分享,可在线阅读,更多相关《硕士学位论文基于攻击树的多层次入侵检测及其在linux上的原型(50页珍藏版)》请在装配图网上搜索。

1、 学校编码:10384 分类号_密级_ 学 号:9928006 UDC _学 位 论 文基于攻击树的多层次入侵检测及其在Linux上的原型庄朝晖指导教师:申请学位类别 :硕 士专业名称:计算机应用论文提交日期 :文辩论日期 :学位授予单位 :厦门大学学位授予日期 :2002年 月 日辩论委员会主席: 评 阅 人: 目录结构前言摘要Abstract1.概述1.1计算机平安研究的内容1.1.1计算机平安技术的含义1.1.2计算机平安的主要研究内容1.1.3计算机平安标准及机构1.2网络平安的根本概念1.3 入侵检测的根本概念1.4 Denning的入侵检测模型1.5 相关术语1.6 本文的主要奉献

2、2. 入侵检测的分类及分布式入侵检测系统2.1 入侵检测的分类2.2 异常入侵检测2.2.1统计方法(Statistical Approach)2.2.2 指标选择(Feature Selection)2.2.3 单指标方法2.2.3.1 贝叶斯统计(Bayesian Statistics)2.2.3.2 协方差矩阵(Covariance Matrices)2.2.4 预测模式生成(Predictive pattern generation)2.2.5 神经网络(Neural Network)2.2.6 贝叶斯分类(Bayesian Classification)2.3 基于特征的入侵检测2.

3、3.1 使用条件概率(Conditional Probability)2.3.2 产生式/专家系统(Production/Expert Systems)2.3.3 状态转换分析(State Transition Analysis)2.3.4 键入特性(Keystroke)2.3.5 神经网络2.4CIDF(the Common Intrusion Detection Framework)及IDWG(the Intrusion Detection Working Group)工作组2.4.1组件和数据2.4.2层次和效劳2.4.3CISLCommon Intrusion Specificatio

4、n Language2.4.3.1 CISL概述2.4.3.2SID分类2.4.3.3攻击范例2.4.4小结2.4.5 IDWG工作组2.5 分布式入侵检测系统3.多层次入侵检测及其攻击树描述3.1多层次入侵(Multi-stage Intrusion)检测的概念3.2攻击树的概念3.3基于攻击树的攻击语言及例如3.3.1 基于攻击树的攻击语言3.3.2 使用攻击语言来描述IP Spoofing攻击3.4 使用Z语言来代替攻击语言3.4.1Z语言简介3.4.1.2状态模式(State Schemas)3.4.1.3 操作模式3.4.1.4模式运算3.4.1.5 Object-Z语言3.4.2

5、使用Object-Z语言来表示攻击模式3.4.2.1 相关概念3.4.2.2 结点关系表示3.4.2.3 使用Object-Z语言来表示IP-Spoofing攻击3.4.3 小结3.5 基于攻击树的平安事前分析3.5.1事前分析的形式化定义及求权重的算法3.5.2把权重值扩充为一个有序对3.5.3应用例子3.5.4 小结4基于攻击树模型的层次式入侵检测系统ACIDSAttack-tree based Centralized Intrusion Detection System4.1 体系结构选择4.1.1 协作式体系结构4.1.2中心式体系结构4.1.3两者的比拟及选择4.2 系统结构4.3

6、Socket编程4.3.1 TCP/IP状态转换图4.3.2根本TCP客户-效劳器程序的流程及套接口函数4.3.3关键的socket编程函数4.4 编程技术难点4.4.1 如何截获网络数据包4.4.1.1SOCK_RAW方式4.4.1.2 PF_PACKET方式4.4.1.3libnet,libpcap和libnids库文件方式4.4.1.4 各种方式的比拟及选用4.4.2多客户问题4.4.3heartbeat信号问题4.4.4 AGENT内进程通信4.4.4.1 消息队列方式4.4.4.2 共享内存方式4.4.4.3 管道方式4.4.4.4 选择:4.5 各主要模块功能简介4.5.1 cen

7、ter4.5.2 agent4.5.3 sensor4.5.4 oobsvr4.5.5 oobclnt4.5.6 各组件的通信示意图4.6 系统的部署4.7 系统运行步骤4.8 系统可待改良的地方5当前入侵检测系统的开展趋势及本系统有待改善之处5.1 入侵检测系统的开展趋势5.1.2 模块化,共享化 5.1.3 人工智能方法5.1.4 入侵检测系统的评价方法5.1.5 入侵检测的正确性,完备性5.1.6 IDS用户界面设计5.1.7 IDS的形式化描述5.1.8 IDS与其它平安产品的交互与自动响应5.1.9 复杂入侵的建模5.2 本系统有待改善之处参考文献结语自觉地采取批判方法,成为知识增长

8、的主要手段。没有任何理论可以作为终极真理永远为我们所依赖,我们最多只能说:它被迄今为止的每一个观察所证明;它比的别的理论提出了更多、更准确的预言。它还是会被更好的理论所代替。批判这一态度在远远超出科学范围的地方也可以使用。这种态度隐含着一种认识,我们永远不得不生活在一个不完美的社会中。英波普尔前言在我的课题和论文即将结束之际,我首先要感谢我的导师杨晨晖博士。在这三年中,杨老师给予了我极大的帮助和支持,从选题,工作上的指导到论文的修改定稿,无不浸透着杨老师的心血。杨老师执着务实的科研作风和勤奋的治学精神给我留下了深刻的印象。另外,谢谢李名世老师在研一时对我的指导,并从一年级就为我提供了良好的实验

9、条件。陈毅东、林凡同学对我的工作提出了不少有益的建议,也向他们道一声感谢。谢谢研究生期间所有的任课老师对我的教导与帮助。谢谢研究生期间的同学,与他们的讨论对我产生了很大的帮助。谢谢yawl及他管理的站点,它给我提供了很多资料及思想。谢谢多媒体实验室及Linux实验室的老师和同学,给我提供了良好的实验环境。谢谢周围的同学与朋友,给我提供了一个良好的气氛。谢谢家里的亲人,他们是我前进永远的动力。谢谢我的女朋友,在我写论文期间对我的照顾及对我思想的帮助。晓晓谢谢所有在我求学生涯中关心过我,鼓励过我,帮助过我的人们。谢谢鲁迅、奥威尔、李慎之、波普尔等人的文章对我思想的帮助。摘要入侵检测是计算机平安领域

10、的一个重要技术,也是当前计算机平安理论研究的一个热点。最近IEEE上几乎每个月都有新的入侵检测方面的论文。这几年,我国政府也对入侵检测研究投入了较大的重视。2000年6月,863把入侵检测研究列入信息平安技术应急方案。入侵(Intrusion)指的就是试图破坏计算机保密性,完整性,可用性或可控性的一系列活动。当前入侵活动往往不是一次性的,孤立的活动,而往往是由一系列入侵活动组成的。多层次入侵Multi-stage Intrusion指的就是这一类的入侵活动。入侵检测(Intrusion Detection)就是对计算机网络和计算机系统的关键结点的信息进行收集分析,检测其中是否有违反平安策略的事

11、件发生或攻击迹象,并通知系统平安管理员。一般把用于入侵检测的软件,硬件合称为入侵检测系统(Intrusion Detection System)。第一章介绍了计算机平安、网络平安、入侵检测的一些根本概念及相关术语。第二章首先介绍了入侵检测的分类并详细介绍了各种异常入侵检测及基于特征的入侵检测方法。然后介绍了分布式入侵检测系统。第三章首先介绍协同入侵检测,然后引入攻击树来表示协同入侵,并提出了一个基于攻击树的攻击说明语言。另外,还使用攻击树来对系统平安事前分析,并提出了权重的计算算法。最后,引入形式化语言Z语言来对攻击模式进行描述,并以IP-Spoofing为例构造了一个IP_Spoofing攻

12、击模式。第四章给出了一个层次式入侵检测系统的详细说明并在Linux操作系统上实现了一个层次式入侵检测框架。第五章讨论了当前入侵检测系统的开展趋势及主要难点,并提出本文的缺乏之处及未来的工作。本文的奉献主要是以下几个方面:1. 使用攻击树对系统平安进行事前分析,并提出了权重的计算算法。分析员先根据系统情况建立一棵攻击树,然后给所有的叶子结点赋值(经验方式),就可以计算出攻击树上所有结点的值。另外文中使用攻击树对大规模入侵进行建模,并提出了一个基于攻击树的攻击说明语言,而且使用该语言描述了IP_Spoofing攻击。2. ZObject-Z语言具有强大的形式化表示功能,文中引入Z语言来对攻击模式进

13、行描述,提出了攻击树的结点及三个关系操作符在Z语言中的表示方式,并给出了IP_Spoofing攻击的Z语言描述。3. 定义了层次式入侵检测各部件的功能并在Linux上实现了一个层次式入侵检测框架ACIDS,并验证了本文提出方法的可行性。在系统实现中,应用了网络数据包捕捉,socket、带外数据、管道等编程技术。关键词:多层次入侵检测,攻击树,攻击说明语言,Z语言,形式化,Linux,事前分析AbstractWith the development of computer technology and the explosion of Internet, computer security be

14、comes more and more important. Annual reports from the Computer Emergency Response Team (CERT) indicate a significant increase in the number of computer security incidents each year. According to CERT, the Number of incidents reported increase sharply from 252 in 1990 to 21,756 in 2000.A narrower de

15、finition of computer security (or information security) is based on the realization of confidentiality, integrity, availability and controllability in a computer system. There are many measures for computer security, such as access control, encryption, auditing, authentication, etc. However, complet

16、ely preventing breaches of security appear, at present, unrealistic. We can, however, try to detect these intrusion attempts so that action may be taken to repair the damage later. This field of research is called Intrusion Detection. An intrusion is defined as any set of actions that attempt to com

17、promise the integrity, confidentiality, availability, or controllability of a resource. Intrusion detection is defined as the problem of identifying individuals who attempt to use a computer system without authorization and those who have legitimate access to the system but are abusing their privile

18、ges. An intrusion detection system (IDS) is a computer system that attempts to perform intrusion detection. Multistage intrusion detections give emphasis on the finding the relations among the intrusion events, which may are initiated by different attackers from different hosts at different time. In

19、 Chapter 1, related term and related concepts are introduced, such as Computer Security, Network Security and Intrusion Detection.In Chapter 2, the classification of intrusion detect is introduced in detail. Then the work done by some standardized organization (CIDF and IDWG) is introduced. In the e

20、nd, we discuss the distributed IDS and divide it into two categories.In Chapter 3, the concept of attack trees is introduced first. Then Based on the attack tree model, an attack specification language is constructed and an example of IP-Spoofing attack is given. Moreover, Z language is adopted to d

21、efine the attack model. In addition, we apply attack tree model to evaluating the likelihood of being compromised beforehand.In Chapter 4, a specification of Attack-tree based Centralized Intrusion Detection System (ACIDS) is given and a prototype is implemented based on Linux.In Chapter 5, we discu

22、ss the research and technical trend of IDS. The overall intent of this dissertation is to develop a methodology for the construction of multi-stage intrusion detection systems. The following research objectives accomplish this intent:l An attack specification language based on enhanced attack tree m

23、odel is constructed. Using this language, we define attack template library. We take IP_Spoofing attack for example. Attack tree also is applied to evaluating the security of host beforehand.l Z language (with Object-Z extension) , a formal language, is employed to depict the attack tree model. The

24、representations of nodes and relations among nodes are given. Last, a construction of IP_Spoofing attack schemas exemplifies this method.l The specification of central intrusion detection is given and a prototype called Attack-tree based Intrusion Detection System (ACIDS) is implemented in Linux env

25、ironment to demonstrate the feasibility of this method. In the system, some advanced technical skills such as Raw Packet, Socket, Out of Band Data and Pipe are employed.Keyword:Multi-stage Intrusion Detection, Attack Tree, Attack Tree Specification Language, Z language, Formal, Linux, analysis befor

26、ehand1.概述1.1计算机平安研究的内容1.1.1 计算机平安技术的含义计算机平安技术主要包含以下几个方面的含义:1)保密性:信息不泄露给非授权用户、实体或过程,或供其利用的特性。信息经过加密变换后变成密文,只有那些经过授权的合法用户,掌握解密密钥,才能通过解密算法将密文复原成明文。2完整性:数据未经授权不能进行改变的特性。即信息在存储或传输过程中保持不被修改、不被破坏和丧失的特性。3可用性:可被授权实体访问并按需求使用的特性。平安系统能够对用户授权提供其某些效劳,即经过授权的用户可以得到系统资源,并且能享受系统所提供的效劳。例如网络环境下拒绝效劳、破坏网络和有关系统的正常运行等都属于对可

27、用性的攻击。4)可控性:对信息的传播及内容具有控制能力。5可靠性:可靠性是指对信息完整性的依赖程度,也是对信息平安系统完整性的依赖程度。计算机平安的主要研究内容1) 物理平安计算机系统物理平安主要是指为保证计算机设备和通信线路及设施建筑物等的平安。一是预防地震,雷电等自然灾害,满足设备正常运行环境的要求而采用的技术和方法;二是采取必要的措施防止计算机设备被盗,设定平安管理规定;三是为防止电磁辐射泄漏而采取的低辐射产品、屏蔽或反辐射技术和各种设备的备份等。2)密码学密码学是一门研究密码系统或通信平安的科学。它主要包括两个分支,密码编码学和密码分析学。密码编码学的主要目的是寻求信息保密性和可认证性

28、的方法,密码分析学的主要目的是研究加密消息的破译和信息的伪造。这两个方向相互联系,相互促进。3)操作系统平安操作系统是计算机重要的系统软件,它控制和管理计算机所有的软、硬件资源。由于操作系统的重要地位,使攻击者常常以操作系统为主要攻击目标,因此研究保护操作系统的方法、设计平安的操作系统,对整个计算机系统的平安至关重要。操作系统采用的平安控制方法主要是隔离控制和访问控制。4)数据库平安数据库平安指的是为了保护计算机系统中数据库或数据文件免遭破坏、修改、显露和窃取等威胁和攻击而采用的技术方法,包括各种用户识别技术、口令验证技术、存取控制技术和数据加密技术,以及备份、异地存放、妥善保管等技术和方法。

29、5)网络平安计算机网络就是将分散在不同地理位置的计算机系统,通过某种介质连接起来,实现信息的资源的共享,Internet的迅速开展给网络系统的平安保护提出了更高的要求。网络平安是指网络系统的部件、程序、数据的平安性,它通过网络信息的存储、传输和使用过程表达。所谓的网络平安性就是保护网络程序、数据或者设备,使其免受非授权使用或访问,它的保护内容包括:保护信息和资源,保护客户和用户,保证私有性。网络平安是计算机平安的一个重要组成局部。6)病毒防治计算机病毒是一种危害极大的程序,它直接威胁着计算机系统的平安。它在一定的条件下激发,感染磁盘引导区,或数据文件与程序,占用系统资源,降低系统效率,重者造成

30、整个系统的瘫痪。因此研究计算机病毒的种类,原理,检测与去除技术是计算机平安的重要组成局部。计算机平安标准及机构美国国家平安局NSA美国国家平安局简称NSANationalSecurityAgency,是美国政府的官方平安机构,该机构建立于1952年,隶属于美国国防部。它的主要任务是监听和破译所有对本国信息平安有价值的外国通信。NSA还一直从事密码学的研究,一方面研究密码算法,加强本国通信的平安;另一方面研究密码分析技术,监听他国的通信。NSA被世界公认为是拥有最多的数学家的机构,也是先进计算机设备的最大买主,因此,NSA在密码学研究领域总是处于领先地位,许多实际应用的密码系统都分别被其击破。美

31、国国家计算机平安协会NCSA美国国家计算机平安协会简称 NCSANational Computer Security Association,它是 NSA的一个分支机构,担负着国家重要的计算机程序设计工作。该协会负责对商业性的平安产品进行评估,包括硬件产品和软件产品的评估,主持重点工程的研究工作,开展技术指导咨询,提供建议方案,并且组织培训效劳。NSCA成功地制定出国防部计算机系统的评估准那么 DDTCSECDepartment of Defense Trusted Computer System Evaluation Criteria,准那么中将平安的可靠性分成A,B,C,D四类8个等级,具

32、体如下:D:最低平安要求,属非平安保护类,它不能用于多用户环境下的敏感信息的处理。只有一个级别。C:自主型保护类,它分为两级 C1:具有一定的自主型存取控制机制,通过用户与数据隔离措施满足平安要求。 C2:可控制的平安保护机制,通过注册、审查、资源隔离到达平安要求。B:强制型平安保护类,它分为三级 B1:标记平安保护,具有C2级的全部功能,并增加了标记强制型访问控制等功能。 B2:具有形式化平安模型,系统设计结构化,并要求计算机系统加人一种允许用户去评价系统满足哪一级的方法。 B3:平安区域级,具有严格的系统结构化设计,并具备全面的存取控制的访问监控机制,以及审计报告机制。A:验证型平安保护类

33、,分两级 A1;验证设计,要求用形式化设计说明和验证方法对系统进行分析。 超A1:验证客观级,比A1级具有更高的平安可信度要求,其技术有待于今后进一步研究探讨。通常,不同的平安等级,应采取不同的平安技术措施实现,下表是计算机平安等级的技术策略。计算机平安等级的技术策略编号平安技术策略A1 B3 B2 B1 C2 C1 D12345678鉴别使用口令登录的各用户维护用户资格不受侵害能产生保持客体存取的审核踪迹授权存取审核踪迹具有事件审核记录用户标识符选择平安状况审核隐蔽信道事件审核 910111213141516实时威胁监控用户存取控制存取未准锁定存取授权限制存取控制表的存取方式和控制资源存储区

34、保护隔离地址空间进程隔离硬件积木化 17181920212223242526272829303132存储区去除再使用正确标识平安等级打印标志级别信道隔离级别信道路由指定多信道报文标签敏感标志外部资源标志动态终端标识平安、泄漏和完整性对外部用户控制操作、管理人员别离管理活动审核可注册途径平安级别变化可信途径平安恢复 1.2网络平安的根本概念网络平安是一门涉及计算机科学、网络技术、通信技术、密码技术、信息平安技术、应用数学、数论、信息论等多种学科的综合性学科。网络平安是指网络系统的部件、程序、数据的平安性,它通过网络信息的存储、传输和使用过程表达。网络平安包括物理平安和逻辑平安。网络平安从其本质上

35、来讲就是网络上的信息平安。从广义来说,但凡涉及到网络上信息的保密性、完整性、可用性、真实性和可控性的相关技术和理论都是网络平安的研究领域。确保网络系统的信息平安是网络平安的目标,信息平安包括两个方面:信息的存储平安和信息的传输平安。信息的存储平安是指信息在静态存放状态下的平安,如是否会被非授权调用等。信息的传输平安是指信息在动态传输过程中平安。为了确保网络信息的传输平安,有以下几个问题:对网络上信息的监听对用户身份的仿冒对网络上信息的篡改对发出的信息予以否认对信息进行重发网络的平安威胁主要有三个来源:(1) 人为的无意失误(2) 人为的恶意攻击(3) 网络软件的漏洞和“后门 网络平安的威胁主要

36、包括如下几种类型:(1)物理威胁:偷窃、废物搜寻、间谍行为、身份识别错误(2)线缆连接:窃听、拨号进入、冒名顶替。(3)身份鉴别:口令圈套、口令破解、算法考虑不周、编辑口令(4)编程:A病毒:Internet蠕虫B代码炸弹:一旦到了设定的时间,它就被触发并产生破坏C特洛伊木马:特洛伊木马是包括病毒、代码炸弹、蠕虫和诸如此类的恶意代码的通称。D更新或下载:有些网络允许通过MODEM进行操作系统更新,于是非法闯入者通过它对系统进行非法更新。E系统漏洞:亦称为陷阱,通常由系统开发者有意设置的,能在用户失去了对系统的所有访问权后仍进入系统。1.3 入侵检测的根本概念传统上,一般采用防火墙作为平安的第一

37、道屏障。但是随着,攻击者技术的日趋成熟,攻击手法的日趋多样,单纯的防火墙已经不能很好地完成平安防护工作。在这种情况下,入侵检测技术成为市场上新的热点。入侵(Intrusion)指的就是试图破坏计算机保密性,完整性,可用性或可控性的一系列活动。入侵活动包括非授权用户试图存取数据,处理数据,或者阻碍计算机的正常运行。入侵检测(Intrusion Detection)就是对计算机网络和计算机系统的关键结点的信息进行收集分析,检测其中是否有违反平安策略的事件发生或攻击迹象,并通知系统平安管理员Site Security Officer。一般把用于入侵检测的软件,硬件合称为入侵检测系统(Intrusio

38、n Detection System)。1.4 Denning的入侵检测模型Dorothy Denning1987年介绍了一种通用的入侵检测模型。如以下图所示。活动记录设计新的活动记录事件发生器创立异常记录修改记录状态定义新规那么,修改旧规那么规那么集/检查引擎审计应用日志网络包时钟图Denning的通用入侵检测模型该模型的三个主要的部件是事件产生器Event Generator,活动记录器Activity Profile和规那么集Rule Set。事件产生器是模型中提供活动信息的局部。活动记录器保存监视中的系统和网络的状态。当事件在数据源中出现时,就改变了活动记录器中的变量。规那么集是一个普

39、通的核查事件和状态的检查器引擎,它使用模型,规那么,模式和统计结果来对入侵行为进行判断。此外,反应也是模型的一个重要组成局部。现有的事件会引发系统的规那么学习以参加新的规那么或者修改规那么。系统的三个子系统是独立的,可以分布在不同的计算机上运行。1.5 相关术语活动Activity:活动是传感器或分析器在数据源检测到的平安相关事件。例如网络活动中出现的异常telnet事件、主机日志文件中记录的非法登录事件或应用日志上记录的重复登录失败。活动包含严重的攻击事件如恶意攻击,较不严重的事件如异常的用户行为和中立事件如用户登录。管理员Administrator:管理员的职责是设置系统的平安政策并配置I

40、DS。警报Alert:分析器向管理器传送的信息,汇报检测到的相关事件。一条警报通常包含这起事件的详细报告。分析器Analyzer:分析器是入侵检测系统的一个模块,用于收集传感器检测到的平安相关事件。在一些IDS系统中,分析器与传感器组为一个模块。数据源Data Source:IDS系统用来检测平安相关事件的原始数据。数据源一般有原始网络包,操作系统的审计日志,应用程序审计日志和系统生成的校验信息。平安相关事件Event:数据源中被检测到的可能导致警报的事件。例如,在T秒内的N次登录失败可能表示正在发生强力登录攻击。入侵检测系统IDS:入侵检测系统可能含有一个或多个以下模块:传感器,分析器,管理

41、器。管理器Manager:入侵检测系统的模块之一,操作员可以用它来管理入侵检测系统的其它模块。管理器的功能一般包含传感器配置,分析器配置,事件警告管理,数据合并和报告生成。事件告知Notification:事件告知是管理器向操作员汇报事件的方式。事件告知可以用屏幕上的彩色图标,向Email或传呼送消息,发送SNMP trap等方式。操作员Operator:IDS管理器的操作者。操作员的任务一般有监测IDS系统的输出、采取或推荐响应行动。响应Response:响应是对某一事件的反应活动。响应可以是自动响应,也可以由操作员来启动。事件告知就是一种响应。响应还可以包含记录事件的相关信息,中止网络连接

42、,中止用户执行,中止应用程序,和改变网络或系统的存取权限。传感器Sensor:传感器是IDS系统的模块之一,用于从数据源收集数据。传感器向分析器传送平安相关事件。签名Signature:签名是用于表示某一类攻击的规那么。分析器使用签名集合来检测平安相关事件。平安策略Security Policy:平安策略是一系列定义好的形式化语句,定义在网络上和主机上哪些活动是允许的。在本文中,入侵与攻击是相同的概念。1.6 本文的主要奉献本文的奉献主要是以下几个方面:1.使用攻击树对系统平安进行事前分析,并提出了权重的计算算法。分析员先根据系统情况建立一棵攻击树,然后给所有的叶子结点赋值(经验方式),就可以

43、计算出攻击树上所有结点的值。另外文中使用攻击树对大规模入侵进行建模,并提出了一个基于攻击树的攻击说明语言,并用该语言描述了IP_Spoofing攻击。2.ZObject-Z语言具有强大的形式化表示功能,文中引入Z语言来对攻击模式进行描述,提出了攻击树的结点及三个关系操作符在Z语言中的表示方式,并给出了IP_Spoofing攻击的Z语言描述。3.定义了层次式入侵检测各部件的功能并在Linux上实现了一个层次式入侵检测框架ACIDS,并验证了本文提出方法的可行性。在系统实现中,应用了网络数据包捕捉,socket、带外数据、管道等编程技术。2. 入侵检测的分类及分布式入侵检测系统2.1 入侵检测的分

44、类IDS的数据源一般来自网络数据和系统数据。根据数据源可以把IDS系统分为基于主机和基于网络的入侵检测。网络型入侵检测系统的数据源那么是网络上的数据包。可以将某台主机的网卡设于混杂模式Promisc Mode,监听所有本网段内的数据包并进行判断或直接在路由设备上放置入侵检测模块。一般网络型入侵检测系统担负着保护整个网段的任务。一般来说,在防火墙之外的检测器采用基于网络的入侵检测系统,负责检测来自Internet的攻击。主机型入侵检测系统往往以系统日志、应用程序日志等作为数据源,当然也可以通过其他手段如监督系统调用从所在的主机收集信息进行分析。主机型入侵检测系统保护的一般是所在的系统。防火墙内部

45、的Web,DNS和Email等效劳器是大局部攻击的目标,这些效劳器应该安装基于主机的入侵检测系统以提高整体平安性。入侵检测根据检测方法可以分为两大类:异常anomaly入侵检测和基于特征signature的入侵检测。异常入侵检测根据用户的异常行为或者对资源的异常存取来判断是否发生入侵事件。例如一个用户A一般在早上九点到晚上五点之间登录到效劳器,那么如果有一天,效劳器发现该用户账号在午夜12点登录到效劳器来,就认为是一次入侵事件。异常入侵检测要建立一个阀值来区分正常事件与入侵事件。Anderson在此根底上把入侵分为外部渗透external penetrations,内部渗透internal p

46、enetrations,滥用misfeasance。外部渗透指的是非授权用户试图使用系统;内部渗透是合法用户试图访问非授权的数据,如经过窃权伪装或绕过访问控制;滥用指合法用户对数据和资源的滥用。基于特征的入侵检测检查对照已有的攻击特征,定义攻击模式,比拟用户的活动来发现入侵。例如著名的Internet蠕虫事件中利用fingerd和sendmail的漏洞进行攻击,对这种攻击就可以使用这种检测方法。异常入侵检测方法的最大缺乏之处是“异常并不等于入侵,如以下图1,入侵行为集124区域3异常行为集图1:异常与入侵的比拟这样,我们可以把异常与入侵的关系分为四种类型:1对应区域1的局部,是入侵但不是异常。

47、虽然它是一个入侵事件,但由于不在异常集中,所以系统不能检测。这类事件的集合称为错误拒绝集false negatives。2对应于区域2的局部,不是入侵但是异常。虽然不是一个入侵事件,但是由于在异常集中,所以会被认为是一次入侵事件。这类事件的集合称为错误接受集false positives。3对应于区域3的局部,不是入侵也不是异常。这类事件会被正确排除,称为正确拒绝集true negatives。4)对应于区域4的局部,是入侵同时也是异常。这类事件会被正确检测,称为正确接受集true positives。使用基于特征的入侵检测的一个缺乏之处是这种方法需要对攻击进行编码,问题是并不是所有的攻击都可

48、以用编码的方式来很好地表达,而且这种方式不能检测未知的攻击方式。所以在实用系统中,经常混合使用两种入侵检测方法,来最大限度地检测入侵活动。在这两大类里还可以分为几种方法,下面我们详细讨论之。2.2 异常入侵检测异常入侵检测检测异常活动的发生,如果有异常活动发生就认为是有入侵嫌疑。既然有异常的概念,就有相应的正常活动的定义,并且要对正常活动的偏离定义阀值。异常入侵检测可以分为以下几种:2.2.1 统计方法(Statistical Approach)异常入侵检测中经常使用统计方法,假设正常的操作存在内在的统计规律。入侵检测系统观测主体如用户的活动并生成相应的活动特征表profile。活动特征表含有

49、假设干指标measure值,每个指标值代表系统平安性某个方面的阀值。这些指标值根据经验值或一段时间内的统计得到。假设S1,S2,Sn代表指标M1,M2,Mn的阀值,然后从某段时间的审计记录中提取当前特征表T1,T2,Tn,如果Ti比Si大,那么表示i指标的异常度大。另外也可以使用各指标阀值的带权平方和Ai0,其中Ai为Si的权重。来做比拟标准。特征表一般含有以下类型的指标。A 活动强度指标:用来衡量用户活动的频率,如一分钟内用户产生的审计记录数。B 审计记录-分布情况指标:用来衡量最近审计记录中所有活动类型的分布情况,如某个用户的文件存取与I/O活动的分布情况。C 类别指标:用来在不同类别里面

50、衡量某一活动的分布情况,如来自不同物理位置的login命令的相对频率,或系统中每个邮件效劳器,编译器,shell,编辑器的相对使用频率。D 序数指标:用数值来表示活动情况,如某一用户对CPU和I/O的使用总值。使用统计方法的优点是可以利用相对成熟的统计理论成果。但使用统计方法的一个主要缺点是入侵者可以“训练该IDS使得它把异常逐渐当作正常。另一个缺点是难以确定适宜的阀值。另外,有些行为难以用纯统计的方法来建模。 指标选择(Feature Selection)如何从可能的指标集中抽取最能表达和预测入侵情况的最优子集,这是指标选择所考虑的问题。假设有n个可能的指标,那么可能的最优集在它的幂集空间取

51、值,这是个指数递增的问题。Maccabe等5提出了一种基于遗传算法的解决方法。首先使用学习分类机制生成初始指标集,然后不断使用杂交(Crossover)和变异(Mutation)算子生成新的指标集,根据规那么评价保存有更高入侵预测价值的指标集。 单指标方法我们可以通过某些方法把指标集中的指标转化为一个数字指标。2.2.3.1 贝叶斯统计(Bayesian Statistics)假设A1,A2,An是n个指标,Ai有两个可能值:1表示异常,否那么为0。设I表示当前系统正发生入侵事件,那么使用贝叶斯公式(Bayes Theorem)P(I|A1,A2,An)=P(A1,A2,An|I)P(I)/P

52、(A1,A2,An)公式(1)如果我们假设每个不同的Ai之间相互独立,那么P(A1,A2,An|I)=P(A1|I)P(A2|I)P(An|I)根据统计数据我们可以计算P(I),P(A1,A2,An),这样就可以解出公式(1),计算出在当前指标值下正遭受入侵的可能性大小。2.2.3.2 协方差矩阵(Covariance Matrices)然而为了更精确地推导P(I|A1,A2,An)的值,我们要考虑指标间的相互联系。NIDES6使用了协方差矩阵来表示Ai间的联系,矩阵中的每一个元素表示Ai与Aj间的关联,计算ATC-1A来作为异常指标。2.2.4 预测模式生成(Predictive patte

53、rn generation)假设事件序列有一定的内在顺序。该方法使用学习机制建立规那么集,如规那么E1-E2-E3=(E4=95%,E5=5%)表示在顺序发生了E1,E2,E3后,E4发生的概率为95%,E5为5%。2.2.5 神经网络(Neural Network)神经网络首先搜集一些命令集对神经网络进行训练,然后输入当前命令和前W个命令(W为已执行命令窗口的大小),输出是预测的下一个命令。这种方法的最大缺点是不能检测神经网络输入集以外的入侵事件,因为它不满足神经网络的输入事件。 贝叶斯分类(Bayesian Classification)贝叶斯分类使用基于贝叶斯统计技术的Autoclass

54、,对数据进行非监控的处理。2.3 基于特征的入侵检测基于特征的入侵检测又称Misuse Detection,它事先把入侵者活动用模式表示,系统的目标是检测主体活动是否符合这些模式。下面我们讨论各种基于特征的入侵检测方法。 使用条件概率(Conditional Probability)这种方法类似于3.3.1的贝叶斯统计方法,不同之处是这里的条件是一系列的事件,我们所要求的是P(I|ES) (I:Intrusion,ES:Event Sequence)的值,根据贝叶斯公式,我们得到:P(I|ES)=P(ES|I)P(I)/P(ES)公式(2)根据统计的数据可以得到P(I)和P(ES|I)的值,再

55、根据全概率公式得P(ES)=P(ES|I)P(I) + P(ES|I)P(I)=( P(ES|I) - P(ES|I) )P(I) + P(ES|I)P(ES|I)同P(ES|I)求法,那么P(ES)可求,代入公式(2)可得P(I|ES)的值。 产生式/专家系统(Production/Expert Systems)用专家系统对入侵进行检测,经常是针对有特征的入侵行为。如Snapp和Smaha7使用IfThen来表示知识。If局部为入侵特征,Then局部为系统防范措施,当If局部的条件全部满足时,触发Then局部的防范措施。专家系统的难点是专家系统知识库的完备性。 状态转换分析(State Tr

56、ansition Analysis)Ilgun等8提出的STAT使用状态转换分析并在UNIX上建立了一个USTAT系统,系统把入侵表示为一系列的状态转换。每一个状态对应一个系统状态,在每个状态必须满足限定的布尔表达式,如owner(object)=root。状态间用有向弧连接,当弧上的特征行为signature action)发生时,状态发生转移。如果到达危险状态(compromise state),表示当前可能正在发生入侵事件。近来也有人尝试用petri网来检测入侵。 键入特性(Keystroke)这种技术利用键入特性来检测入侵,如根据一系列的键入字符来检测入侵。这种方法需要操作系统的支持,

57、而且它并没有分析击键的真正语义,容易被入侵者使用别名(alias)骗过。2.3.5 神经网络Bonifaco J M和Moreira ES(1997)9提出了一种用于入侵检测的神经网络,它的神经输入单元为128个,输出单元为1个,将的入侵信号集分为训练集与测试集,对固定结构的神经网络进行训练,直至输出正确结果。这种方法可确定具有异常入侵特征的信号串。2.4CIDF(the Common Intrusion Detection Framework)及IDWG(the Intrusion Detection Working Group)工作组CIDF的目的是使各个入侵检测研究工程可以共享信息和资源

58、,便得各组件可以共享使用,并定义一系列协议和应用程序接口。CIDF的概念首先由DARPADefense Advanced Research Projects AgencyITOthe Information Technology Office的Teresa Lunt女士提出,随后Stuart Staniford-Chen对CIDF概念进行拓宽,并吸引了来自世界各地的参加者。2.4.1组件和数据CIDF把IDS分成四个组成局部,各组件之间通过消息交换机制交流信息。这四个组件分别是:事件生成器Event generators,简称为E-boxes,事件分析器Event analyzers,简称为A

59、-boxes,事件数据库Event Database,简称为D-boxes,响应单元Response Units,简称为R-boxes。这四个组件使用gidosgeneralized intrusion detection objects来交换数据,gidos在CIDF工作组的CISL(Common Intrusion Specification Language)文档中定义。一个gidos有以下几种作用:记录某个时间发生的某个事件;根据某些事件得出的汇总报告;一个执行某个动作的指令。事件生成器从IDS监控的计算机环境中获得数据,并把它们转化为CIDFgido格式。事件生成器处理的数据可以从审

60、计记录中得来,也可以来自于网络通信信息,或者来自于SQL数据库中生成的事务信息。事件生成器在事件发生后尽量快地提供该事件的报告,而事件数据库那么用于存储事件。事件分析器接收其它组件发送的gidos进行分析并返回新的gidos一般是事件的综合信息。例如,事件分析器可以是一个统计比拟工具或者是一个特征检查工具,或者是一个事件汇总工具。事件数据库用于存放所需的CIDFgidos。响应单元接收其它单元递交的gidos并执行它们规定的动作。动作包括中止进程,连接复位,改变文件允许值等。2.4.2层次和效劳CIDF组件通信在一个三层体系中进行,含Gido层(Gido layer),消息层(Message layer),协商传输层Negotiated Transport layer。Gido层用于IDS系统间的互操作,以gido格式来理解所接收数据的语义。消息层保证信息传

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!