一种入侵检测提示方法及装置与流程

文档序号:12493967阅读:252来源:国知局
一种入侵检测提示方法及装置与流程

本发明涉及计算机技术领域,尤其涉及一种入侵检测提示方法及装置。



背景技术:

随着互联网技术的发展,互联网数据中心(Internet Data Center,IDC)已成为互联网产业中不可或缺的一部分。IDC不仅要向用户提供所需数据的服务,还需要对网络数据进行监控以保证服务器的正常运行,例如,部署入侵检测系统(Intrusion Detection Systems,IDS),具体是在IDC的网络数据的入口处部署物理设备分光器(或交换机镜像),能够将用户终端发送的访问请求发送至相应的服务器的同时,将相同的访问请求发送至入侵检测设备,以使入侵检测设备对访问请求进行一一检测。

然而,在IDC中的服务器数量较多且访问请求的数量较大时,入侵检测设备需要检测每个服务器的每个访问请求,使得检测工作量较大、处理周期长,无法及时向服务器反馈检测结果。一旦存在攻击性的访问请求,极有可能无法正常响应合法访问请求,从而造成服务器瘫痪,因此降低了入侵检测效率。



技术实现要素:

本发明实施例所要解决的技术问题在于,提供一种入侵检测方法及装置,能够实现对业务Docker容器中业务请求的及时检测和反馈,提高了入侵检测的效率。

第一方面,本发明实施例提供了一种入侵检测方法,所述方法包括:

接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求,所述业务请求携带发送所述业务请求的用户终端的终端标识;

对所述业务请求进行解析,以确定所述业务请求的数据特征;

若所述数据特征满足预设入侵条件,则向所述第一虚拟网卡发送停止传输命令,所述停止传输命令用于指示所述第一虚拟网卡停止传输所述业务Docker容器反馈的所述业务请求对应的响应数据。

第二方面,本发明实施例还提供了一种入侵检测装置,所述装置包括:

请求接收模块,用于接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求,所述业务请求携带发送所述业务请求的用户终端的终端标识;

特征确定模块,用于对所述业务请求进行解析,以确定所述业务请求的数据特征;

命令发送模块,用于若所述数据特征满足预设入侵条件,则向所述第一虚拟网卡发送停止传输命令,所述停止传输命令用于指示所述第一虚拟网卡停止传输所述业务Docker容器反馈的所述业务请求对应的响应数据。

在本发明实施例中,通过接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求;接着对业务请求进行解析,以确定业务请求的数据特征,若数据特征满足预设入侵条件,则向第一虚拟网卡发送停止传输命令,停止传输命令用于指示第一虚拟网卡停止传输业务Docker容器反馈的业务请求对应的响应数据。通过接收第一虚拟网卡发送的业务请求,实现了对该业务请求的实时检测和检测结果的反馈,进而提高了入侵检测的效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种可能的物理主机的结构示意图;

图2是本发明实施例提供的一种入侵检测方法的流程示意图;

图3是本发明实施例提供的另一种入侵检测方法的流程示意图;

图4是本发明实施例提供的一种可能的入侵检测系统的系统架构图;

图5是本发明实施例提供的另一种入侵检测方法的流程示意图;

图6是本发明实施例提供的一种入侵检测装置的结构示意图;

图7是本发明实施例提供的另一种入侵检测装置的结构示意图;

图8是本发明实施例提供的另一种入侵检测装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。

请参见图1,为本发明实施例提供了一种可能的物理主机的结构示意图。图1所示的物理主机在安装Docker的基础上部署了多个Docker容器,其中包括多个业务Docker容器和IDS Docker容器,其中,可以设定Docker容器使用某个固定的硬件资源,如,中央处理器(Central Processing Unit,CPU)资源、内存资源等等,所述物理主机为提供应用或业务的服务器。进一步的,通过单根输入输出虚拟化(Single Root I/O Virtualization,SR-IOV)技术将物理主机的网络接口卡(Network Interface Card,NIC)虚拟化为多个虚拟网卡,每个Docker容器对应一个虚拟网卡,例如,虚拟网卡1对应业务Docker容器1、虚拟网卡2对应业务Docker容器2、虚拟网卡10对应IDS Docker容器10等等。

以虚拟网卡1对应业务Docker容器1为例,当虚拟网卡1接收到访问业务Docker容器1的业务请求时,虚拟网卡1将业务请求发送至业务Docker容器1,以及将业务请求发送至IDS Docker容器,业务请求携带发送业务请求的用户终端的终端标识;相应的,IDS Docker容器10接收虚拟网卡1发送的访问业务Docker容器1的业务请求,并对业务请求进行解析,以确定业务请求的数据特征,若数据特征满足预设入侵条件,则IDS Docker容器10向虚拟网卡1发送停止传输命令,停止传输命令用于指示虚拟网卡1停止传输业务Docker容器1反馈的业务请求对应的响应数据。通过在单独的一台物理主机中部署IDS Docker容器,能够及时对该物理主机中的业务Docker容器的业务请求进行检测,提高了入侵检测的效率,另外通过设定IDS Docker容器使用固定的硬件资源,能够在实现入侵检测功能的同时不影响业务Docker容器的正常运行。

在图1所示的网络构架中,所涉及的用户终端可以是具备显示、通信功能的设备,例如:平板电脑、手机、电子阅读器、个人计算机(Personal Computer,PC)、笔记本电脑、车载设备、网络电视、可穿戴设备等设备。

基于图1所示的物理主机的结构示意图,下面将结合附图2至附图5,对本发明实施例提供的入侵检测方法进行详细介绍。

请参见图2,为本发明实施例提供了一种入侵检测方法的流程示意图。如图2所示,本发明实施例的所述方法可以包括以下步骤S101-步骤S103。

S101,接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求。

具体的,在第一虚拟网卡接收到访问业务Docker容器的业务请求的情况下,所述第一虚拟网卡将所述业务请求发送至业务Docker容器,以及将该业务请求发送至IDS Docker容器,其中,所述业务请求携带发送所述业务请求的用户终端的终端标识。相应的,业务Docker容器接收所述业务请求,并对该业务请求进行处理以生成针对所述业务请求的响应数据;入侵检测装置接收所述业务请求以检测所述业务请求是否会对入侵检测装置所在的物理主机造成攻击,例如,分布式拒绝服务(Distributed Denial of Service,DDoS)攻击等。

可选的,所述用户终端的终端标识可以包括但不限定于所述用户终端的网络互联协议(Internet Protocol,IP)地址、登陆用户名等。

S102,对所述业务请求进行解析,以确定所述业务请求的数据特征。

具体的,所述入侵检测装置对所述业务请求进行解析,以确定所述业务请求的数据特征,举例来说,该数据特征可以是携带于业务请求的头部字段中,例如,所述业务请求可以为超文本传输协议(Hyper Text Transfer Protocol,Http)请求,业务请求的数据特征可以为该业务请求所使用的统一资源定位符(Uniform Resource Locator,URL)等。

S103,若所述数据特征满足预设入侵条件,则向所述第一虚拟网卡发送停止传输命令。

具体的,若所述入侵检测装置检测到所述数据特征满足预设入侵条件,则所述入侵检测装置向所述第一虚拟网卡发送停止传输命令。其中,所述停止传输命令用于指示所述第一虚拟网卡停止传输所述业务Docker容器反馈的所述业务请求对应的响应数据。

由于所述第一虚拟网卡将所述业务请求发送至业务Docker容器,是为了让业务Docker容器反馈响应数据,在业务Docker容器已经将响应数据反馈至第一虚拟网卡的情况下,若所述第一虚拟网卡还未开始向所述用户终端发送所述响应数据或若所述第一虚拟网卡还未完成所述响应数据的传输,则一旦接收到所述入侵检测装置发送的停止传输命令,则所述第一虚拟网卡中断所述响应数据的传输。

可选的,所述停止传输命令还用于指示所述第一虚拟网卡停止传输发送至所述用户终端的其他响应数据。例如,若所述第一虚拟网卡接收到所述用户终端访问业务Docker容器的其他业务请求时,所述第一虚拟网卡不执行将所述业务请求发送至所述业务Docker容器;或者,所述第一虚拟网卡将所述业务请求发送至所述业务Docker容器,但不向所述用户终端反馈所述业务Docker容器发送的针对其他业务请求反馈的响应数据。其中,所述入侵检测装置可以根据所述终端标识来标记所述用户终端。

可选的,所述数据特征满足预设入侵条件可以是指所述数据特征与预设的攻击特征集合中的攻击特征相匹配一致。

在本发明实施例中,通过接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求;接着对业务请求进行解析,以确定业务请求的数据特征,若数据特征满足预设入侵条件,则向第一虚拟网卡发送停止传输命令,停止传输命令用于指示第一虚拟网卡停止传输业务Docker容器反馈的业务请求对应的响应数据。通过接收第一虚拟网卡发送的业务请求,实现了对该业务请求的实时检测和检测结果的反馈,进而提高了入侵检测的效率。

请参见图3,为本发明实施例提供了另一种入侵检测方法的流程示意图。如图3所示,本发明实施例的所述方法可以包括以下步骤S201-步骤S207。

S201,接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求。

具体的,在第一虚拟网卡接收到访问业务Docker容器的业务请求的情况下,所述第一虚拟网卡将所述业务请求发送至业务Docker容器,以及将该业务请求发送至IDS Docker容器,其中,所述业务请求携带发送所述业务请求的用户终端的终端标识。相应的,业务Docker容器接收所述业务请求,并对该业务请求进行处理以生成针对所述业务请求的响应数据;入侵检测装置接收所述业务请求以检测所述业务请求是否会对入侵检测装置所在的物理主机造成攻击,例如,DDoS攻击等。

可选的,所述用户终端的终端标识可以包括但不限定于所述用户终端的IP地址、登陆用户名等。

S202,对所述业务请求进行解析,以确定所述业务请求的数据特征。

具体的,所述入侵检测装置对所述业务请求进行解析,以确定所述业务请求的数据特征,举例来说,该数据特征可以是携带于业务请求的头部字段中,例如,所述业务请求可以为Http请求,业务请求的数据特征可以为该业务请求所使用的URL等。

S203,检测预存的攻击特征集合中是否存在与所述数据特征匹配一致的攻击特征。

具体的,所述入侵检测装置检测预存的攻击特征集合中是否存在与所述数据特征匹配一致的攻击特征;若存在与所述数据特征匹配一致的攻击特征,则执行步骤S204;若不存在与所述数据特征匹配一致的攻击特征,则执行步骤S205。

可选的,所述预存的攻击特征集合包含了多个用于检测访问请求的攻击特征。可选的,所述入侵检测装置可以在攻击特征集合中修改攻击特征、删除攻击特征、增加攻击特征等,以使攻击特征集合中所存储的攻击特征更为完善,提高入侵检测的有效性。

举例来说,对于数据特征为所述业务请求的URL而言,若访问业务Docker容器的业务请求中的URL为http://www.qq.com/***,由于正常访问业务Docker容器的URL为http://www.qq.com/,因此所述入侵检测装置可以对“***”进行进一步检测,通过判断在预存的攻击特征集合中存在“***”时,则确定所述数据特征满足预设入侵条件。

S204,若是,则向所述第一虚拟网卡发送停止传输命令。

具体的,若存在与所述数据特征匹配一致的攻击特征,则所述入侵检测装置确定所述数据特征满足预设入侵条件。若所述数据特征满足预设入侵条件,则所述入侵检测装置向所述第一虚拟网卡发送停止传输命令,所述停止传输命令用于指示所述第一虚拟网卡停止传输所述业务Docker容器反馈的所述业务请求对应的响应数据。

由于所述第一虚拟网卡将所述业务请求发送至业务Docker容器,是为了让业务Docker容器反馈响应数据,在业务Docker容器已经将响应数据反馈至第一虚拟网卡的情况下,若所述第一虚拟网卡还未开始向所述用户终端发送所述响应数据或若所述第一虚拟网卡还未完成所述响应数据的传输,则一旦接收到所述入侵检测装置发送的停止传输命令,则所述第一虚拟网卡中断所述响应数据的传输。

可选的,所述停止传输命令还用于指示所述第一虚拟网卡停止传输发送至所述用户终端的其他响应数据。例如,若所述第一虚拟网卡接收到所述用户终端访问业务Docker容器的其他业务请求时,所述第一虚拟网卡不执行将所述业务请求发送至所述业务Docker容器;或者,所述第一虚拟网卡将所述业务请求发送至所述业务Docker容器,但不向所述用户终端反馈所述业务Docker容器发送的针对其他业务请求反馈的响应数据。其中,所述入侵检测装置可以根据所述终端标识来标记所述用户终端。

S205,通过预先分配的第二虚拟网卡将所述业务请求上报至安全服务器。

具体的,所述入侵检测装置通过预先分配的第二虚拟网卡将所述业务请求上报至安全服务器,以使所述安全服务器对所述业务请求进行进一步检测。可选的,所述安全服务器可以与多个入侵检测装置相连接,因此所述安全服务器能够对不同入侵检测装置发送的业务请求进行分析整理,进而获得更为准确的对该业务请求进行判断,提高了入侵检测的准确性。可以理解的是,所述第一虚拟网卡与所述第二虚拟网卡为物理主机的NIC虚拟化的两种不同的虚拟网卡,所述第一虚拟网卡具体为对应于业务Docker容器的虚拟网卡,所述第二虚拟网卡具体为对应于IDS Docker容器的虚拟网卡。

需要说明的是,在本发明实施例中是在步骤S204之后,或者若所述预存的攻击特征集合中不存在与所述数据特征匹配一致的攻击特征之后,所述入侵检测装置将所述业务请求上报至安全服务器的。可选的,所述入侵检测装置可以在接收到所述第一虚拟网卡发送的所述业务请求之后,将所述业务请求上报至所述安全服务器;或者,所述入侵检测装置还可以将当前一段时间内接收到的业务请求打包之后上报安全服务器;或者,所述入侵检测装置还可以将一定数量的业务请求打包之后上报安全服务器,本发明实施例上报安全服务器的时间、单独上报方式或打包上报方式不做限定。

S206,通过所述第二虚拟网卡接收所述安全服务器发送的所述业务请求对应的安全策略。

具体的,在所述安全服务器对所述业务请求进行深入分析,并确定了与所述业务请求对应的安全策略之后,将所述安全策略通过所述第二虚拟网卡发送至所述入侵检测装置。相应的,所述入侵检测装置通过所述第二虚拟网卡接收所述安全服务器发送的所述业务请求对应的安全策略。其中,所述安全策略用于指示所述第一虚拟网卡是否允许所述用户终端访问所述业务Docker容器。

可选的,所述安全服务器可以通过历史访问中数据特征和入侵检测结果的记录,获得所述业务请求对应的数据特征和安全策略的对应关系。

S207,根据所述安全策略,通知所述第一虚拟网卡对所述用户终端发送的访问连接进行处理。

具体的,所述入侵检测装置根据所述安全策略,通知所述第一虚拟网卡对所述用户终端发送的访问连接进行处理。例如,若所述安全策略为不允许所述用户终端访问所述业务Docker容器,则所述入侵检测装置通知所述第一虚拟网卡拒绝所述用户终端发送的访问连接。若所述安全策略为允许所述用户终端访问所述业务Docker容器,则所述入侵检测装置不向所述第一虚拟网卡发送通知消息,或者发送允许所述用户终端继续访问所述业务Docker的通知消息。

需要说明的是,本发明实施例中的入侵检测装置可以是部署在一台物理主机中的IDS Docker容器中,并预先为所述IDS Docker容器分配一定量的硬件资源,如CPU资源、内存资源等。通过设定入侵检测装置使用固定的硬件资源,能够在实现入侵检测功能的同时不影响其他业务Docker容器的正常运行。

在本发明实施例中,通过接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求;接着对业务请求进行解析,以确定业务请求的数据特征,若数据特征满足预设入侵条件,则向第一虚拟网卡发送停止传输命令,停止传输命令用于指示第一虚拟网卡停止传输业务Docker容器反馈的业务请求对应的响应数据。这样入侵检测装置能够及时对其他业务Docker容器的网络数据进行检测,提高了入侵检测的效率,另外通过安全服务器的进一步检测,能够提高入侵检测的准确性。

请参见图4,为本发明实施例提供了一种可能的入侵检测系统架构图。如图4所示,该入侵检测系统包括安全服务器和多台物理主机,如物理主机1、物理主机2、……、物理主机N。其中,每一台物理主机可以参考图1所示的物理主机的结构图。基于图4所示的入侵检测系统架构图,请一并参见图5,为本发明实施例提供了另一种入侵检测方法的流程示意图。其中,本发明实施例的入侵检测方式是由用户终端、物理主机和安全服务器共同执行的,其中物理主机以物理主机1为例进行说明。其中,物理主机1以虚拟网卡1、业务Docker容器1和IDS Docker容器10为例进行说明。具体执行过程请参见以下介绍。

S301,用户终端向物理主机1发送访问业务Docker容器1的业务请求。其中,所述业务请求携带所述用户终端的终端标识。

S302,所述物理主机1的虚拟网卡1将所述业务请求发送至所述业务Docker容器1。

S303,所述物理主机1的虚拟网卡1将所述业务请求发送至所述IDS Docker容器10。

其中,本发明实施例并不限定所述虚拟网卡1执行步骤302和步骤303的时间先后顺序。

S304,在所述业务Docker容器1接收到所述业务请求之后,对所述业务请求进行处理,并确定所述业务请求对应的响应数据,将所述业务请求对应的响应数据发送至所述虚拟网卡1。

S305,所述虚拟网卡1接收所述业务Docker容器1发送的响应数据,并向所述用户终端发送从所述业务Docker容器1接收到的响应数据。

S306,所述IDS Docker容器10接收所述虚拟网卡1发送的所述业务请求,并所述IDS Docker容器10对所述业务请求进行解析,以确定所述业务请求的数据特征。

S307,所述IDS Docker容器10检测预存的攻击特征集合中是否存在与所述数据特征匹配一致的攻击特征。

S308,若所述IDS Docker容器10检测到攻击特征集合中存在与所述数据特征匹配一致的攻击特征,则所述IDS Docker容器10向所述虚拟网卡1发送停止传输命令。其中,所述停止传输命令用于指示所述虚拟网卡1停止传输所述业务Docker容器1反馈的所述业务请求对应的响应数据。可选的,所述停止传输命令还用于指示所述虚拟网卡1停止传输发送至所述用户终端的其他响应数据。

需要说明的是,所述业务Docker容器1和所述IDS Docker容器10是分别执行接收业务请求的,进而所述业务Docker容器1和所述IDS Docker容器10所执行的步骤之间并无时间先后顺序之分。

S309,所述IDS Docker容器10还可以将所述业务请求发送至安全服务器,以使所述安全服务器对所述业务请求进行进一步检测,以提高入侵检测的准确性。

S310,在安全服务器对所述业务请求检测完毕之后,向所述IDS Docker容器10发送所述安全策略,其中,所述安全策略用于指示所述第一虚拟网卡是否允许所述用户终端访问所述业务Docker容器。

S311,所述IDS Docker容器10接收到所述安全服务器发送的所述业务请求对应的安全策略之后,根据所述安全策略,通知所述第一虚拟网卡对所述用户终端发送的访问连接进行处理。

需要说明的是,所述IDS Docker容器10和所述安全服务器之间的通信是通过与所述IDS容器10对应的虚拟网卡10实现的,例如,所述安全服务器将安全策略发送至虚拟网卡10,虚拟网卡10将安全策略发送至IDS Docker容器10。

需要说明的是,本发明实施例中的步骤S301至步骤S311的具体实现方式以及带来的技术效果可以参见图2或图3所示实施例的具体描述,在此不再赘述。

基于图1所示的物理主机的结构示意图和图4所示的入侵检测系统的系统架构图,下面将结合附图6-附图8,对本发明实施例提供的入侵检测装置进行详细介绍。需要说明的是,附图6-附图8所示的入侵检测装置,用于执行本发明图2至图5所示实施例的方法。附图6-附图8所示的入侵检测装置可以是图1所示的物理主机中IDS Docker容器中的入侵检测模块。为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明图2至图5所示的实施例。

请参见图6,为本发明实施例提供了一种入侵检测装置的结构示意图。如图6所示,本发明实施例的所述入侵检测装置1可以包括:请求接收模块11、特征确定模块12、命令发送模块13。

请求接收模块11,用于接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求,所述业务请求携带发送所述业务请求的用户终端的终端标识。

具体的,在第一虚拟网卡接收到访问业务Docker容器的业务请求的情况下,所述第一虚拟网卡将所述业务请求发送至业务Docker容器,以及将该业务请求发送至IDS Docker容器,其中,所述业务请求携带发送所述业务请求的用户终端的终端标识。相应的,业务Docker容器接收所述业务请求,并对该业务请求进行处理以生成针对所述业务请求的响应数据;所述请求接收模块11接收所述业务请求以检测所述业务请求是否会对入侵检测装置1所在的物理主机造成攻击,例如,DDoS攻击等。

可选的,所述用户终端的终端标识可以包括但不限定于所述用户终端的IP地址、登陆用户名等。

特征确定模块12,用于对所述业务请求进行解析,以确定所述业务请求的数据特征。

具体的,所述特征确定模块12对所述业务请求进行解析,以确定所述业务请求的数据特征,举例来说,该数据特征可以是携带于业务请求的头部字段中,例如,所述业务请求可以为Http请求,业务请求的数据特征可以为该业务请求所使用的URL等。

命令发送模块13,用于若所述数据特征满足预设入侵条件,则向所述第一虚拟网卡发送停止传输命令,所述停止传输命令用于指示所述第一虚拟网卡停止传输所述业务Docker容器反馈的所述业务请求对应的响应数据。

具体的,若检测到所述数据特征满足预设入侵条件,则所述命令发送模块13向所述第一虚拟网卡发送停止传输命令。其中,所述停止传输命令用于指示所述第一虚拟网卡停止传输所述业务Docker容器反馈的所述业务请求对应的响应数据。

由于所述第一虚拟网卡将所述业务请求发送至业务Docker容器,是为了让业务Docker容器反馈响应数据,在业务Docker容器已经将响应数据反馈至第一虚拟网卡的情况下,若所述第一虚拟网卡还未开始向所述用户终端发送所述响应数据或若所述第一虚拟网卡还未完成所述响应数据的传输,则一旦接收到所述命令发送模块13发送的停止传输命令,则所述第一虚拟网卡中断所述响应数据的传输。

可选的,所述停止传输命令还用于指示所述第一虚拟网卡停止传输发送至所述用户终端的其他响应数据。例如,若所述第一虚拟网卡接收到所述用户终端访问业务Docker容器的其他业务请求时,所述第一虚拟网卡不执行将所述业务请求发送至所述业务Docker容器;或者,所述第一虚拟网卡将所述业务请求发送至所述业务Docker容器,但不向所述用户终端反馈所述业务Docker容器发送的针对其他业务请求反馈的响应数据。其中,所述命令发送模块13可以根据所述终端标识来标记所述用户终端。

可选的,所述数据特征满足预设入侵条件可以是指所述数据特征与预设的攻击特征集合中的攻击特征相匹配一致。

在本发明实施例中,通过接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求;接着对业务请求进行解析,以确定业务请求的数据特征,若数据特征满足预设入侵条件,则向第一虚拟网卡发送停止传输命令,停止传输命令用于指示第一虚拟网卡停止传输业务Docker容器反馈的业务请求对应的响应数据。通过接收第一虚拟网卡发送的业务请求,实现了对该业务请求的实时检测和检测结果的反馈,进而提高了入侵检测的效率。

请参见图7,为本发明实施例提供了另一种入侵检测装置的结构示意图。如图7所示,本发明实施例的所述入侵检测装置1可以包括:请求接收模块11、特征确定模块12、命令发送模块13、特征检测模块14、入侵确定模块15、请求上报模块16、策略接收模块17和访问处理模块18。

请求接收模块11,用于接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求,所述业务请求携带发送所述业务请求的用户终端的终端标识。

具体的,在第一虚拟网卡接收到访问业务Docker容器的业务请求的情况下,所述第一虚拟网卡将所述业务请求发送至业务Docker容器,以及将该业务请求发送至IDS Docker容器,其中,所述业务请求携带发送所述业务请求的用户终端的终端标识。相应的,业务Docker容器接收所述业务请求,并对该业务请求进行处理以生成针对所述业务请求的响应数据;所述请求接收模块11接收所述业务请求以检测所述业务请求是否会对入侵检测装置1所在的物理主机造成攻击,例如,DDoS攻击等。

可选的,所述用户终端的终端标识可以包括但不限定于所述用户终端的IP地址、登陆用户名等。

特征确定模块12,用于对所述业务请求进行解析,以确定所述业务请求的数据特征。

具体的,所述特征确定模块12对所述业务请求进行解析,以确定所述业务请求的数据特征,举例来说,该数据特征可以是携带于业务请求的头部字段中,例如,所述业务请求可以为Http请求,业务请求的数据特征可以为该业务请求所使用的URL等。

特征检测模块14,用于检测预存的攻击特征集合中是否存在与所述数据特征匹配一致的攻击特征。

具体的,所述特征检测模块14检测预存的攻击特征集合中是否存在与所述数据特征匹配一致的攻击特征;若存在与所述数据特征匹配一致的攻击特征,则通知入侵确定模块15执行其步骤;若不存在与所述数据特征匹配一致的攻击特征,则通知请求上报模块16执行其步骤。

可选的,所述预存的攻击特征集合包含了多个用于检测访问请求的攻击特征。可选的,所述入侵检测装置1可以在攻击特征集合中修改攻击特征、删除攻击特征、增加攻击特征等,以使攻击特征集合中所存储的攻击特征更为完善,提高入侵检测的有效性。

入侵确定模块15,用于若所述特征检测模块的检测结果为是,则确定所述数据特征满足预设入侵条件。

具体的,若存在与所述数据特征匹配一致的攻击特征,则所述入侵确定模块15确定所述数据特征满足预设入侵条件。若所述数据特征满足预设入侵条件。

举例来说,对于数据特征为所述业务请求的URL而言,若访问业务Docker容器的业务请求中的URL为http://www.qq.com/***,由于正常访问业务Docker容器的URL为http://www.qq.com/,因此所述入侵检测装置1可以对“***”进行进一步检测,通过判断在预存的攻击特征集合中存在“***”时,则确定所述数据特征满足预设入侵条件。

命令发送模块13,用于若所述数据特征满足预设入侵条件,则向所述第一虚拟网卡发送停止传输命令,所述停止传输命令用于指示所述第一虚拟网卡停止传输所述业务Docker容器反馈的所述业务请求对应的响应数据。

具体的,则所述命令发送模块13向所述第一虚拟网卡发送停止传输命令,所述停止传输命令用于指示所述第一虚拟网卡停止传输所述业务Docker容器反馈的所述业务请求对应的响应数据。

由于所述第一虚拟网卡将所述业务请求发送至业务Docker容器,是为了让业务Docker容器反馈响应数据,在业务Docker容器已经将响应数据反馈至第一虚拟网卡的情况下,若所述第一虚拟网卡还未开始向所述用户终端发送所述响应数据或若所述第一虚拟网卡还未完成所述响应数据的传输,则一旦接收到所述命令发送模块13发送的停止传输命令,则所述第一虚拟网卡中断所述响应数据的传输。

可选的,所述停止传输命令还用于指示所述第一虚拟网卡停止传输发送至所述用户终端的其他响应数据。例如,若所述第一虚拟网卡接收到所述用户终端访问业务Docker容器的其他业务请求时,所述第一虚拟网卡不执行将所述业务请求发送至所述业务Docker容器;或者,所述第一虚拟网卡将所述业务请求发送至所述业务Docker容器,但不向所述用户终端反馈所述业务Docker容器发送的针对其他业务请求反馈的响应数据。其中,所述命令发送模块13可以根据所述终端标识来标记所述用户终端。

请求上报模块16,用于通过预先分配的第二虚拟网卡将所述业务请求上报至安全服务器。

具体的,所述请求上报模块16通过预先分配的第二虚拟网卡将所述业务请求上报至安全服务器,以使所述安全服务器对所述业务请求进行进一步检测。可选的,所述安全服务器可以与多个入侵检测装置相连接,因此所述安全服务器能够对不同入侵检测装置发送的业务请求进行分析整理,进而获得更为准确的对该业务请求进行判断,提高了入侵检测的准确性。

需要说明的是,在本发明实施例中是在执行命令发送模块13之后,或者若所述预存的攻击特征集合中不存在与所述数据特征匹配一致的攻击特征之后,所述请求上报模块16将所述业务请求上报至安全服务器的。可选的,所述请求上报模块16可以在接收到所述第一虚拟网卡发送的所述业务请求之后,将所述业务请求上报至所述安全服务器;或者,所述请求上报模块16还可以将当前一段时间内接收到的业务请求打包之后上报安全服务器;或者,所述请求上报模块16还可以将一定数量的业务请求打包之后上报安全服务器,本发明实施例上报安全服务器的时间、单独上报方式或打包上报方式不做限定。

策略接收模块17,用于通过所述第二虚拟网卡接收所述安全服务器发送的所述业务请求对应的安全策略,所述安全策略用于指示所述第一虚拟网卡是否允许所述用户终端访问所述业务Docker容器。

具体的,在所述安全服务器对所述业务请求进行深入分析,并确定了与所述业务请求对应的安全策略之后,将所述安全策略通过所述第二虚拟网卡发送至所述入侵检测装置。相应的,所述策略接收模块17通过所述第二虚拟网卡接收所述安全服务器发送的所述业务请求对应的安全策略。其中,所述安全策略用于指示所述第一虚拟网卡是否允许所述用户终端访问所述业务Docker容器。

可选的,所述安全服务器可以通过历史访问中数据特征和入侵检测结果的记录,获得所述业务请求对应的数据特征和安全策略的对应关系。

访问处理模块18,用于根据所述安全策略,通知所述第一虚拟网卡对所述用户终端发送的访问连接进行处理。

具体的,所述访问处理模块18根据所述安全策略,通知所述第一虚拟网卡对所述用户终端发送的访问连接进行处理。例如,若所述安全策略为不允许所述用户终端访问所述业务Docker容器,则所述访问处理模块18通知所述第一虚拟网卡拒绝所述用户终端发送的访问连接。若所述安全策略为允许所述用户终端访问所述业务Docker容器,则所述访问处理模块18不向所述第一虚拟网卡发送通知消息,或者发送允许所述用户终端继续访问所述业务Docker的通知消息。

需要说明的是,本发明实施例中的入侵检测装置可以是部署在一台物理主机中的IDS Docker容器中,并预先为所述IDS Docker容器分配一定量的硬件资源,如CPU资源、内存资源等。通过设定入侵检测装置使用固定的硬件资源,能够在实现入侵检测功能的同时不影响其他业务Docker容器的正常运行。

在本发明实施例中,通过接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求;接着对业务请求进行解析,以确定业务请求的数据特征,若数据特征满足预设入侵条件,则向第一虚拟网卡发送停止传输命令,停止传输命令用于指示第一虚拟网卡停止传输业务Docker容器反馈的业务请求对应的响应数据。这样入侵检测装置能够及时对其他业务Docker容器的网络数据进行检测,提高了入侵检测的效率,另外通过安全服务器的进一步检测,能够提高入侵检测的准确性。

请参见图8,为本发明实施例提供了另一种入侵检测装置的结构示意图。如图8所示,所述入侵检测装置1000可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1004,存储器1005,至少一个通信总线1002。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。其中,通信总线1002用于实现这些组件之间的连接通信。可选的,所述入侵检测装置1000包括用户接口1003,其中,可选的,所述用户接口1003可以包括显示屏(Display)、键盘(Keyboard)。如图8所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及入侵检测应用程序。

在图8所示的入侵检测装置1000中,处理器1001可以用于调用存储器1005中存储的入侵检测应用程序,并具体执行以下操作:

接收业务Docker容器对应的第一虚拟网卡发送的访问业务Docker容器的业务请求,所述业务请求携带发送所述业务请求的用户终端的终端标识;

对所述业务请求进行解析,以确定所述业务请求的数据特征;

若所述数据特征满足预设入侵条件,则向所述第一虚拟网卡发送停止传输命令,所述停止传输命令用于指示所述第一虚拟网卡停止传输所述业务Docker容器反馈的所述业务请求对应的响应数据。

在一个可能的实施例中,所述停止传输命令还用于指示所述第一虚拟网卡停止传输发送至所述用户终端的其他响应数据。

在一个可能的实施例中,所述处理器1001在执行若所述数据特征满足预设入侵条件,则向所述第一虚拟网卡发送停止传输命令之前,所述处理器1001还执行:

检测预存的攻击特征集合中是否存在与所述数据特征匹配一致的攻击特征;

若是,则确定所述数据特征满足预设入侵条件。

在一个可能的实施例中,所述处理器1001还执行:

通过预先分配的第二虚拟网卡将所述业务请求上报至安全服务器;

通过所述第二虚拟网卡接收所述安全服务器发送的所述业务请求对应的安全策略,所述安全策略用于指示所述第一虚拟网卡是否允许所述用户终端访问所述业务Docker容器;

根据所述安全策略,通知所述第一虚拟网卡对所述用户终端发送的访问连接进行处理。

在一个可能的实施例中,所述处理器1001在执行根据所述安全策略,通知所述第一虚拟网卡对所述用户终端发送的访问连接进行处理,具体执行当所述安全策略为不允许所述用户终端访问所述业务Docker容器时,通知所述第一虚拟网卡拒绝所述用户终端发送的访问连接。

需要说明的是,本发明实施例中所示的处理器1001可以用于执行图2至图5所示任一实施例中入侵检测装置的动作或步骤,该处理器1001所执行内容的具体实现方式以及带来的技术效果参见相应方法实施例的具体描述,在此不再赘述。

需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1