掌桥专利:专业的专利平台
掌桥专利
首页

报文检测方法及装置

文献发布时间:2023-06-19 16:04:54



技术领域

本公开涉及计算机技术领域,尤其涉及一种报文检测方法、装置、电子设备及可读存储介质。

背景技术

分布式拒绝服务(Distributed Denial of Service,简称DDoS)将多台计算机联合起来作为攻击平台,通过远程连接利用恶意程序,对一个或多个目标发起DDoS攻击,一种为流量攻击,主要是针对网络带宽的攻击,即大量攻击包导致网络带宽被阻塞,合法网络包被虚假的攻击包淹没无法到达主机;另一种为资源耗尽攻击,主要是针对服务器主机的攻击,即通过大量攻击包导致主机的内存被耗尽或CPU被内核及应用程序占完而造成无法提供网络服务。

相关技术中,针对DDoS攻击,网络限速时最常用的防御手段,但是网络限速很容易造成正常访问流量被丢弃,因此通过源认证技术进行网络防御,对于通过认证的客户端,会将其加入到相应的白名单中,之后匹配到该白名单的报文可以直接转发,不需要再次认证。但是对于大量的泛洪flood类型的DDoS攻击来说,仅仅采用单一的源认证防御方法是不够的,因为在网络拥塞的情况下,源认证也会产生新的流量,使得原本拥塞的网络环境更加恶劣。

综上,在网络拥塞的情况下,如何减轻源认证产生的报文造成网络拥塞情况加剧是当前亟需解决的问题。

发明内容

为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种报文检测方法,解决了在网络拥塞的情况下,源认证产生的报文造成网络拥塞情况加剧的问题。

为了实现上述目的,本公开实施例提供技术方案如下:

第一方面,本公开的实施例提供一种报文检测方法,所述方法包括:

接收待处理报文;

解析所述待处理报文,获取源IP地址以及原始生存时间值;所述原始生存时间值用于表示所述待处理报文中的互联网协议IP数据包在网络中实际转发的跳数;

根据路由信息库获取最小生存时间值;所述最小生存时间值用于表示所述待处理报文中的IP数据包从源IP地址转发到目标服务器的私网IP地址的最小跳数;所述路由信息库包括各地区的公网IP地址、各公网IP地址对应的实际地理位置以及各地区之间的最小生存时间值;

根据所述原始生存时间值与所述最小生存时间值的大小关系,确定所述待处理报文是否为攻击报文;

若所述待处理报文是攻击报文,则将所述源IP加入黑名单;

否则,对所述源IP进行源认证。

作为本公开实施例一种可选的实施方式,在解析所述待处理报文,获取源IP地址以及原始生存时间值之前,所述方法还包括:

查询网络入口流量;所述网络入口流量用于表示单位时间内防御设备接收到的待处理报文的流量之和;

根据所述网络入口流量与预设阈值流量的大小关系,确定是否根据路由信息库获取最小生存时间值。

作为本公开实施例一种可选的实施方式,所述根据所述网络入口流量与预设阈值流量的大小关系,确定是否根据路由信息库获取最小生存时间值,包括:

若所述网络入口流量小于预设阈值流量,则直接进行源认证;

若所述网络入口流量大于预设阈值流量,则根据路由信息库获取最小生存时间值。

作为本公开实施例一种可选的实施方式,所述根据所述原始生存时间值与所述最小生存时间值的大小关系,确定所述待处理报文是否为攻击报文,包括:

若所述原始生存时间值小于所述最小生存时间值,则确定所述待处理报文为攻击报文;

若所述原始生存时间值大于所述最小生存时间值,则初步确定所述待处理报文为非攻击报文。

作为本公开实施例一种可选的实施方式,在根据路由信息库获取最小生存时间值之前,所述方法还包括:

获取所述待处理报文的五元组信息;所述五元组信息包括:源IP地址、源端口、目的IP地址、目的端口以及传输层协议;

根据第一预设哈希算法计算所述五元组信息对应的第一哈希值;

根据所述路由信息库查询所述第一哈希值,获取源IP地址对应的实际地理位置。

作为本公开实施例一种可选的实施方式,在根据所述路由信息库查询所述第一哈希值,获取源IP地址对应的实际地理位置之后,所述方法还包括:

根据第二预设哈希算法计算所述实际地理位置的第二哈希值;

根据所述路由信息库查询所述第二哈希值,获取第一生存时间值;所述第一生存时间值用于表示源IP地址与防御设备的公网地址之间的最小生存时间值;

获取第二生存时间值,所述第二生存时间值用于表示所述防御设备的公网地址与目标服务器的私网IP地址之间的生存时间值;

根据第三生存时间值与原始生存时间值的大小关系,确定所述待处理报文是否为攻击报文;所述第三生存时间值为所述第一生存时间值与所述第二生存时间值之和。

作为本公开实施例一种可选的实施方式,所述根据第三生存时间值与原始生存时间值的大小关系,确定所述待处理报文是否为攻击报文,包括:

若所述原始生存时间值小于所述第三生存时间值,则确定所述待处理报文为攻击报文;

若所述原始生存时间值大于所述第三生存时间值,则初步确定所述待处理报文为非攻击报文。

第二方面,本公开实施例提供一种报文检测装置,包括:

接收模块,用于接收待处理报文;

解析模块,用于解析所述待处理报文,获取源IP地址以及原始生存时间值;所述原始生存时间值用于表示所述待处理报文中的互联网协议IP数据包在网络中实际转发的跳数;

获取模块,用于根据路由信息库获取最小生存时间值;所述最小生存时间值用于表示所述待处理报文中的IP数据包从源IP地址转发到目标服务器的私网IP地址的最小跳数;所述路由信息库包括各地区的公网IP地址、各公网IP地址对应的实际地理位置以及各地区之间的最小生存时间值;

确定模块,用于根据所述原始生存时间值与所述最小生存时间值的大小关系,确定所述待处理报文是否为攻击报文;

黑名单模块,用于若所述待处理报文是攻击报文,则将所述源IP加入黑名单;

源认证模块,用于否则,对所述源IP进行源认证。

作为本公开实施例一种可选的实施方式,所述装置还包括:

查询模块,用于查询网络入口流量;所述网络入口流量用于表示单位时间内防御设备接收到的待处理报文的流量之和;

判断模块,用于根据所述网络入口流量与预设阈值流量的大小关系,确定是否根据路由信息库获取最小生存时间值。

作为本公开实施例一种可选的实施方式,所述判断模块,具体用于:

若所述网络入口流量小于预设阈值流量,则直接进行源认证;

若所述网络入口流量大于预设阈值流量,则根据路由信息库获取最小生存时间值。

作为本公开实施例一种可选的实施方式,所述确定模块,具体用于:

若所述原始生存时间值小于所述最小生存时间值,则确定所述待处理报文为攻击报文;

若所述原始生存时间值大于所述最小生存时间值,则初步确定所述待处理报文为非攻击报文。

作为本公开实施例一种可选的实施方式,所述解析模块,还用于:

获取所述待处理报文的五元组信息;所述五元组信息包括:源IP地址、源端口、目的IP地址、目的端口以及传输层协议;

根据第一预设哈希算法计算所述五元组信息对应的第一哈希值;

根据所述路由信息库查询所述第一哈希值,获取源IP地址对应的实际地理位置。

作为本公开实施例一种可选的实施方式,所述确定模块,还包括:

计算单元,用于根据第二预设哈希算法计算所述实际地理位置的第二哈希值;

查询单元,用于根据所述路由信息库查询所述第二哈希值,获取第一生存时间值;所述第一生存时间值用于表示源IP地址与防御设备的公网地址之间的最小生存时间值;

获取单元,用于获取第二生存时间值,所述第二生存时间值用于表示所述防御设备的公网地址与目标服务器的私网IP地址之间的生存时间值;

比较单元,用于根据第三生存时间值与原始生存时间值的大小关系,确定所述待处理报文是否为攻击报文;所述第三生存时间值为所述第一生存时间值与所述第二生存时间值之和。

作为本公开实施例一种可选的实施方式,所述比较单元,具体用于:

若所述原始生存时间值小于所述第三生存时间值,则确定所述待处理报文为攻击报文;

若所述原始生存时间值大于所述第三生存时间值,则初步确定所述待处理报文为非攻击报文。

第三方面,本公开实施例提供一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面或第一方面的任一实施方式所述的报文检测方法。

第四方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面或第一方面的任一实施方式所述的报文检测方法。

本公开提供的报文检测方法,应用于防御设备,首先接收待处理报文,然后解析待处理报文获取源IP地址以及原始生存时间值,接着根据路由信息库获取最小生存时间值,再根据所述原始生存时间值与所述最小生存时间值的大小关系,确定所述待处理报文是否为攻击报文,若待处理报文是攻击报文,则将源IP加入黑名单;否则,对源IP进行源认证。由于路由信息库包括各地区的公网IP地址、各公网IP地址对应的实际地理位置以及各地区之间的最小生存时间值,所以能够根据路由信息库获取最小生存时间值;又由于根据所述原始生存时间值与所述最小生存时间值的大小关系,能够确定所述待处理报文是否为攻击报文,进而确定是否对源IP进行源认证,所以在网络拥塞的情况下,能够减少源认证时回复的报文数量,以减轻网络负载。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

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

图1为一个实施例中报文检测方法的应用场景图;

图2为一个实施例中报文检测方法的流程示意图之一;

图3为一个实施例中报文检测方法的流程示意图之二;

图4为一个实施例中报文检测装置的结构示意图;

图5为本公开实施例所述的电子设备的结构示意图。

具体实施方式

为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。

在本公开实施例中,“示例性的”或者“例如”等词是用于表示作例子、例证或说明。本公开实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。此外,在本公开实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。

本公开提供的一种报文检测方法,可以应用于如图1所示的应用环境中。当目标服务器被攻击时,主要表现为:目标服务器上有大量等待的TCP连接,网络中充斥着大量的源地址为假的无用数据包,网络拥塞,使被攻击主机无法正常和外界通讯,严重时会造成被攻击主机系统死机。因此,本公开提供一种报文检测方法,应用于防御设备12中。其中,客户端11、防御设备12、目标服务器13之间可以通过网络进行通信。当客户端11发送报文给目标服务器13时,首先经过防御设备12。防御设备12接收待处理报文,然后解析待处理报文以获取源IP地址和原始生存时间值,根据路由信息库获取从源IP地址转发到目标服务器的私网IP地址的最小跳数,接着根据原始生存时间值与最小生存时间值的大小关系,确定待处理报文是否为攻击报文,若是,则将源IP加入黑名单;若不是,则对源IP进行源认证。进一步将源认证成功的IP加入白名单,将源认证失败的IP加入黑名单,将白名单的IP对应的报文发送给目标服务器13。其中,客户端11可以但不限于是个人计算机、笔记本电脑、台式电脑等,目标服务器13可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

在一个实施例中,如图2所示,提供一种报文检测方法,应用于防御设备12,所述防御设备12配置有路由信息库,该方法包括如下步骤:

S21、接收待处理报文。

其中,待处理报文尚未确定是真实客户端发送的数据报文或是攻击客户端发送的数据报文。

S22、解析所述待处理报文,获取源IP地址以及原始生存时间值。

其中,所述原始生存时间值用于表示所述待处理报文中的IP数据包在网络中转发的跳数。具体的,TTL(Time To Live,生存时间值),是指IP报文所允许通过的路由器的最大数量。报文每经过一个路由器,TTL减1,TTL的初始值通常为64、128、255,不同操作系统的初始值可能会不一样,客户端主要的操作系统中TTL的初始值为:30、32、60、64(MAC OS、LINUX)、128(Windows)、255(UNIX)等。当报文在到达目标IP之前,TTL减少为0时,路由器将该数据报文丢弃。

具体的,当客户端向目标服务器发送数据时,在数据的传输过程中,可以通过数据的IP数据包中的生存时间值,获取数据在传输过程中经过的各路由器分别对应的IP地址。防御设备解析待处理报文,获取数据包的实际地理位置以及数据包在网络转发中经过的实际路由个数。由于企业或家庭所使用的网络为私有网络,使用的是私有地址;运营商维护的网络为公共网络,使用的是公有地址。而私有地址不能在公网中路由,因此需要用到NAT(Network Address Translation,网络地址转换)技术进行地址转换。所以解析报文能获得一个公网IP,根据公网IP就能得到源IP地址对应的实际地理位置。

S23、根据路由信息库获取最小生存时间值。

其中,所述最小生存时间值用于表示所述待处理报文中的IP数据包从源IP地址转发到目标服务器的私网IP地址的最小跳数。

具体的,IP数据包从源地址转发到目标服务器的私网IP地址的最小跳数包括:从源IP的公网地址到服务器的公网IP地址的最小跳数与从服务器的公网IP地址到目标服务器的私网IP地址的最小跳数之和。

具体的,由于正规运营商的核心网中的各路由器的IP地址或IP地址范围是相对固定的,即预先设定好的,因此可以预先获取路由信息库,并将路由信息库被配置在防御设备上。其中,路由信息库是预先获取的包括各地区的公网IP地址、各公网IP地址对应的实际地理位置以及各地区之间的最小生存时间值的地理信息库,所以根据路由信息库能够获取数据包从源IP地址转发到目标服务器的私网IP地址的最小跳数。

S24、根据所述原始生存时间值与所述最小生存时间值的大小关系,确定所述待处理报文是否为攻击报文。

具体的,步骤S24(根据所述原始生存时间值与所述最小生存时间值的大小关系,确定所述待处理报文是否为攻击报文)的实现方式如下:

a、若所述原始生存时间值小于所述最小生存时间值,则确定所述待处理报文为攻击报文。

示例性的,待处理报文的发送端的IP位置是A,发送至目标服务器的IP位置是B,解析获取到的原始生存时间值是8,根据路由信息库查询到的最小生存时间值是10,则确认源IP为伪造IP,即待处理报文并非是从A位置发送到B位置的,而是伪造的攻击报文。

b、若所述原始生存时间值大于所述最小生存时间值,则初步确定所述待处理报文为非攻击报文。

需要说明的是,当原始生存时间值大于最小生存时间值时,可以初步确定待处理报文为非攻击报文,此时,待处理报文还可能是通过本方法未检测出的攻击报文,如果需要进一步确定待处理报文是否为攻击报文,还可以通过其他的报文检测方式对待处理报文进行检测。

示例性的,待处理报文的发送端的IP位置是A,发送至目标服务器的IP位置是B,解析获取到的原始生存时间值是12,根据路由信息库查询到的最小生存时间值是10,则确认源IP为真实IP,即待处理报文是从A位置发送到B位置的,只是数据包在转发过程中,可能经过某地区的路由数量较多,从而确定待处理报文是正常报文。

若所述待处理报文是攻击报文,则执行步骤S25;否则,执行步骤S26。

S25、将所述源IP加入黑名单。

通过黑名单的方式对攻击流量进行防御,不仅大大降低对网络资源造成的副作用,而且能够显著提高防御性能。

S26、对所述源IP进行源认证。

其中,源认证的目的是为了确保是否为可靠的源IP发送的报文信息,避免目标服务器接收到伪装源发送的报文信息。

具体的,当待处理报文是攻击报文时,即源IP是伪造IP,直接将攻击报文对应的源IP加入黑名单,不用进一步对源IP进行源认证。这样做的原因是:一方面,在网络较为拥塞的环境下,如果对每个源IP都进行源认证,会加剧网络的复杂程度,在一定程度上影响到正常业务数据包的传输;另一方面,源认证的交互过程非常消耗防御设备的性能,所以通过上述方法,先过滤掉部分伪造的源IP,然后再进行源认证,从而可以很大程度上在保证防御效果的同时规避源认证造成的系统资源浪费。

应该用本公开实施例,本公开提供的报文检测方法,应用于防御设备,首先接收待处理报文,然后解析待处理报文获取源IP地址以及原始生存时间值,接着根据路由信息库获取最小生存时间值,再根据所述原始生存时间值与所述最小生存时间值的大小关系,确定所述待处理报文是否为攻击报文,若待处理报文是攻击报文,则将源IP加入黑名单;否则,对源IP进行源认证。由于路由信息库包括各地区的公网IP地址、各公网IP地址对应的实际地理位置以及各地区之间的最小生存时间值,所以能够根据路由信息库获取最小生存时间值;又由于根据所述原始生存时间值与所述最小生存时间值的大小关系,能够确定所述待处理报文是否为攻击报文,进而确定是否对源IP进行源认证,所以在网络拥塞的情况下,能够减少源认证时回复的报文数量,以减轻网络负载。

在一个实施例中,参照图3所示,在图2的基础上,执行步骤S22(解析所述待处理报文,获取源IP地址以及原始生存时间值)之前,还执行以下步骤:

S211、查询网络入口流量。

其中,所述网络入口流量用于表示单位时间内防御设备接收到的待处理报文的流量之和。

S212、根据所述网络入口流量与预设阈值流量的大小关系,确定是否根据路由信息库获取最小生存时间值。

其中,预设阈值流量可以是500MB,1024MB等,也可以是其他合理的数值,可根据实际应用场景进行设置,此处不做具体限制。

在一个实施例中,步骤S212可以通过如下方式实现:

(1)若所述网络入口流量小于预设阈值流量,则直接进行源认证。

(2)若所述网络入口流量大于预设阈值流量,则根据路由信息库获取最小生存时间值。

具体的,对单位时间内防御设备入口接收到的报文流量进行统计,然后与预设阈值流量对比,如果单位时间内入口接收的报文流量小于预设阈值流量,则跳过根据路由信息库获取最小生存时间值,直接进行源认证。由于根据路由信息库获取最小生存时间值的目的是为了筛选出攻击报文,所以如果单位时间内入口接收的报文流量大于预设阈值流量,则需要根据路由信息库获取最小生存时间值以便筛选出攻击报文,只让初步筛选得到的非攻击报文进行源认证,以减少源认证产生的网络负载。

示例性的,一种情况是,如果网络入口流量为500MB,预设阈值流量为800MB,此时网络入口流量小于预设阈值流量,所以不用根据路由信息库去筛选攻击报文,而是直接进行源认证。另一种情况是,如果网络入口流量为800MB,预设阈值流量为500MB,为了减少源认证产生的网络负载,则需要根据路由信息库筛选出攻击报文,只让初步筛选得到的非攻击报文进行源认证。

通过上述方法,在设备防御过程中,用户可以自定义阈值大小,从而灵活的变化IP地理识别的比例,实现针对性的防护,从而能够兼顾防御效果和网络负载。

在一个实施例中,执行步骤S23(根据路由信息库获取最小生存时间值)之前,还执行以下步骤:

(1)、获取所述待处理报文的五元组信息。

其中,所述五元组信息包括:源IP地址、源端口、目的IP地址、目的端口以及传输层协议。

(2)、根据第一预设哈希算法计算所述五元组信息对应的第一哈希值。

(3)、根据所述路由信息库查询所述第一哈希值,获取源IP地址对应的实际地理位置。

具体的,首先获取待处理报文的五元组信息,通过预设的哈希函数算出该源IP五元组信息对应的哈希值,利用该哈希值在给定的路由信息库中查询该IP对应的实际地理位置。

在一个实施例中,执行上述步骤(3)之后,还执行以下步骤:

A、根据第二预设哈希算法计算所述实际地理位置的第二哈希值。

B、根据所述路由信息库查询所述第二哈希值,获取第一生存时间值。

其中,所述第一生存时间值用于表示源IP地址与防御设备的公网地址之间的最小生存时间值。

C、获取第二生存时间值,所述第二生存时间值用于表示所述防御设备的公网地址与目标服务器的私网IP地址之间的生存时间值。

D、根据第三生存时间值与原始生存时间值的大小关系,确定所述待处理报文是否为攻击报文。

其中,所述第三生存时间值为所述第一生存时间值与所述第二生存时间值之和。

具体的,当查询到源IP对应的实际地理位置时,通过预设的哈希函数计算初该IP对应的地理位置的哈希值,然后在地理库中查询到该源IP地理位置与设备所在地理位置中间的最小TTL,即源IP公网地址到防御设备的公网地址的最小TTL,记为TTL1;在防御设备配置时,需要手动配置当前的公网IP地址和目标服务器私网之间的IP地址,记为TTL2;实际收到的待处理报文解析获取的TTL记为TTL3。

在一个实施例中,上述步骤D(根据第三生存时间值与原始生存时间值的大小关系,确定所述待处理报文是否为攻击报文)通过如下方式实现:

D-1、若所述原始生存时间值小于所述第三生存时间值,则确定所述待处理报文为攻击报文;

D-2、若所述原始生存时间值大于所述第三生存时间值,则初步确定所述待处理报文为非攻击报文。

示例性的,判断TTL3是否小于TTL1+TTL2,若是,确定源IP对应的报文为攻击报文,可以直接加入黑名单,反之,进行源认证。

在一个实施例中,如图4所示,提供了一种报文检测装置400,包括:

接收模块410,用于接收待处理报文;

解析模块420,用于解析所述待处理报文,获取源IP地址以及原始生存时间值;所述原始生存时间值用于表示所述待处理报文中的互联网协议IP数据包在网络中实际转发的跳数;

获取模块430,用于根据路由信息库获取最小生存时间值;所述最小生存时间值用于表示所述待处理报文中的IP数据包从源IP地址转发到目标服务器的私网IP地址的最小跳数;所述路由信息库包括各地区的公网IP地址、各公网IP地址对应的实际地理位置以及各地区之间的最小生存时间值;

确定模块440,用于根据所述原始生存时间值与所述最小生存时间值的大小关系,确定所述待处理报文是否为攻击报文。

黑名单模块450,用于若所述待处理报文是攻击报文,则将所述源IP加入黑名单;

源认证模块460,用于否则,对所述源IP进行源认证。

作为本公开实施例一种可选的实施方式,所述装置还包括:

查询模块,用于查询网络入口流量;所述网络入口流量用于表示单位时间内防御设备接收到的待处理报文的流量之和;

判断模块,用于根据所述网络入口流量与预设阈值流量的大小关系,确定是否根据路由信息库获取最小生存时间值。

作为本公开实施例一种可选的实施方式,所述判断模块,具体用于:

若所述网络入口流量小于预设阈值流量,则直接进行源认证;

若所述网络入口流量大于预设阈值流量,则根据路由信息库获取最小生存时间值。

作为本公开实施例一种可选的实施方式,所述确定模块,具体用于:

若所述原始生存时间值小于所述最小生存时间值,则确定所述待处理报文为攻击报文;

若所述原始生存时间值大于所述最小生存时间值,则初步确定所述待处理报文为非攻击报文。

作为本公开实施例一种可选的实施方式,所述解析模块,还用于:

获取所述待处理报文的五元组信息;所述五元组信息包括:源IP地址、源端口、目的IP地址、目的端口以及传输层协议;

根据第一预设哈希算法计算所述五元组信息对应的第一哈希值;

根据所述路由信息库查询所述第一哈希值,获取源IP地址对应的实际地理位置。

作为本公开实施例一种可选的实施方式,所述确定模块,还包括:

计算单元,用于根据第二预设哈希算法计算所述实际地理位置的第二哈希值;

查询单元,用于根据所述路由信息库查询所述第二哈希值,获取第一生存时间值;所述第一生存时间值用于表示源IP地址与防御设备的公网地址之间的最小生存时间值;

获取单元,用于获取第二生存时间值,所述第二生存时间值用于表示所述防御设备的公网地址与目标服务器的私网IP地址之间的生存时间值;

比较单元,用于根据第三生存时间值与原始生存时间值的大小关系,确定所述待处理报文是否为攻击报文;所述第三生存时间值为所述第一生存时间值与所述第二生存时间值之和。

作为本公开实施例一种可选的实施方式,所述比较单元,具体用于:

若所述原始生存时间值小于所述第三生存时间值,则确定所述待处理报文为攻击报文;

若所述原始生存时间值大于所述第三生存时间值,则初步确定所述待处理报文为非攻击报文。

应用本公开实施例,本公开提供的报文检测装置,应用于防御设备,首先接收待处理报文,然后解析待处理报文获取源IP地址以及原始生存时间值,接着根据路由信息库获取最小生存时间值,再根据所述原始生存时间值与所述最小生存时间值的大小关系,确定所述待处理报文是否为攻击报文,若待处理报文是攻击报文,则将源IP加入黑名单;否则,对源IP进行源认证。由于路由信息库包括各地区的公网IP地址、各公网IP地址对应的实际地理位置以及各地区之间的最小生存时间值,所以能够根据路由信息库获取最小生存时间值;又由于根据所述原始生存时间值与所述最小生存时间值的大小关系,能够确定所述待处理报文是否为攻击报文,进而确定是否对源IP进行源认证,所以在网络拥塞的情况下,能够减少源认证时回复的报文数量,以减轻网络负载。

关于报文检测装置的具体限定可以参见上文中对于报文检测方法的限定,在此不再赘述。上述报文检测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于电子设备的处理器中,也可以软件形式存储于电子设备的处理器中,以便于处理器调用执行以上各个模块对应的操作。

本公开实施例还提供了一种电子设备,图5为本公开实施例提供的电子设备的结构示意图。如图5所示,本实施例提供的电子设备包括:存储器51和处理器52,存储器51用于存储计算机程序;处理器52用于调用计算机程序时执行上述方法实施例提供的报文检测方法中任一实施例所执行的步骤。所述电子设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,所述电子设备的处理器用于提供计算和控制能力。所述电子设备的存储器包括非易失性存储介质、内存储器。所述非易失性存储介质存储有操作系统和计算机程序。所述内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。所述计算机程序被处理器执行时以实现一种报文检测方法。所述电子设备的显示屏可以是液晶显示屏或者电子墨水显示屏,所述电子设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图5中示出的结构,仅仅是与本公开方案相关的部分结构的框图,并不构成对本公开方案所应用于其上的计算机设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,本公开提供的报文检测装置可以实现为一种计算机的形式,计算机程序可以在如图5所示的电子设备上运行。电子设备的存储器中可存储组成该电子设备的报文检测装置的各个程序模块,比如,图4中所示的接收模块410、解析模块420、获取模块430、确定模块440、黑名单模块450以及源认证模块460。各个程序模块构成的计算机程序使得处理器执行本说明书描述的本公开各个实施例的电子设备的报文检测方法中的步骤。

本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例提供的报文检测方法。

本领域技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。

处理器可以是中央判断单元(CentralProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(Field-ProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。存储器是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动存储介质。存储介质可以由任何方法或技术来实现信息存储,信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。根据本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

相关技术
  • 不良报文的检测方法及不良报文的检测装置
  • 不良报文的检测方法及不良报文的检测装置
技术分类

06120114697143