按信息源分类
根据信息源的不同,入侵检测技术分为基于主机型和基于网络型两大类。
1)基于主机的入侵检测技术
基于主机的入侵检测技术可监测系统、事件和WindowsNT下的安全记录,以及Unix环境下的系统记录。当有文件被修改时,入侵检测系统将采用新的记录条目与已知的攻击特征进行比对的技术,如果匹配,就会向系统管理员报警或者作出适当的响应。
2)基于网络的入侵检测技术
基于网络的入侵检测技术以网络包作为分析数据源。它通常利用一个工作在混杂模式下的网卡来实时监视并分析通过网络的数据流。它的分析模块通常使用模式匹配、统计分析等技术来识别攻击行为。一旦检测到了攻击行为,入侵检测技术将通过响应模块做出适当的响应,如声光电/邮件报警、管理员屏显通知提醒、切断相关用户的网络连接、记录相关的信息等。
按分析方法分类
根据入侵检测分析原理分类,可分为误用检测和异常检测两类。
1)误用检测技术
又称为基于知识的检测。误用检测假设所有可能的入侵行为都能被识别和表示。首先,设定一些入侵活动的特征,通过比对现在的活动是否与这些特征匹配来检测。这种方法是依据是否出现攻击签名来判断入侵行为,是一种直接的方法。
常用的具体实现方法有:基于条件概率误用入侵检测方法、基于专家系统误用入侵检测方法、基于状态转换分析误用入侵检测方法、基于规则误用入侵检测方法等。
误用检测的关键问题是攻击签名的正确表示。误用检测是根据攻击签名来判断入侵的,根据对已知的攻击方法的了解,用特定的模式语言来表示这种攻击,使得攻击签名能够准确地表示入侵行为及其所有可能的变种,同时又不会把非入侵行为包含进来。由于多数入侵行为是利用系统的漏洞和应用程序的缺陷,所以通过分析攻击过程的特征、条件、排列及事件间的关系,就可具体描述入侵行为的迹象。这些迹象不仅对分析已经发生的入侵行为有帮助,而且对即将发生的入侵也有预警作用。
误用检测将收集到的信息与已知的攻击签名模式库进行比较,从中发现违背安全策略的行为。由于只需要收集相关的数据,这样系统的负担明显减少。该方法类似于病毒检测系统,其检测的准确率和效率都比较高。但是它也存在一些缺点。
(1)不能检测未知的入侵行为:由于其检测机理是对已知的入侵方法进行模式提取,对于未知的入侵方法就不能进行有效的检测。也就是说漏警率比较高。
(2)与系统的相关性很强:对于不同实现机制的操作系统,由于攻击的方法不尽相同,很难定义出统一的模式库。另外,误用检测技术也难以检测出内部人员的入侵行为。
目前,由于误用检测技术比较成熟,多数的入侵检测系统商业产品都是基于误用检测模型的。
2)异常检测技术
又称为基于行为的检测。异常检测假设所有的入侵行为都是异常的。为实现该类检测,首先建立系统或用户的“规范集”,当主体的活动违反其统计规律时,认为可能是“入侵”行为。此方法不依赖于是否表现出具体行为来进行检测,是一种间接的方法。
常用的具体实现方法有:基于特征选择异常检测方法、基于贝叶斯推理异常检测方法、基于模式归纳异常检测方法、基于神经网络异常检测方法、基于机器学习异常检测方法、基于数据采掘异常检测方法等。
采用异常检测的关键问题在于如下两方面。
(1)特征量的选择:在建立系统或用户的行为特征轮廓的正常模型时,选取的特征量既要能准确地体现系统或用户的行为特征,又能使模型最优化,即以最少的特征量就能涵盖系统或用户的行为特征。
(2)参考阈值的选定:由于异常检测是以正常的特征轮廓作为比较的参考基准,所以参考阈值的选定非常关键。阈值设定得过大,漏报率就会很高;阈值设定得过小,误报率就会提高。合适的参考阈值的选定是决定这一检测方法准确率的至关重要的因素。由此可见,异常检测技术难点是“正常”行为特征轮廓的确定、特征量的选取、特征轮廓的更新。由于这几个因素的制约,异常检测的误报率很高,但对于未知的入侵行为的检测非常有效。此外,由于需要实时建立和更新系统或用户的特征轮廓,这样所需的计算量很大,对系统的处理性能要求很高。
入侵检测技术的发展主要历了以下几个主要阶段。
第一阶段是以基于协议解码和模式匹配为主的技术,其优点是对于已知的攻击行为非常有效,各种已知的攻击行为可以对号入座,误报率低;缺点是高超的黑客采用变形收发或者新技术可以轻易躲避检测,漏报率高。
第二阶段是以基于模式匹配、简单协议分析和异常统计为主的技术,其优点是能够分析处理一部分协议,可以进行重组;缺点是匹配效率较低,管理功能较弱。这种检测技术实际上是在第一阶段技术的基础上增加了部分对异常行为分析的功能。
第三阶段是以基于完全协议分析、模式匹配和异常统计为主的技术,其优点是误报率、漏报率和虚报率较低,并在此基础上实现了多级分布式的监测管理;缺点是可视化程度不够,防范及管理功能较弱。
第四阶段是基于安全管理、协议分析、模式匹配和异常统计为主的技术,其优点是入侵管理和多项技术协同工作,建立全局的主动保障体系,具有良好的可视化、可控性和可管理性。
目前,大多数入侵检测技术中主要采用行为统计、专家系统、神经网络、模式匹配、状态转换分析等技术,分析事件的审计记录,识别特定的模式,生成最终分析结果。近几年来不断有新的方法和技术出现于入侵检测领域,包括:将免疫原理运用到分布式入侵检测领域;采用状态转换技术来优化误用检测系统,将数据挖掘的技术用到入侵检测中等。
入侵检测技术的发展过程是入侵与防御技术的抗衡过程,同时也是入侵检测自身不断超越和完善的过程。目前入侵检测技术从简单的事件报警发展成实现广泛的趋势预测和深入的行为分析,并且可达到大规模部署、入侵预警、精确定位及监管结合的功效。
由于攻击的先进性、隐蔽性和环境的复杂性,以及用户对于入侵检测的理解和应用的局限,目前入侵检测技术的发展空间依旧很大。
无论入侵检测系统是网络型的还是主机型的,从功能上看,都可分为探测引擎和控制中心两大部分,前者用于读取原始数据和产生事件,后者用于显示和分析事件以及策略定制等工作。
其中,探测引擎的主要功能包括原始数据读取、数据分析、产生事件、策略匹配、事件处理、通信等功能.
而控制中心的主要功能为通信、事件读取、事件显示、策略定制、日志分析、系统帮助等。
从20世纪90年代初期开始,绝大多数入侵检测系统的核心基础技术并没有明显的突破,基本还停留在数据包捕获加以非智能模式匹配和特征搜索技术来探测攻击。
更多的是将一些技术应用于检测入侵中,如数据挖掘、混沌系统、移动代理技术、智能化代理技术、人工免疫系统、数据融合等。
模式匹配技术也称为攻击特征检测技术,就是将收集到的信息与已知的入侵模式数据库进行比较,从而发现违背安全策略的行为。
模式匹配当前的几种高效的多模式匹配算法有:计数过滤、SA算法、Hash算法等。在众多的模式匹配算法中,以Boyer-More算法(简称蹦算法)最为知名。
同时模式匹配技术经过多年发展已经相当成熟,使得检测准确率和效率都很高,这也是模式匹配技术至今仍然存在并被使用的理由。然而,单纯的模式匹配技术具有以下最根本的缺陷。
模式匹配这种检测机制对已知攻击的报警比较准确,局限是它只能发现已知的攻击,对未知的攻击无能为力,而且误报率比较高。最为不足的是对任何企图绕开入侵检测的网络攻击欺骗都无能为力,由此会产生大量的虚假报警,以至于淹没了真正的攻击检测。
协议分析最大的特点是将捕获的数据包从网络层一直送达应用层,将真实数据还原出来,然后将还原出来的数据再与规则库进行匹配,因此它能够通过对数据包进行结构化协议分析来识别入侵企图和行为。
采用协议分析技术的入侵检测系统能够理解不同协议的原理,由此分析这些协议的流量,来寻找可疑的或不正常的行为。
当系统提升协议栈来解析每一层时,协议分析利用已获得的知识来消除在数据包结构中不可能出现的攻击。例如4层协议是TCP,那就不用再搜索其他第四层协议如UDP上形成的攻击。从而使得入侵检测系统产品的性能得到明显改善。
异常检测是根据用户行为或资源使用的正常模式来判定当前活动是否偏离了正常或期望的活动规律,如果发现用户或系统状态偏离了正常行为模式(Normal BehaviorProfile),就表示有攻击或企图攻击行为发生,系统将产生入侵警戒信号。
1)基于机器学习的异常检测方法
基于机器学习的异常检测方法,是通过机器学习实现入侵检测,主要方法有监督学习、归纳学习、类比学习等。在基于机器学习的异常检测方法中,Carla和Brodley提出的实例学习方法IBL比较具有代表性。该方法基于相似度,通过新的序列相似度计算,将原始数据转化为可度量的空间,然后应用学习技术和相应的分类方法,发现异常类型事件,从而检测入侵行为。其中,阈值由成员分类概率决定。
2)基于模式归纳的异常检测方法
基于模式归纳的异常检测方法,是假定事件的发生服从某种可辨别的模式而不是随机发生。在基于模式归纳的异常检测方法中,Teng和Chen提出的利用时间规则识别用户正常行为模式特征的基于时间的推理方法比较具有代表性。该方法通过归纳学习产生规则集,并对系统中的规则进行动态的修改,以提高其预测的准确性与可信度。
3)基于数据挖掘的异常检测方法
基于数据挖掘的异常检测方法,是在对计算机网络产生的大量文件进行分析的基础上产生的,随着计算机网络的快速发展,其产生的文件数量也越来越多,单纯依靠人工方法对其进行分析以发现异常已经变得非常困难,因此数据挖掘技术被引入入侵检测领域。目前基于数据挖掘的异常检测方法中,具有代表性的是KDD算法,其优点是适合处理大量数据,缺点是运算量偏大,对数据的实时性分析支持不够。
4)基于统计模型的异常检测方法
统计模型常用于对异常行为的检测,在统计模型中常用的测量参数包括审计事件的数量、间隔时间、资源消耗情况等。目前提出的可用于入侵检测的统计模型有如下5种。
(1)操作模型:该模型假设异常可通过将测量结果与一些固定指标相比较得到,固定指标可以根据经验值或一段时间内的统计平均得到。举例来说,在短时间内的多次失败的登录很可能是口令尝试攻击。
(2)方差:计算参数的方差,设定其置信区间,当测量值超过置信区间的范围时表明有可能是异常。
(3)多元模型:操作模型的扩展,通过同时分析多个参数实现检测。
(4)马尔柯夫过程模型:将每种类型的事件定义为系统状态,用状态转移矩阵来表示状态的变化,若对应于发生事件的状态矩阵中转移概率较小,则该事件可能是异常事件。
(5)时间序列分析:将事件计数与资源耗用根据时间排成序列,如果一个新事件在该时间发生的概率较低,则该事件可能是入侵。
统计方法的最大优点是它可以“学习”用户的使用习惯,从而具有较高检出率与可用性。但是它的“学习”能力也给入侵者以机会通过逐步“训练”使入侵事件符合正常操作的统计规律,从而透过入侵检测系统。
误用检测技术又称为基于知识的检测或特征检测,是指通过将收集到的数据与预先确定的特征知识库里的各种攻击模式进行比较,如果发现攻击特征,则判断有攻击。
大多数商业产品采用了技术上较成熟的基于特征模式匹配的误用检测。
数据挖掘也被称为数据库知识发现技术(KDD,KJlowledge Discovery行om Database),是一个较新的研究领域,就是从数据中发现肉眼难以发现的固定模式或异常现象。数据挖掘遵循基本的归纳过程将数据进行整理分析,并从海量数据中自动抽取和发现有用模式或知识。
对于应用到入侵检测中的数据挖掘算法,目前主要集中在关联分析(Mining Association Rules)、序列模式分析(Mining Sequential Pattern)、数据分类(DataClassification)、聚类分析(Clustering Analysis)这几种类型上。
与基于预定义检测模式的入侵检测技术不同,基予数据挖掘的入侵检测技术可以自动地从训练数据中提取出可用于入侵检测的知识和模式,而不需要入工分析和编码入侵行为。
在我国,现有标准体系中现行有效的入侵检测系统相关标准有以下三个:
(1)GA/T403.1—2002《信息技术 入侵检测系统技术要求 第1部分:网络型产品》;
(2)GA/T403.2—2002《信息技术 入侵检测系统技术要求 第2部分:主机型产品》;
(3)GB/T 20275—2006《信息安全技术 入侵检测系统技术要求和测试评价方法》。
(4)GB/T 20275-2013 信息安全技术 网络入侵检测系统技术要求和测试评价方法
与原公共安全行业标准GA/T 403.1—2002和GA/T 403.2—2002相比,GB/T 20275—2006在内容上存在四个方面差别。
1)在标准分级方面
GA/T403.1—2002和GA/T403.2—2002将入侵检测系统分为基本级和增强级两级,这两个标准只是在产品功能方面对入侵检测系统的要求分为两级,在性能要求、安全要求和安全保证要求上并没有分级。
GB/T20275—2006将入侵检测系统分为三级,在产品功能要求、性能要求、安全要求和安全保证要求三部分中都将要求分为了三级,在分级上更加精细。
2)在标准功能要求方面
对于网络型入侵检测系统而言,与GA/T403.1—2002相比,GB/T20275—2006在标准中增加了防躲避能力、事件合并、排除响应、定制响应、防火墙联动、其他设备联动、多级管理、分布式部署、端口分离、产品升级、统一升级、窗口定制、报告定制、事件定义、协议定义、通用接口等要求,从入侵分析、入侵响应、管理控制、产品灵活性等方面加强了对网络型入侵检测系统的要求。
对于主机型入侵检测系统而言,与GA/T403.2—2002相比,GB/T20275—2006在标准中增加了阻断能力、集中管理、同台管理、产品升级、窗口定制、报告定制、事件定义、通用接口等要求,从入侵分析、管理控制、产品灵活性等方面加强了对主机型入侵检测系统的要求。
3)在标准安全要求方面
对于网络型入侵检测系统而言,与GA/T403.1—2002相比,GB/T20275—2006在标准中增加了多鉴别机制、会话锁定、安全行为管理、通信稳定性、升级安全、自我隐藏、自我监测等要求,从身份鉴别、用户管理、通信安全、产品自身安全等方面加强了对网络型入侵检测系统的要求。
对于主机型入侵检测系统而言,与GA/T403.2—2002相比,GB/T20275—2006在标准中增加了多鉴别机制、会话锁定、安全行为管理、通信稳定性、升级安全、自我保护等要求,从身份鉴别、用户管理、通信安全、产品自身安全等方面加强了对主机型入侵检测系统的要求。
4)在标准安全保证要求方面
GB/T 20275—2006对网络型和主机型入侵检测系统进行了统一的划分。相比GA/T 403.1—2002和GA/T 403.2—2002在安全保证要求方面没有等级上的划分,GB/T20275—2006由于参照了GB/T18336.3—2001的三级要求,所以在标准的安全保证要求方面更加精细,对每一条要求所要完成的工作更加明确。
产品功能:
1)数据探测功能要求
2)入侵分析功能要求
3)入侵响应功能要求
4)管理控制功能要求
5)检测结果处理要求
6)产品灵活性要求
7)主机型入侵检测系统性能要求
8)网络型入侵检测系统性能要求
产品安全:
1)身份鉴别
2)用户管理
3)事件数据安全
4)通信安全
5)产品自身安全
…
…
《网络入侵检测系统原理与应用》 沈亮