CN1738257A - 基于应用协议检测引擎的网络入侵检测系统和方法 - Google Patents

基于应用协议检测引擎的网络入侵检测系统和方法 Download PDF

Info

Publication number
CN1738257A
CN1738257A CN 200410103911 CN200410103911A CN1738257A CN 1738257 A CN1738257 A CN 1738257A CN 200410103911 CN200410103911 CN 200410103911 CN 200410103911 A CN200410103911 A CN 200410103911A CN 1738257 A CN1738257 A CN 1738257A
Authority
CN
China
Prior art keywords
application protocol
detection
option
engine
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN 200410103911
Other languages
English (en)
Inventor
诸葛建伟
叶志远
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peking University
Beijing University of Technology
Original Assignee
Peking University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Peking University filed Critical Peking University
Priority to CN 200410103911 priority Critical patent/CN1738257A/zh
Publication of CN1738257A publication Critical patent/CN1738257A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种基于应用协议检测引擎的网络入侵检测系统和方法,该系统在应用协议检测引擎中包含了应用协议分析器、异常检测器及特征检测器三种检测部件,所述的三种检测器可以部分或全部采用简单组件对象模型并提供统一的调用接口。所述的网络入侵检测方法的特征在于,其包括协议分析、异常检测和特征检测三个步骤。本发明内容能够较好地解决现有的网络入侵检测系统不能检测到新的攻击方式的缺陷;而且,基于组件技术实现应用协议检测引擎中的应用协议分析器、异常检测器和特征检测器的各项组件,允许编译之后的检测组件直接挂接到检测系统中而无需重新编译,保证了网络入侵检测系统的易扩展性和易维护性,为系统的开发维护带来了极大的方便。

Description

基于应用协议检测引擎的网络入侵检测系统和方法
技术领域
本发明属于网络信息安全领域,具体涉及一种基于应用协议检测引擎的网络入侵检测系统和方法。
背景技术
网络入侵检测系统(Network Intrusion Detection System,简称NIDS)是网络安全防御体系的一个重要组成部分,它的基本原理是通过对网络上的数据包进行收集分析,检测其中是否有违反安全策略的事件或攻击事件发生,并对检测到的事件发出警报,便于系统管理员和自动响应机制及时采取有效措施防止或降低攻击造成的破坏。
入侵检测技术可以分为特征检测和异常检测两大类。特征检测是基于已有攻击的特征对检测数据进行匹配,如果符合即视为发生攻击给出警报。异常检测又可分为传统的异常检测方法和基于规范的异常检测方法:传统的异常检测方法一般是通过各种机器学习的方法建立起正常情况下的某些特征的数据轮廓,检测期间则将当前收集到的数据与正常数据轮廓相比较,当两者达到一定的偏移时视为有异常发生,并进行报警;基于规范的异常检测方法则是通过规范定义正常的系统轮廓,若检测数据违反了规范,则视为异常事件进行报警。网络数据包的规范反映为网络协议规范,因此基于规范的网络异常检测技术又称为协议分析。
目前的网络入侵检测系统一般仅使用特征检测和协议分析方法,少数系统实现了简单的阈值比较方法以检测导致明显网络流量异常的端口扫描等攻击,而没有使用基于机器学习的异常检测方法,因此对新出现的攻击行为,以及绕过特征检测和协议分析的变形攻击行为很难检测。如广泛使用的著名开源网络入侵检测系统Snort,其主要检测部件包括以预处理插件形式实现的少数几种应用协议分析插件和作为其核心的特征检测引擎。而在异常检测方面,仅实现了使用简单的阈值比较方法来检测端口扫描攻击,而未考虑其他形式的攻击。
而且,现有的网络入侵检测系统在构建其检测引擎时一般采用源码级模块化机制,如Snort即采用了源代码级的插件机制,但是源码级模块化机制导致在支持新的特征检测选项和新的应用协议时需要大量修改代码,系统的易扩展性和易维护性较差,同时,由此构建的网络入侵检测系统仅支持攻击特征的升级功能,而对新的应用协议分析支持、新的攻击特征选项缺乏方便快捷的自动升级方式。
发明内容
针对上述问题,本发明的目的之一在于提供一种用于维护网络安全的基于应用协议检测引擎的网络入侵检测系统,所述的网络入侵检测系统包括:
数据包捕获模块,用于收集网络数据包;
数据包解析模块,用于对网络数据包的链路层、网络层及传输层进行解析,并对网络层进行IP分片合并,对传输层进行TCP会话重组;
数据包分流模块,用于根据应用层网络协议头部信息,对网络数据包根据所使用的不同应用协议进行分流;
应用协议检测引擎,用于分析解析后的网络数据包,从而发现入侵行为,并对发现的入侵行为产生报警信息;
输出响应模块,用于输出报警信息及根据配置策略产生相应响应动作;
控制台,用于配置管理整个网络入侵检测系统,并为系统管理员提供报警信息视图。
本发明的特征在于,上述的应用协议检测引擎还包括:
协议分析器,用于分析处理网络数据包,对其应用层关键域值进行提取,并根据应用协议规范对滥用协议的攻击数据包进行检测;
异常检测器,用于根据对特定的网络流特征使用正常网络数据包流进行训练获得的特征正常取值轮廓,对当前网络数据包流的特征取值进行比较,确定其是否偏移正常取值轮廓,从而判定其是否包含攻击事件;
特征检测器,用于根据针对此应用协议的已知攻击特征,对网络数据包进行特征匹配,从而发现符合特征的已知攻击;
进一步地,所述的协议分析器采用简单组件对象模型(Simple Common Object Model,简称SCOM)组件技术(参考文献:潘爱民、徐辉,《Linux平台下的组件对象模型及其实现》,“小型微型计算机系统”2004年第25(9)期,第1707-1711页)实现每种所支持的应用协议分析组件,并提供统一的组件调用接口,即应用协议分析组件接口,这个接口包含两个函数:组件初始化函数和协议分析函数。其中组件初始化函数读取对应用协议分析组件的配置信息并进行组件初始化,协议分析函数则对每个数据包进行应用层协议分析,以提取供进一步特征检测的关键域值,及检查该数据包是否违反应用协议规范标准。
进一步地,所述的异常检测组件采用SCOM组件技术实现,并提供统一的组件调用接口,即异常检测组件接口,这个接口包含两个函数:组件初始化函数和异常检测函数。其中组件初始化函数读取对该异常检测组件的配置信息并进行组件初始化,异常检测函数则对输入的数据包进行异常评定。异常检测器根据不同应用协议的流量特性,选取一个或多个统计特征,针对每个统计特征实现其对应的异常检测组件,对于输入的数据包,通过异常检测组件时将判断是否产生新的特征值,或对应的特征值是否改变,若否,则退出该异常检测组件的处理,若是,则对该特征值进行异常评定,若为异常,则发出报警信息。
其中,异常评定方法可以是根据训练阶段获得的特征正常取值范围进行评定的方法,也可以是根据公式计算当前特征值与正常取值的期望之间的偏差是否大于特定倍数的标准差,从而进行异常判定的方法。
进一步地,所述的特征检测器首先通过并行模式匹配算法检查数据包中是否包含攻击特征中声明的模式,当某条攻击特征的所有模式都得到匹配时,再通过该攻击特征中声明的各个特征选项组件,判断该数据包是否满足所有特征选项,如果全部满足,则表明数据包符合该攻击特征,将产生报警信息,否则,表明数据包不符合该攻击特征,无需进一步工作。其中,并行模式匹配算法可以采用AC或WM算法。其中,特征选项组件采用SCOM组件技术实现,并提供统一的组件调用接口,即特征选项组件接口,这个接口包含两个函数:特征选项解析函数和特征选项检查函数。其中的特征选项解析函数读取攻击特征中此选项的检查信息并进行解析,产生对应的数据结构,供该特征选项组件对数据包进行检查时使用,特征选项检查函数则基于检查信息数据结构对输入的数据包进行特征选项检查,以判断其是否满足此特征选项。
本发明的另一目的在于提供一种基于应用协议检测引擎的网络入侵检测方法,其包括如下步骤:
首先,应用协议分流模块选择与网络数据包对应的应用协议检测引擎,数据包进入应用协议检测引擎,开始检测;
其次,包括不分先后顺序的以下三个步骤:
(1)应用协议分析,判断网络数据包是否违反应用协议规范;
(2)异常检测,判断网络数据包的特征值是否偏移特征正常取值轮廓;
(3)特征检测,判断网络数据包是否符合已知的攻击特征;
最后,输出结果,结束检测。
本发明提供了一种基于应用协议检测引擎的网络入侵检测系统及其方法,其有益效果在于:由于其在应用协议检测引擎中采用组件机制来实现应用协议分析、异常检测和特征检测三种不同的检测技术,从而弥补了现有的网络入侵检测系统不能检测到新的攻击方式的缺陷;并且,其基于组件技术来实现应用协议检测引擎,允许编译之后的检测组件不经重新编译而直接挂接到网络入侵检测系统中,从而保证了网络入侵检测系统的易扩展性和易维护性,为系统的开发及维护带来了极大的方便,同时也能够提供对新的应用协议分析支持、新的异常检测特征以及新的攻击特征选项的软件升级功能。
附图说明
图1表示基于应用协议检测引擎的网络入侵检测系统的结构示意图;
图2表示应用协议检测引擎的功能模块结构示意图;
图3表示应用协议检测引擎的具体实现结构图;
图4表示特征检测器中并行模式匹配方法的实现结构图;
图5表示特征检测器中规则节点的实现结构图;
图6表示应用协议检测引擎处理网络数据包的流程图;
图7表示协议分析器处理网络数据包,从而判断其是否违反应用协议规范的流程图;
图8表示异常检测器处理网络数据包,从而判断其是否属于异常数据包的流程图;
图9表示应用协议检测引擎中的特征检测器处理网络数据包,从而判断其是否符合已知攻击特征规则的流程图;
图10表示应用协议检测引擎中的特征检测检查网络数据包是否符合规则特征选项及规则头部的流程图。
具体实施方式
以下参照附图1至5详细说明本发明提供的基于应用协议检测引擎的网络入侵检测系统:
如图1所示,为本发明提供的基于应用协议检测引擎的网络入侵检测系统,其中的数据包捕获模块、数据包解析模块、数据包分流模块、输出响应模块和控制台的结构组成、连接关系及功能都与现有的网络入侵检测系统相同。其特征在于,如图2所示,其中的应用协议检测引擎还包括协议分析器、异常检测器和特征检测器三个检测功能模块,所述的三个模块分别采用简单组件对象模型实现应用协议分析组件、异常检测组件和特征检测组件,融合了协议分析、特征检测和异常检测三种检测技术。如图3所示,为应用协议检测引擎的一种具体实现结构,其包括一个应用协议分析组件接口指针作为协议分析器调用的入口,特征检测器的实现结构为一个无模式的规则节点链表及一个指向模式匹配数据结构指针,而异常检测器则通过一个特征异常检测组件接口指针链表进行逐个调用。
其中,所述的应用协议分析组件提供统一的组件调用接口,即应用协议分析组件接口,这个接口包含组件初始化函数和协议分析函数。其中,组件初始化函数读取对应用协议分析组件的配置信息并进行组件初始化,协议分析函数则对每个数据包进行应用层协议分析,以提取供进一步特征检测的关键域值,及检查该数据包是否违反应用协议规范标准。
其中,所述的异常检测组件提供统一的组件调用接口,即异常检测组件接口,这个接口包含组件初始化函数和异常检测函数。其中组件初始化函数读取对该异常检测组件的配置信息并进行组件初始化,异常检测函数则对输入的数据包进行异常评定。
如图4所示,为特征检测器中模式匹配数据结构的实现结构图。其包括一个模式-规则节点链表和一些由并行模式匹配算法内部使用的数据结构,其中模式-规则节点链表上的每个节点包括一个指向模式节点的指针,一个指向该模式所属攻击特征规则的规则节点指针,以及一些必需的模式信息,如模式长度,是否区分大小写等。
如图5所示,每个规则节点包括此攻击特征规则的一些基本信息(如规则ID、报警信息及响应动作等)、规则头部信息(包括协议类型、源IP地址、目标IP地址、源端口、目标端口等)、一个模式节点链表和一个特征选项节点链表。其中模式节点中包含该模式内容、模式其他信息(如模式长度,是否区分大小写、匹配范围等)以及一个模式是否匹配位。特征选项节点中包含一个特征选项组件接口指针和一个指向该攻击特征规则中特征选项检查的信息数据结构的指针。
进一步地,特征选项组件还提供统一的组件调用接口,即特征选项组件接口,这个接口包含两个函数:特征选项解析函数和特征选项检查函数。其中,特征选项解析函数读取攻击特征中此选项的检查信息并进行解析,产生对应的数据结构,供该特征选项组件对数据包进行检查时使用,特征选项检查函数则基于检查信息数据结构对输入的数据包进行特征选项检查,以判断其是否满足此特征选项。
以下参照附图6至10详细说明本发明提供的基于应用协议检测引擎的网络入侵检测方法:
如图6所示,为本发明提供的基于应用协议检测引擎的网络入侵检测方法的流程图,其包括如下步骤:
(1)应用协议分流模块选择与网络数据包对应的应用协议检测引擎,数据包进入应用协议检测引擎,开始检测;
(2)应用协议分析,判断网络数据包是否违反应用协议规范;
(3)异常检测,判断网络数据包的特征值是否偏移特征正常取值轮廓;
(4)特征检测,判断网络数据包是否符合已知的攻击特征;
(5)输出结果,结束检测。
其中,应用协议分析、异常检测和特征检测步骤均通过采用简单组件对象技术实现。
如图7所示,所述的应用协议分析步骤(2)还包括如下步骤:
(101)判断应用协议分析组件接口指针是否为空?若否,则进入下一步骤;若是,则结束;
(102)调用应用协议分析组件接口中提供的协议分析函数;
(103)执行对应应用协议分析组件的协议分析函数,进行应用层关键域值的解析和应用协议规范异常检测;
(104)在协议分析函数中,若检查到网络数据包违反应用协议规范,则进入下一步骤,否则结束应用协议分析程序,进入异常检测步骤;
(105)对检测到的违反协议规范的攻击事件进行报警,结束应用协议分析程序,进入异常检测步骤。
如图8所示,所述的异常检测步骤(3)还包括如下步骤:
(201)判断异常检测组件组件接口指针是否为空?若否,则进入下一步骤;若是,则结束异常检测程序,进入特征检测步骤;
(202)调用异常检测组件接口中提供的异常检测函数;
(203)执行对应异常检测组件的异常检测函数,针对此特征进行网络数据包异常评判;
(204)在异常检测函数中,若检测到该网络数据包属于异常,则进入下一步骤,否则进入步骤(206);
(205)对检测到的导致异常的攻击事件进行报警,结束异常检测程序,进入特征检测步骤;
(206)将当前异常检测组件接口指针指向应用协议检测引擎结构中异常检测组件接口指针链表中的下一项,进入步骤(201)继续执行。
如图9所示,所述的特征检测步骤(4)还包括如下步骤:
(301)判断应用协议检测引擎结构中的无模式规则节点指针是否为空?若否,则进入下一步骤;若是,则进入步骤(305);
(302)判断网络数据包是否满足该无模式规则的规则特征选项及规则头部?若是,则进入下一步骤;若否,则进入步骤(304);
(303)对匹配该无模式规则的攻击事件进行报警,并继续下一步骤;
(304)修改当前无模式规则节点指针,指向应用协议检测引擎中无模式规则节点指针链表中的下一项;重新进入步骤(301)进行判断;
(305)判断指向并行模式匹配算法数据结构的指针是否为空,若否,则进入下一步骤;若是,则进入步骤(309);
(306)执行并行模式匹配算法,以检查当前网络数据包是否匹配上在此应用协议检测引擎中所有的攻击特征规则中的模式,并行模式匹配算法可以采用AC或者WM算法,算法执行完毕后进入步骤(309);
(307)检查网络数据包是否匹配到在此应用协议检测引擎中所有的攻击特征规则中的某个模式,若是,则进入下一步骤,否则回到上一步骤继续并行模式匹配算法;
(308)通过匹配到的模式-规则节点中保存的模式节点指针,将匹配到的模式节点的已匹配位置1,同时将匹配到的规则节点指针添加入已匹配规则节点链表中;
(309)判断当前已匹配规则节点指针是否为空?若否,则进入下一步骤;若是,则结束;
(310)检查该规则节点中的每个模式是否均已匹配?若是,则进入下一步骤;若否,则进入进入步骤(313);
(311)检查网络数据包是否满足该已匹配规则节点中的全部规则特征选项及规则头部?若是,则进入下一步骤;若否,则进入步骤(313);
(312)对匹配到该有模式规则的攻击事件进行报警,并继续下一步骤;
(313)修改当前已匹配规则节点指针,指向已匹配规则节点链表中的下一项;并进入步骤(309)重新判断其是否为空。
如图10所示,所述的步骤(302)及(311)还包括如下步骤:
(401)判断规则节点中的特征选项组件接口指针是否为空?若否,则进入下一步骤,若是,则进入步骤(406);
(402)调用特征选项组件接口中的选项检查函数;
(403)执行对应特征选项组件提供的选项检查函数函数,用于判断当前网络数据包是否满足该特征选项;
(404)若网络数据包符合此特征选项,则进入下一步骤,若否,则结束,返回步骤(302)的否进入(304)或者返回步骤(311)的否进入(313);
(405)修改当前特征选项组件接口指针为该规则节点中的特征选项组件接口指针链表中的下一项,并进入步骤(401)重新判断其是否为空;
(406)检查当前网络数据包是否满足规则头部?若是,则结束,返回步骤(302)的是进入(303)或返回步骤(311)的是进入(312),若否,则结束,返回步骤(302)的否进入(304)或者返回步骤(311)的否进入(313)。
以上通过具体实施例详细描述了本发明,本领域的技术人员应当理解,在不脱离本发明实质和范围的情况下,可以对本发明提供的系统和/或方法进行修改。尤其在本发明所揭露的基于应用协议检测引擎的网络入侵检测方法中,所述的应用协议分析、异常检测和特征检测三个步骤并没有先后顺序之分,应用协议分析步骤可以位于异常检测或特征检测步骤之后,而特征检测步骤也可以位于应用协议分析或异常检测步骤之前,在实现的过程中只需对程序模块的相应部分做适当修改即可。
对本发明提供的基于应用协议检测引擎的网络入侵检测系统和方法使用国际上通用的入侵检测测评基准数据(1999年美国国防部高级计划局DARPA委托MIT林肯实验室组织的入侵检测系统测评所用的测评数据)进行测试,实验数据表明,其异常检测器每天的误报警数量在10条以下,达到了69%的检测率,高于1999年测评的优胜者SRI公司开发的EMERALD系统50%的检测率,并在对未知的攻击行为的检测上也达到了42%,能够检测出相当一部分的未知攻击。
此外,由于本发明提供的网络入侵检测系统和方法在应用协议检测引擎中结合了协议分析、异常检测和特征检测,因此可以通过拥有一个完整的攻击特征库覆盖大部分已知攻击,并利用协议分析和异常检测对相当大的一部分未知攻击进行检测,从而达到一个较高的检测率。

Claims (13)

1、一种基于应用协议检测引擎的网络入侵检测系统,其包括应用协议检测引擎,其特征在于,所述的应用协议检测引擎还包括:
协议分析器,用于分析处理网络数据包,并根据应用协议规范对网络数据包进行检测;
异常检测器,用于根据对不同的网络流特征使用正常网络数据包流进行训练获得的特征正常取值轮廓,对网络数据包进行异常检测;
特征检测器,用于根据针对不同应用协议的已知攻击特征,对网络数据包进行特征匹配,从而发现符合特征的已知攻击。
2、如权利要求1所述的一种基于应用协议检测引擎的网络入侵检测系统,其特征在于,所述的协议分析器包含应用协议分析组件,所述的应用协议分析组件采用简单组件对象模型,并提供统一的组件调用接口。
3、如权利要求1或2所述的一种基于应用协议检测引擎的网络入侵检测系统,其特征在于,所述的异常检测器包含异常选项组件,所述的异常选项组件采用简单组件对象模型,并提供统一的组件调用接口。
4、如权利要求1或2所述的一种基于应用协议检测引擎的网络入侵检测系统,其特征在于,所述的特征检测器包含特征检测组件,所述的特征检测组件采用简单组件对象模型,并提供统一的组件调用接口。
5、如权利要求3所述的一种基于应用协议检测引擎的网络入侵检测系统,其特征在于,所述的特征检测器包含特征检测组件,所述的特征检测组件采用简单组件对象模型,并提供统一的组件调用接口。
6、一种基于应用协议检测引擎的网络入侵检测方法,其包括如下步骤:
首先,应用协议分流模块选择与网络数据包对应的应用协议检测引擎,数据包进入应用协议检测引擎,开始检测;
其次,包括不分先后顺序的以下三个步骤:
应用协议分析,判断网络数据包是否违反应用协议规范;
异常检测,判断网络数据包的特征值是否偏移特征正常取值轮廓;
特征检测,判断网络数据包是否符合已知的攻击特征;
最后,输出结果,结束检测。
7、如权利要求6所述的一种基于应用协议检测引擎的网络入侵检测方法,其特征在于,所述的应用协议分析步骤、异常检测步骤和特征检测步骤可以分别通过采用简单组件对象模型技术实现,也可以全部通过采用简单组件对象模型技术实现。
8、如权利要求7所述的一种基于应用协议检测引擎的网络入侵检测方法,其特征在于,所述的应用协议分析步骤还包括如下步骤:
(1)判断应用协议分析组件接口指针是否为空,是则结束,否则进入下一步骤;
(2)调用应用协议分析组件接口中提供的协议分析函数;
(3)执行对应应用协议分析组件的协议分析函数;
(4)判断网络数据包是否违反应用协议规范,是则进入下一步骤,否则结束;
(5)违反协议规范报警。
9、如权利要求7或8所述的一种基于应用协议检测引擎的网络入侵检测方法,其特征在于,所述的异常检测步骤还包括如下步骤:
(1)判断异常检测组件接口指针是否为空,是则结束,否则进入下一步骤;
(2)调用异常检测组件接口中提供的异常检测函数;
(3)执行对应异常检测组件的异常检测函数;
(4)判断数据包是否异常,是则进入下一步骤,否则进入步骤(6);
(5)数据包异常报警;
(6)指向下一个异常检测组件接口指针,继续步骤(1)。
10、如权利要求7或8所述的一种基于应用协议检测引擎的网络入侵检测方法,其特征在于,所述的特征检测步骤还包括如下步骤:
(1)判断应用协议检测引擎结构中的无模式规则节点指针是否为空,若否,则进入下一步骤;若是,则进入步骤(5);
(2)判断网络数据包是否满足无模式规则特征选项及规则头部,若是,则进入下一步骤;若否,则进入步骤(4);
(3)无模式规则匹配报警,并继续下一步骤;
(4)修改当前规则节点指针,指向应用协议检测引擎中无模式规则节点指针链表中的下一项,重新进入步骤(1)进行判断;
(5)判断指向并行模式匹配算法数据结构的指针是否为空,若否,则进入下一步骤;若是,则进入步骤(9);
(6)执行并行模式匹配算法,算法执行完毕后进入步骤(9);
(7)检查网络数据包是否匹配到在此应用协议检测引擎中所有的攻击特征规则中的某个模式,若是,则进入下一步骤,若否,则回到上一步骤;
(8)通过匹配到的模式—规则节点中保存的模式节点指针,将匹配到的模式节点的已匹配位置1,同时将匹配到的规则节点指针添加入已匹配规则节点链表中;
(9)判断当前已匹配规则节点指针是否为空,若否,则进入下一步骤;若是,则结束;
(10)检查该规则节点中的每个模式是否均已匹配,若是,则进入下一步骤;若否,则进入步骤(13);
(11)判断网络数据包是否满足该规则节点中的全部规则特征选项及规则头部,若是,则进入下一步骤;若否,则进入步骤(13);
(12)有模式规则匹配报警;并继续下一步骤;
(13)修改当前已匹配规则节点指针,指向已匹配规则节点链表中的下一项;并进入步骤(9)重新判断其是否为空。
11、如权利要求9所述的一种基于应用协议检测引擎的网络入侵检测方法,其特征在于,所述的特征检测步骤还包括如下步骤:
(1)判断应用协议检测引擎结构中的无模式规则节点指针是否为空,若否,则进入下一步骤;若是,则进入步骤(5);
(2)判断网络数据包是否满足无模式规则特征选项及规则头部,若是,则进入下一步骤;若否,则进入步骤(4);
(3)无模式规则匹配报警,并继续下一步骤;
(4)修改当前规则节点指针,指向应用协议检测引擎中无模式规则节点指针链表中的下一项,重新进入步骤(1)进行判断;
(5)判断指向并行模式匹配算法数据结构的指针是否为空,若否,则进入下一步骤;若是,则进入步骤(9);
(6)执行并行模式匹配算法,算法执行完毕后进入步骤(9);
(7)检查网络数据包是否匹配到在此应用协议检测引擎中所有的攻击特征规则中的某个模式,若是,则进入下一步骤,若否,则回到上一步骤;
(8)通过匹配到的模式—规则节点中保存的模式节点指针,将匹配到的模式节点的已匹配位置1,同时将匹配到的规则节点指针添加入已匹配规则节点链表中;
(9)判断当前已匹配规则节点指针是否为空,若否,则进入下一步骤;若是,则结束;
(10)检查该规则节点中的每个模式是否均已匹配,若是,则进入下一步骤;若否,则进入步骤(13);
(11)判断网络数据包是否满足该规则节点中的全部规则特征选项及规则头部,若是,则进入下一步骤;若否,则进入步骤(13);
(12)有模式规则匹配报警;并继续下一步骤;
(13)修改当前已匹配规则节点指针,指向已匹配规则节点链表中的下一项;并进入步骤(9)重新判断其是否为空。
12、如权利要求10所述的一种基于应用协议检测引擎的网络入侵检测方法,其特征在于,所述的步骤(2)和/或(11)还包括如下步骤:
(1)判断规则节点中的特征选项组件接口指针是否为空,若否,则进入下一步骤,若是,则进入步骤(6);
(2)调用特征选项组件接口中的选项检查函数;
(3)执行对应特征选项组件提供的选项检查函数;
(4)判断网络数据包是否符合对应的特征选项,是则进入下一步骤,否则结束,并返回所述步骤(2)或(11)的否;
(5)修改当前特征选项组件接口指针为该规则节点中的特征选项组件接口指针链表中的下一项,并进入步骤(1)重新判断其是否为空;
(6)检查当前网络数据包是否满足规则头部,是则结束,并返回所述步骤(2)和/(11)的是,否则结束,并返回所述步骤(2)或(11)的否。
13、如权利要求11所述的一种基于应用协议检测引擎的网络入侵检测方法,其特征在于,所述的步骤(2)或(11)还包括如下步骤:
(1)判断规则节点中的特征选项组件接口指针是否为空,若否,则进入下一步骤,若是,则进入步骤(6);
(2)调用特征选项组件接口中的选项检查函数;
(3)执行对应特征选项组件提供的选项检查函数;
(4)判断网络数据包是否符合对应的特征选项,是则进入下一步骤,否则结束,并返回所述步骤(2)或(11)的否;
(5)修改当前特征选项组件接口指针为该规则节点中的特征选项组件接口指针链表中的下一项,并进入步骤(1)重新判断其是否为空;
(6)检查当前网络数据包是否满足规则头部,是则结束,并返回所述步骤(2)或(11)的是,否则结束,并返回所述步骤(2)或(11)的否。
CN 200410103911 2004-12-31 2004-12-31 基于应用协议检测引擎的网络入侵检测系统和方法 Pending CN1738257A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200410103911 CN1738257A (zh) 2004-12-31 2004-12-31 基于应用协议检测引擎的网络入侵检测系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200410103911 CN1738257A (zh) 2004-12-31 2004-12-31 基于应用协议检测引擎的网络入侵检测系统和方法

Publications (1)

Publication Number Publication Date
CN1738257A true CN1738257A (zh) 2006-02-22

Family

ID=36080925

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200410103911 Pending CN1738257A (zh) 2004-12-31 2004-12-31 基于应用协议检测引擎的网络入侵检测系统和方法

Country Status (1)

Country Link
CN (1) CN1738257A (zh)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100429894C (zh) * 2006-09-28 2008-10-29 北京启明星辰信息技术有限公司 入侵检测虚拟引擎技术实现方法
CN100450046C (zh) * 2006-08-30 2009-01-07 北京启明星辰信息技术有限公司 一种结合病毒检测与入侵检测的方法及系统
WO2009132552A1 (zh) * 2008-04-30 2009-11-05 华为技术有限公司 一种入侵检测方法、系统和装置
CN101577704A (zh) * 2008-05-08 2009-11-11 北京东华合创数码科技股份有限公司 一种网络应用层协议识别方法和系统
CN101051966B (zh) * 2007-05-22 2010-06-09 网御神州科技(北京)有限公司 一种网络入侵行为检测系统及检测方法
CN101060492B (zh) * 2007-05-29 2010-08-11 杭州华三通信技术有限公司 会话检测方法及会话检测系统
WO2011009261A1 (zh) * 2009-07-22 2011-01-27 中兴通讯股份有限公司 事件处理方法和设备
CN101399710B (zh) * 2007-09-29 2011-06-22 北京启明星辰信息技术股份有限公司 一种协议格式异常检测方法及系统
CN101695031B (zh) * 2009-10-27 2011-12-07 成都市华为赛门铁克科技有限公司 入侵防御系统的升级方法和装置
CN101453454B (zh) * 2007-12-06 2012-01-18 英业达股份有限公司 网络攻击检测内部追踪方法
CN102571719A (zh) * 2010-12-31 2012-07-11 北京启明星辰信息技术股份有限公司 入侵检测系统及其检测方法
CN101902338B (zh) * 2009-05-27 2013-01-23 北京启明星辰信息技术股份有限公司 一种采用统一检测框架的入侵检测系统和入侵检测方法
CN103250382A (zh) * 2012-12-28 2013-08-14 华为技术有限公司 分流方法、设备和系统
CN103595729A (zh) * 2013-11-25 2014-02-19 北京锐安科技有限公司 一种协议解析方法及装置
CN103973697A (zh) * 2014-05-19 2014-08-06 重庆邮电大学 一种物联网感知层入侵检测方法
CN105141596A (zh) * 2015-08-12 2015-12-09 北京威努特技术有限公司 一种支持可扩展协议检测的工控防火墙实现方法
CN105959290A (zh) * 2016-06-06 2016-09-21 杭州迪普科技有限公司 攻击报文的检测方法及装置
CN107968791A (zh) * 2017-12-15 2018-04-27 杭州迪普科技股份有限公司 一种攻击报文的检测方法及装置
CN109344061A (zh) * 2018-09-25 2019-02-15 阿里巴巴集团控股有限公司 一种接口的异常检测方法、装置、设备及系统
CN109983412A (zh) * 2016-12-14 2019-07-05 欧姆龙株式会社 控制装置、控制程序以及控制方法
CN110572362A (zh) * 2019-08-05 2019-12-13 北京邮电大学 针对多类不均衡异常流量的网络攻击检测方法及装置
CN111526121A (zh) * 2020-03-24 2020-08-11 杭州迪普科技股份有限公司 入侵防御方法、装置、电子设备及计算机可读介质
CN112532642A (zh) * 2020-12-07 2021-03-19 河北工业大学 一种基于改进Suricata引擎的工控系统网络入侵检测方法
CN113742724A (zh) * 2021-07-28 2021-12-03 中国科学院信息工程研究所 一种网络协议软件的安全机制缺陷检测方法

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100450046C (zh) * 2006-08-30 2009-01-07 北京启明星辰信息技术有限公司 一种结合病毒检测与入侵检测的方法及系统
CN100429894C (zh) * 2006-09-28 2008-10-29 北京启明星辰信息技术有限公司 入侵检测虚拟引擎技术实现方法
CN101051966B (zh) * 2007-05-22 2010-06-09 网御神州科技(北京)有限公司 一种网络入侵行为检测系统及检测方法
CN101060492B (zh) * 2007-05-29 2010-08-11 杭州华三通信技术有限公司 会话检测方法及会话检测系统
CN101399710B (zh) * 2007-09-29 2011-06-22 北京启明星辰信息技术股份有限公司 一种协议格式异常检测方法及系统
CN101453454B (zh) * 2007-12-06 2012-01-18 英业达股份有限公司 网络攻击检测内部追踪方法
WO2009132552A1 (zh) * 2008-04-30 2009-11-05 华为技术有限公司 一种入侵检测方法、系统和装置
CN101577704A (zh) * 2008-05-08 2009-11-11 北京东华合创数码科技股份有限公司 一种网络应用层协议识别方法和系统
CN101902338B (zh) * 2009-05-27 2013-01-23 北京启明星辰信息技术股份有限公司 一种采用统一检测框架的入侵检测系统和入侵检测方法
WO2011009261A1 (zh) * 2009-07-22 2011-01-27 中兴通讯股份有限公司 事件处理方法和设备
CN101695031B (zh) * 2009-10-27 2011-12-07 成都市华为赛门铁克科技有限公司 入侵防御系统的升级方法和装置
CN102571719A (zh) * 2010-12-31 2012-07-11 北京启明星辰信息技术股份有限公司 入侵检测系统及其检测方法
CN103250382A (zh) * 2012-12-28 2013-08-14 华为技术有限公司 分流方法、设备和系统
US9807642B2 (en) 2012-12-28 2017-10-31 Huawei Technologies Co., Ltd. Traffic distribution method, device, and system
CN103250382B (zh) * 2012-12-28 2017-04-26 华为技术有限公司 分流方法、设备和系统
CN103595729A (zh) * 2013-11-25 2014-02-19 北京锐安科技有限公司 一种协议解析方法及装置
CN103973697A (zh) * 2014-05-19 2014-08-06 重庆邮电大学 一种物联网感知层入侵检测方法
CN103973697B (zh) * 2014-05-19 2017-03-29 重庆邮电大学 一种物联网感知层入侵检测方法
CN105141596A (zh) * 2015-08-12 2015-12-09 北京威努特技术有限公司 一种支持可扩展协议检测的工控防火墙实现方法
CN105959290A (zh) * 2016-06-06 2016-09-21 杭州迪普科技有限公司 攻击报文的检测方法及装置
CN109983412A (zh) * 2016-12-14 2019-07-05 欧姆龙株式会社 控制装置、控制程序以及控制方法
CN109983412B (zh) * 2016-12-14 2022-09-16 欧姆龙株式会社 控制装置、计算机可读记录介质以及控制方法
CN107968791A (zh) * 2017-12-15 2018-04-27 杭州迪普科技股份有限公司 一种攻击报文的检测方法及装置
CN107968791B (zh) * 2017-12-15 2021-08-24 杭州迪普科技股份有限公司 一种攻击报文的检测方法及装置
CN109344061A (zh) * 2018-09-25 2019-02-15 阿里巴巴集团控股有限公司 一种接口的异常检测方法、装置、设备及系统
CN110572362A (zh) * 2019-08-05 2019-12-13 北京邮电大学 针对多类不均衡异常流量的网络攻击检测方法及装置
CN111526121A (zh) * 2020-03-24 2020-08-11 杭州迪普科技股份有限公司 入侵防御方法、装置、电子设备及计算机可读介质
CN111526121B (zh) * 2020-03-24 2022-03-04 杭州迪普科技股份有限公司 入侵防御方法、装置、电子设备及计算机可读介质
CN112532642A (zh) * 2020-12-07 2021-03-19 河北工业大学 一种基于改进Suricata引擎的工控系统网络入侵检测方法
CN112532642B (zh) * 2020-12-07 2022-05-20 河北工业大学 一种基于改进Suricata引擎的工控系统网络入侵检测方法
CN113742724A (zh) * 2021-07-28 2021-12-03 中国科学院信息工程研究所 一种网络协议软件的安全机制缺陷检测方法
CN113742724B (zh) * 2021-07-28 2023-09-12 中国科学院信息工程研究所 一种网络协议软件的安全机制缺陷检测方法

Similar Documents

Publication Publication Date Title
CN1738257A (zh) 基于应用协议检测引擎的网络入侵检测系统和方法
CN108616534B (zh) 一种基于区块链防护物联网设备DDoS攻击的方法及系统
CN1578227A (zh) 一种动态ip数据包过滤方法
CN103281177B (zh) 对Internet信息系统恶意攻击的检测方法及系统
US9419996B2 (en) Detection and prevention for malicious threats
US8549645B2 (en) System and method for detection of denial of service attacks
CN1845066A (zh) 一种自动协议识别方法及系统
CN104391979A (zh) 网络恶意爬虫识别方法及装置
CN109462575B (zh) 一种webshell检测方法及装置
CN101035111A (zh) 一种智能协议解析方法及装置
CN106572117A (zh) 一种WebShell文件的检测方法和装置
CN104601556A (zh) 一种面向web的攻击检测方法及系统
CN108718298B (zh) 一种恶意外连流量检测方法及装置
CN104601573A (zh) 一种Android平台URL访问结果验证方法及装置
CN103177215A (zh) 基于软件控制流特征的计算机恶意软件检测新方法
CN110392013A (zh) 一种基于网络流量分类的恶意软件识别方法、系统及电子设备
CN111222131B (zh) 一种互联网诈骗apk的识别方法
CN101039179A (zh) 一种入侵检测精确报警方法和系统
CN110381009A (zh) 一种基于行为检测的反弹shell的检测方法
CN110740125A (zh) 一种针对视频监控设备漏洞检测使用的漏洞库的实现方法
Vadrevu et al. Maxs: Scaling malware execution with sequential multi-hypothesis testing
CN110020161B (zh) 数据处理方法、日志处理方法和终端
JP5608849B2 (ja) 悪意のある書類ファイルのデジタル指紋を取得する方法
CN117435480A (zh) 一种二进制文件检测方法、装置、电子设备及存储介质
CN102769607B (zh) 一种基于网络数据包检测恶意代码的方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication