具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明入侵防御检测方法实施例一的流程示意图。本实施例方法包括以下步骤:
步骤101、根据获得的报文采用的报文类型,调整状态机中的检测规则;
步骤102、利用调整后的状态机对所述报文进行入侵行为检测。
本实施例可应用于IPS中对入侵行为进行检测,且在对入侵行为进行检测时,可根据当前网络中获取的报文的类型,实时对状态机中的检测规则进行调整,例如,根据从当前网络中获取的报文采用的报文类型,可从检测规则库中调用采用同样报文类型的检测规则,并生成状态机,利用生成的状态机对当前网络中的报文进行入侵行为的检测,这样,在利用调整后的状态机对报文进行入侵行为检测时,状态机中的检测规则是对待检测的报文有用的检测规则,使得报文只需要对有用的检测规则进行特征匹配,相对于现有技术对检测规则库中的所有报文进行特征匹配,本实施例中报文进行特征匹配的检测规则数量少,而且可保证报文检测的准确性。此外,若一定时间内当前网络中未发现采用有与状态机中的检测规则采用的报文类型相同的报文,也可将状态机中采用该种报文类型的检测规则删除,减少不必要的检测规则,提高检测效率。
综上,本发明实施例的入侵防御方法通过根据当前网络报文的报文类型,实时对状态机中的检测规则进行调整,使得对报文进行入侵行为检测时,不需要对检测规则库中的所有检测规则进行特征匹配,只需要对部分有用的检测规则进行特征匹配,因此,可有效减少报文特征匹配的检测规则的数量,有效地提高了入侵行为的检测效率,降低了入侵行为检测时资源占用率,有效提高了网络的整体性能。
图2为本发明入侵防御检测方法实施例二的流程示意图。本实施例方法中,在入侵行为检测前,首先根据检测规则库中的各检测规则采用的规则类型建立规则类型表,该规则类型表可包括规则项,每个规则项包括规则类型和老化时间。其中,本实施例建立的规则类型表为协议表,规则类型表中的规则项为协议项,规则类型表中的规则项包括的规则类型为协议类型,即该协议表包括协议项,协议项包括协议类型和老化时间,具体地,可将检测规则库中检测规则采用的协议类型组成该协议表,协议表中的各协议类型即为该检测规则库中检测规则采用的协议类型的集合。此外,该协议表建立时,各协议项的老化时间可设置为0。本实施例可根据当前的网络中报文采用的报文类型,对该协议表中各协议项的老化时间进行实时更新,并根据各协议项的老化时间的动态变化调整状态机中的检测规则,其中,状态机中包括老化时间不为0的协议项的协议类型对应的检测规则。
具体地,如图2所示,本实施例方法可包括以下步骤:
步骤201、识别报文采用的协议类型。
本步骤中,可从当前的网络中实时采集报文,并对采集到的报文进行解析,识别出报文所采用的协议类型,如HTTP协议、SMTP协议、POP3协议或FTP协议等。
步骤202、将协议表中与所述报文采用的协议类型匹配的协议项的老化时间设置为预设老化时间。
本步骤中,根据步骤201中识别出的报文采用的协议类型,可在协议表中查找与该报文采用的协议类型相同的协议类型对应的协议项,找到该匹配的协议项后将该协议项的老化时间设置为预设老化时间,对该协议表进行更新。其中,所述的预设老化时间可根据实际需要而设定,如可设定为86400s等。
步骤203、将检测规则库中与所述协议项对应的检测规则添加到状态机中。
对采集的报文进行入侵行为检测时,状态机中需要存在采用与报文的协议类型相同检测规则,才能准确地检测该报文进行入侵检测,因此,本步骤中,可将检测规则库中与该规则项对应的检测规则添加的状态机中,以准确地对报文进行入侵行为检测。
具体地,在一种情况下,可以只将检测规则库中与协议项对应且该协议项的初始老化时间为0的检测规则添加到状态机中。当识别到报文的类型时,将协议表中相应协议项的老化时间设置为预设老化时间,若协议表中的该协议项的初始老化时间为0,即如果该协议项的老化时间是从0设置为预设老化时间的,说明此时状态机中不包含采用该协议项的协议类型的检测规则,而对采集到的报文进行检测时需要采用这种协议类型检测规则,因此,可将检测规则库中采用该种协议类型的检测规则添加到状态机中,对状态机进行更新。在另一种情况下,若与该协议类型对应的协议项的初始老化时间不为0,即协议表中的该协议项的老化时间是从非0设置为预设老化时间,说明状态机中已包含采用该协议项的协议类型的检测规则,此时,可不用再将该检测规则重复添加到状态机中即可实现对报文的检测。当然,可以理解的是,上述两种情况可以同时存在,则对应的处理方法可以同时使用。需要说明的是,这里所说的初始老化时间是指协议类型表中的协议项在被设置为预设老化时间之前的老化时间。
步骤204、利用调整后的状态机对报文进行检测。
具体的,状态机是由各种检测规则编译而成,在对报文进行入侵行为检测时,可将报文与状态机中的各检测规则进行特征匹配,若特征匹配成功,说明报文为入侵行为的报文,属于恶意报文,可通知相应的处理装置对报文进行处理。本实施例中,由于调整后的状态机中的只包括与待检测报文的协议类型对应的协议类型的检测规则,因此,在对报文进行入侵行为检测时,只需要将该报文与该部分的检测规则进行特征匹配,有效减少了与报文进行特征匹配的检测规则的数量,可快速地检测该报文是否为恶意报文,入侵行为的检测准确可靠。
此外,本实施例还可包括:
步骤205、当协议表中的协议项的老化时间减少为0时,还可从状态机中删除与该协议项对应的检测规则。
本实施例中,当协议项的老化时间减少为0,此时,采用该协议类型的检测规则对当前网络中的报文的入侵行为检测是无效地,因此,可将采用该协议类型的检测规则从状态机中删除,更新状态机,以减少对当前网络中的报文进行检测时特征匹配的数量,提高入侵行为检测的效率。
本实施例通过检测采集的报文的协议类型,对状态机进行实时更新,使得状态机中包含与当前网络的报文的协议类型对应的检测规则,使得对报文进行入侵行为检测时,只需与部分有用的检测规则进行特征匹配,因此,可有效减少报文特征匹配的检测规则的数量,有效地提高了入侵行为的检测效率,降低了入侵行为检测时资源占用率,有效提高了网络的整体性能。
图3为本发明入侵防御检测方法实施例三的流程示意图。与上述图2所示技术方案不同的是,本实施例在进行入侵行为检测前建立的是操作系统类型表,其是根据检测规则库中各检测规则采用的操作系统类型而建立,每个操作系统类型表包括不同的操作系统项,每个操作系统项包括操作系统类型和老化时间,且在该操作系统表建立时,可将各操作系统项的老化时间设置为0。本实施例可根据当前网络中报文采用的操作系统类型,对操作系统表中的各操作系统项的老化时间进行实时更新,并根据各操作系统项的老化时间的变化调整状态机中的检测规则,其中,状态机中包括老化时间不为0的操作系统项的操作系统类型对应的检测规则。
具体地,如图3所示,本实施例方法可包括以下步骤:
步骤301、识别报文采用的操作系统类型。
本步骤中,可从当前的网络中实时采集报文,并对采集到的报文进行解析,识别出报文所采用的操作系统类型,如Windows操作系统、Linux操作系统、Netware操作系统或Solaris操作系统等。由于网络中的报文可能采用不同的操作系统形成,因此,通过对报文进行解析可获取各报文采用的操作系统类型。
步骤302、将操作系统表中与所述报文采用的操作系统类型匹配的操作系统项的老化时间设置为预设老化时间。
本步骤中,根据步骤301中识别出的报文采用的操作系统类型,可在操作系统表中查找与该报文采用的操作系统类型对应的操作系统项,找到该匹配的操作系统项后将该操作系统项的老化时间设置为预设老化时间,对该操作系统表进行更新。其中,所述的预设老化时间可根据实际需要而设定,如可设定为86400s等。
步骤303、将检测规则库中与所述规则项对应的检测规则添加到状态机中。
对采集的报文进行入侵行为检测时,状态机中需要存在采用与报文的操作系统相同检测规则,才能准确地检测该报文进行入侵检测,因此,本步骤中,可将检测规则库中与该操作系统项对应的检测规则添加的状态机中,以准确地对报文进行入侵行为检测。
具体地,在一种情况下,可以只将检测规则库中与操作系统项对应且该操作系统项的初始老化时间为0的检测规则添加到状态机中。当识别到报文的操作系统类型时,将操作系统表中相应操作系统项的老化时间设置为预设老化时间时,若操作系统表中的该操作系统项的初始老化时间为0,即如果该操作系统项的老化时间是从0设置为预设老化时间的,说明此时状态机中不包含采用该操作系统项的操作系统类型的检测规则,而对采集到的报文进行检测时正需要采用这种操作系统类型的检测规则,因此,可将检测规则库中采用该种操作系统类型的检测规则添加到状态机中,对状态机进行更新。在另一种情况下,若与该操作系统类型的初始老化时间不为0,即操作系统项的老化时间是从非0设置为预设老化时间,说明状态机中已包含采用该操作系统项的操作系统类型的检测规则,此时,可不用再将该检测规则重复添加到状态机中即可实现对报文的检测。当然,可以理解的是,上述两种情况可以同时存在,则对应的处理方法可以同时使用。需要说明的是,这里所说的初始老化时间是指操作系统表中的操作系统项在被设置为预设老化时间之前的老化时间。
步骤304、利用调整后的状态机对报文进行检测。
由于调整后的状态机中的检测规则包括报文采用的操作系统类型的检测规则,因此,在对报文进行入侵行为检测时,可快速的检测报文是否为恶意报文,入侵行为的检测准确可靠。
此外,本实施例还可包括:
步骤305、当操作系统表中的操作系统项的老化时间减少为0时,还可从状态机中删除与该操作系统项对应的检测规则。
本实施例中,当操作系统项的老化时间减少为0,此时,采用该操作系统类型的检测规则对当前网络中的报文的入侵行为检测是无效地,因此,可将采用该操作系统类型的检测规则从状态机中删除,更新状态机,以减少对当前网络中的报文进行检测时特征匹配的数量,提高入侵行为检测的效率。
本实施例通过根据采集的报文的操作系统类型,对状态机进行实时更新,使得状态机中包含与当前网络的报文的操作系统类型对应的检测规则,使得对报文进行入侵行为检测时,仅只对部分有用的检测规则进行特征匹配,因此,可有效减少报文特征匹配的检测规则的数量,有效地提高了入侵行为的检测效率,降低了入侵行为检测时资源占用率,有效提高了网络的整体性能。
图4为本发明入侵防御检测装置实施例一的结构示意图。本实施例装置包括状态机调整模块1和入侵检测模块2,其中:
状态机调整模块1,用于根据获得的报文的类型,调整状态机中的检测规则;
入侵检测模块2,用于利用调整后的状态机对所述报文进行入侵防御检测。
本发明实施例可应用于IPS中对入侵行为进行检测,具体地,其检测过程可参照上述本发明入侵行为检测方法实施例的步骤来实现,在此不再赘述。
本发明实施例通过根据当前网络报文的报文类型,实时对状态机中的检测规则进行调整,使得对报文进行入侵行为检测时,不需要对检测规则库中的所有检测规则进行特征匹配,只需要对部分有用的检测规则进行特征匹配,因此,可有效减少报文特征匹配的检测规则的数量,有效地提高了入侵行为的检测效率,降低了入侵行为检测时资源占用率,有效提高了网络的整体性能。
图5为本发明入侵防御检测装置实施例二中状态机调整模块的结构示意图。在上述图4所示技术方案的基础上,如图5所示,本实施例中的状态机调整模块可包括:报文识别单元11、时间设置单元12和第一调整单元13,其中:
报文识别单元11,用于识别报文采用的报文类型;
时间设置单元12,用于将规则类型表中与所述报文类型匹配的规则项的老化时间设置为预设老化时间,其中,所述规则类型表中的规则项包括规则类型和老化时间,所述规则类型与报文类型相对应;
第一调整单元13,用于将检测规则库中与所述规则项对应的检测规则添加到状态机中。
图6为本发明入侵防御检测装置实施例二中第一调整单元的一个结构示意图。如图6所示,本实施例第一调整单元13可包括检测子单元131和添加子单元132,其中:
检测子单元131,用于检测所述规则项的初始老化时间是否为0;
添加子单元132,用于若所述规则项的初始老化时间为0,则将检测规则库中与所述规则项对应的检测规则添加到状态机中。
此外,如图5所示,本实施例状态机调整模块还可包括第二调整单元14,用于当所述规则类型表中的规则项的老化时间减少为0时,从所述状态机中删除与所述规则项对应的检测规则。
实际应用中,所述的规则类型表可以为协议表或操作系统表,具体地,本实施中,可将所述检测规则库中检测规则采用的规则类型组成所述规则类型表,该规则类型表中可包括各种规则项,每个规则项可包括规则类型和老化时间。
图7为本发明网关设备实施例的结构示意图。如图7所示,本实施例网关设备包括报文接收装置10和入侵防御检测装置20,其中:
报文接收装置10,用于采集网络中的报文;
入侵防御检测装置20,用于获得所述报文采用的报文类型,调整状态机中的检测规则,并利用调整后的状态机对所述报文进行入侵行为检测。
本实施例中,所述的入侵防御检测装置20可以具有与上述实施例所述的入侵防御检测装置相同的结构和功能,具体可参考上述入侵防御检测装置实施例中的说明,在此不再赘述。
本发明实施例网关设备可根据当前网络报文的报文类型,实时对状态机中的检测规则进行调整,使得对报文进行入侵行为检测时,不需要对检测规则库中的所有检测规则进行特征匹配,只需要对部分有用的检测规则进行特征匹配,因此,可有效减少报文特征匹配的检测规则的数量,有效地提高了入侵行为的检测效率,降低了入侵行为检测时资源占用率,有效提高了网络的整体性能。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
最后应说明的是:以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。