CN107547503B - 一种会话表项处理方法、装置、防火墙设备及存储介质 - Google Patents
一种会话表项处理方法、装置、防火墙设备及存储介质 Download PDFInfo
- Publication number
- CN107547503B CN107547503B CN201710439697.6A CN201710439697A CN107547503B CN 107547503 B CN107547503 B CN 107547503B CN 201710439697 A CN201710439697 A CN 201710439697A CN 107547503 B CN107547503 B CN 107547503B
- Authority
- CN
- China
- Prior art keywords
- session table
- address
- session
- entry
- source
- 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.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请实施例提供了一种会话表项处理方法及装置,应用于防火墙设备,方法包括:每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项;所述时间差值为当前时刻和与会话表项匹配的最后一个报文的接收时间的时间差值;如果存在所述第一会话表项,则判断所述第一会话表项对应的连接是否为非法连接;如果是非法连接,则检测与所述第一会话表项匹配的正向报文的个数是否大于第二阈值;如果不大于所述第二阈值,则删除所述第一会话表项。应用本申请实施例,能够快速释放非法连接对应的会话表项占用的内存,降低对业务处理效率的影响。
Description
技术领域
本申请涉及通信技术领域,特别是涉及一种会话表项处理方法、装置、防火墙设备及存储介质。
背景技术
Flood攻击是一种利用TCP(Transmission Control Protocol,传输控制协议)缺陷,发送大量伪造的TCP连接请求(如SYN(Synchronize,同步)报文、ACK(Acknowledgment,确认)报文),使得被攻击方资源耗尽的攻击方式。
如图1所示组网,包括客户端100、防火墙设备200、服务器300;客户端100在与服务器300进行通信前,需要与服务器300建立连接。具体的:1、客户端100基于TCP通过防火墙设备200向服务器300发送SYN报文;2、服务器300接收到SYN报文后,通过防火墙设备200向客户端100发送SYN/ACK报文;3、客户端100在接收到SYN/ACK报文后,通过防火墙设备200向服务器300发送ACK报文;4、服务器300接收到ACK报文后,客户端100与服务器300间连接建立完成。
其中,客户端100向服务器300发送的报文称为正向报文,如上述SYN报文、ACK报文;服务器300向客户端100发送的报文称为反向报文,如上述SYN/ACK报文。
实际应用中,防火墙设备200在接收到SYN报文或ACK报文后,除将接收到的报文转发给服务器建立连接外,还会建立包括接收到的报文的源IP(Internet Protocol,网络协议)地址的会话表项,该会话表项与上述连接对应,当接收到与会话表项匹配的报文时,通过上述连接将报文发送给客户端100或服务器300。基于该原理,当组网受到Flood攻击(如SYN Flood攻击,即同步泛滥攻击)时,防火墙设备200会接收到大量的SYN报文和/或ACK报文,建立大量非法连接对应的会话表项,这些非法连接对应的会话表项将占用防火墙设备200的大量内存,影响防火墙设备200对业务的处理效率。
发明内容
本申请实施例的目的在于提供会话表项处理方法、装置、防火墙设备及存储介质,以快速释放非法连接对应的会话表项占用的内存,降低对业务处理效率的影响。具体技术方案如下:
一方面,本申请实施例公开了一种会话表项处理方法,应用于防火墙设备,所述方法包括:
每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项;所述时间差值为当前时刻和与会话表项匹配的最后一个报文的接收时间的时间差值;
如果存在所述第一会话表项,则判断所述第一会话表项对应的连接是否为非法连接;
如果是非法连接,则检测与所述第一会话表项匹配的正向报文的个数是否大于第二阈值;
如果不大于所述第二阈值,则删除所述第一会话表项。
二方面,本申请实施例公开了一种会话表项处理装置,应用于防火墙设备,所述装置包括:
第一检测单元,用于每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项;所述时间差值为当前时刻和与会话表项匹配的最后一个报文的接收时间的时间差值;
判断单元,用于在所述第一检测单元的检测结果为是时,判断所述第一会话表项对应的连接是否为非法连接;
第二检测单元,用于在所述判断单元的判断结果为是时,检测与所述第一会话表项匹配的正向报文的个数是否大于第二阈值;
第一删除单元,用于在所述第二检测单元的检测结果为否时删除所述第一会话表项。
三方面,本申请实施例公开了一种防火墙设备,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口、存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序,实现权利要求上述的会话表项处理方法步骤。
四方面,本申请实施例公开了一种可读存储介质,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述的会话表项处理方法步骤。
本申请实施例中,连接建立完成需要消耗的时长小于等于第一阈值;防火墙设备每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项,若检测到第一会话表项,则确定第一会话表项对应的连接建立完成,此时若确定第一会话表项对应的连接为非法连接且与第一会话表项匹配的正向报文的个数不大于第二阈值,也就是,确定第一会话表项对应的攻击为非持续攻击,删除第一会话表项。可见,本申请实施例中,防火墙设备定时检测会话表项,能够及时地发现并删除对应非法连接的会话表项,进而实现快速释放非法连接对应的会话表项占用的内存,降低了对业务处理效率的影响。当然,实施本申请的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一种组网示意图;
图2为本申请实施例提供的会话表项处理方法的第一种流程示意图;
图3为本申请实施例提供的会话表项处理方法的第二种流程示意图;
图4为本申请实施例提供的会话表项处理方法的第三种流程示意图;
图5为本申请实施例提供的会话表项处理方法的第四种流程示意图;
图6为本申请实施例提供的会话表项处理装置的第一种结构示意图;
图7为本申请实施例提供的防火墙设备的一种结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面对本申请实施例中出现的词语进行解释。
会话表项:用于指导报文的转发,会话表项中包括:源IP地址、源端口、目的IP地址、目的端口、处理过的报文的个数等用于指导报文的转发信息;防火墙设备中会话表项包括的源IP地址为正向报文的源IP地址;处理过的报文为与该会话表项匹配的报文;
正向报文:客户端向服务器发送的报文,如客户端向服务器发送的SYN报文、ACK报文;
反向报文:服务器向客户端发送的报文,如服务器向客户端发送的SYN/ACK报文。
目前,当组网受到Flood攻击,攻击者会通过防火墙设备向服务器发送大量的SYN报文和/或ACK报文,建立非法连接,占用服务器资源。
另外,防火墙设备在接收到攻击者发送的大量的SYN报文和/或ACK报文时,会建立大量非法连接对应的会话表项,这些非法连接对应的会话表项将占用防火墙设备的大量内存,影响防火墙设备对业务的处理效率。
为了快速地释放非法连接对应的会话表项占用的内存,降低对业务处理效率的影响,本申请实施例提供了一种应用于防火墙设备的会话表项处理方法、装置、防火墙设备及存储介质。
参考图2,图2为本申请实施例提供的会话表项处理方法的第一种流程示意图,应用于防火墙设备,该方法包括:
S201:每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项;如果存在第一会话表项,执行S202;否则,结束本次处理;
其中,时间差值为当前时刻和与会话表项匹配的最后一个报文的接收时间的时间差值。这里,与会话表项匹配的报文即为防火墙设备处理过的报文。
例如:防火墙设备中存储有会话表项1和会话表项2,与会话表项1匹配的最后一个报文X1的接收时间为10:00:00,与会话表项2匹配的最后一个报文X2的接收时间为10:00:03;若防火墙设备检测到当前时间为10:00:06,则可以确定会话表项1对应的时间差值为10:00:06-10:00:00=6s,10:00:06-10:00:03=3s;若第一阈值为5s,6s>5s,3s<5s,则确定第一会话表项为会话表项1。
需要说明的是,第一阈值大于等于连接建立完成需要消耗的时长,若当前时刻和与会话表项匹配的最后一个报文的接收时间的时间差值超过了第一阈值,可以理解为该会话表项对应的连接已建立连接完成;若当前时刻和与会话表项匹配的最后一个报文的接收时间的时间差值未超过第一阈值,可以理解为该会话表项对应的连接未建立连接完成,此时可以不对该会话表项进行处理。
在本申请的一个实施例中,防火墙设备中可以预设设置一个以第一时长为时间间隔的轮询定时器,这样,在启动该轮询定时器后,防火墙设备就可以依据该轮询定时器,每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项。
S202:判断第一会话表项对应的连接是否为非法连接;如果是非法连接,执行S203;否则,结束本次处理。
在本申请的一个实施例中,防火墙设备可以通过检测与第一会话表项匹配的报文的种类确定该第一会话表项对应的连接是否为非法连接。
具体地,检测与第一会话表项匹配的报文是否仅有正向报文;若仅有正向报文,则可以确定第一会话表项对应的连接为非法连接。例如,若检测到与第一会话表项匹配的报文仅有SYN报文,则确定第一会话表项对应的连接为非法连接。再例如,若检测到与第一会话表项匹配的报文仅有ACK报文,则确定第一会话表项对应的连接为非法连接。
另外,检测与第一会话表项匹配的报文是否仅有SYN报文和SYN/ACK报文;若仅有SYN报文和SYN/ACK报文,则可以确定第一会话表项对应的连接为非法连接。
除上述确定非法连接的情况外,可以认为第一会话表项对应的连接为合法连接。
需要说明的是,防火墙设备接收到多个与同一会话表项匹配的SYN报文,该防火墙设备只会接收到一个与该会话表项匹配的SYN/ACK报文。这种情况下,上述检测与第一会话表项匹配的报文是否仅有SYN报文和SYN/ACK报文,即检测与第一会话表项匹配的报文是否仅有SYN报文和SYN/ACK报文且SYN/ACK报文为1个;如果是,则可以确定第一会话表项对应的连接为非法连接。
在本申请的一个实施例中,为了便于确定防火墙设备处理过的报文的种类,也就是便于确定与会话表项匹配的报文的种类,可以为会话表项添加3个bit位,其中,一个bit位用于标识与会话表项匹配过SYN报文,一个bit位用于标识与会话表项匹配过ACK报,一个bit位用于标识与会话表项匹配过SYN/ACK报文。另外,若防火墙设备处理了其他种类的报文,例如处理了用于结束连接的FIN(finish,结束)报文,则将添加的这3个bit位都清0。
S203:检测与第一会话表项匹配的正向报文的个数是否大于第二阈值;如果不大于第二阈值,则执行S204;
在确定第一会话表项对应的连接为非法连接的情况下,与第一会话表项匹配的正向报文即为攻击者发送的攻击报文,若检测到与第一会话表项匹配的正向报文的个数不大于第二阈值,则可以确定本次攻击(即第一会话表项对应的攻击)为非持续攻击,执行S204;否则,确定第一会话表项对应的攻击为持续攻击。
在本申请的一个实施例中,第二阈值可以为1。此时,若与第一会话表项匹配的正向报文的个数为1,则确定第一会话表项对应的攻击为非持续攻击;否则,确定第一会话表项对应的攻击为持续攻击。
S204:删除第一会话表项。
这样,在第一会话表项对应的攻击为非持续攻击时删除第一会话表项,防火墙设备就释放了第一会话表项占用的内存,降低对业务处理效率的影响。
在本申请的一个实施例中,若会话表项对应的攻击为持续攻击,在将会话表项删除后,防火墙设备在接收到与该会话表项匹配的正向报文(即攻击报文)后,会重新建立会话表项,并将该正向报文发送给服务器处理,这将占用服务器的资源,并影响防火墙设备的转发性能。
这种情况上,为了避免占用服务器的资源,影响防火墙设备的转发性能,参考图3所示的会话表项处理方法的第二种流程示意图,基于图2,若S203检测与第一会话表项匹配的正向报文的个数大于第二阈值,也就是,确定第一会话表项对应的攻击为持续攻击时,该方法还可以包括:
S205:为第一会话表项配置丢弃标识。
其中,该丢弃标识用于指示防火墙设备丢弃与第一会话表项匹配的报文。
这样,防火墙设备若接收到与第一会话表项匹配的正向报文(即攻击报文),就可以依据丢弃标识,丢弃该正向报文,防止了将第一会话表项删除后,防火墙设备将与第一会话表项匹配的正向报文发送给服务器处理,有效地的减少了占用的服务器资源,同时有效地减少了对防火墙设备的转发性能的影响。
在本申请的一个实施例中,为了便于确定当前攻击的情况,参考图4所示的会话表项处理方法的第三种流程示意图,基于图2,在S204删除第一会话表项之后,该方法还可以包括:
S206:检测可疑列表包括的IP地址中是否存在第一会话表项包括的源IP地址;如果不存在,执行S207;如果存在,执行S208;
其中,可疑列表用于存储产生攻击的IP地址,以便于用户通过可疑列表获知当前产生攻击的IP地址。
S207:将源IP地址添加至可疑列表中,为可疑列表中该源IP地址配置老化时长,执行S209;
将源IP地址添加至可疑列表,以便于用户查看当前产生攻击的IP地址。另外,在老化时长超时前,若存在与第一会话表项包括的该源IP地址相同的会话表项的删除,重置可疑列表中该源IP地址的老化时长,继续执行S209。
S208:重置可疑列表中该源IP地址的老化时长,执行S209;
在老化时长超时前,若存在与第一会话表项包括的该源IP地址相同的会话表项的删除,再次重置可疑列表中该源IP地址的老化时长,继续执行S209。
S209:当老化时长超时后,从可疑列表中删除源IP地址。
若老化时长超时,说明在老化时长内防火墙设备未删除与第一会话表项包括的该源IP地址相同的会话表项,此时可以认为第一会话表项对应的攻击为由网络异常引起的或攻击已停止,从可疑列表中删除源IP地址,节约防火墙设备的内存。
在本申请的另一个实施例中,参考图5所示的会话表项处理方法的第四种流程示意图,基于图2,在S204删除第一会话表项之后,该方法还可以包括:
S210:检测可疑列表包括的IP地址中是否存在第一会话表项包括的源IP地址;如果不存在,执行S211;如果存在,执行S212;
其中,可疑列表用于存储产生攻击的IP地址和当前时刻前的第二时长内引用次数的对应关系。这里,IP地址的引用次数即为攻击者以该IP地址发起连接的次数。具体的,若该IP地址为产生攻击的IP地址,攻击者以该IP地址发起连接的次数即为:攻击者以该IP地址发起攻击的次数。
S211:将源IP地址添加至可疑列表中,将可疑列表中源IP地址的引用次数设置为1;
这里,将可疑列表中源IP地址的引用次数设置为1,也就是,当前时刻前的第二时长内,攻击者以该源IP地址发起1次连接,即该源IP地址产生一次攻击。
S212:将可疑列表中源IP地址的引用次数加1;
这里,将可疑列表中源IP地址的引用次数加1,即当前时刻前的第二时长内,该源IP地址产生攻击次数加1。
例如,第二时长为100s,若10:00:00时防火墙设备将IP1加入可疑列表中,此时,IP1的9:58:20-10:00:00这100s内的引用次数为1;在10:00:10时防火墙设备删除了一个源IP地址为IP1的会话表项,可疑列表中IP1的引用次数加1,此时,IP1的9:58:30-10:00:10这100s内的引用次数为2;若在10:02:00时防火墙设备删除了一个源IP地址为IP1的会话表项,可疑列表中IP1的引用次数加1,此时,IP1的10:00:20-10:02:00这100s内的引用次数为1。
这种情况下,该方法还可以包括:
S213:每隔第三时长检测可疑列表中是否存在引用次数大于第三阈值的第一IP地址;如果存在第一IP地址,执行S214;否则,结束本次处理;
这里,检测的引用次数为当前时刻前的第二时长内引用次数。
在本申请的一个实施例中,防火墙设备中可以预设设置一个以第三时长为时间间隔的轮询定时器,这样,在启动该轮询定时器后,防火墙设备就可以依据该轮询定时器,每隔第三时长检测可疑列表中是否存在引用次数大于第三阈值的第一IP地址。
S214:输出包括第一IP地址的告警日志。
其中,告警日志用于提示第一IP地址为短时间内多次产生攻击的IP地址,以便于用户及时对网络中存在的问题进行检测,降低网络风险。
需要说明的是,图2-5所示实施例可以结合使用,本申请实施例对此不进行限定。
以图1所示组网为例,本申请提供的实施例可适用于以下场景:
场景1:客户端100为攻击者,客户端100伪造大量不同的源IP地址的ACK报文通过防火墙设备200发送给服务器300;这种情况下,服务器300接收到ACK报文后忙于查询ACK报文对应的连接,但找不到对应的连接,因此不会向客户端100反馈报文;
此时,防火墙设备200会产生大量由一个ACK报文(正向报文)触发建立的会话表项;防火墙设备200通过周期性的检测与会话表项匹配的报文及个数,可以确定这类会话表项对应的连接为非法连接,对应的攻击为非持续性攻击,进而删除这类会话表项,释放占用的内存。
场景2:客户端100为攻击者,客户端100伪造少量不同的源IP地址的ACK报文通过防火墙设备200发送给服务器300;这种情况下,服务器300接收到ACK报文后忙于查询ACK报文对应的连接,但找不到对应的连接,因此不会向客户端100反馈报文;
此时,防火墙设备200会建立少量的会话表项,每一会话表项对应多个ACK报文,防火墙设备200通过周期性的检测与会话表项匹配的报文及个数,可以确定这类会话表项对应的连接为非法连接,对应的攻击为持续性攻击,进而为这类会话表项配置丢弃标识,使防火墙设备200丢弃与这类会话表项匹配的报文,避免报文发送到服务器300,占用服务器300的资源,影响防火墙设备200的转发性能。
场景3:客户端100为攻击者,客户端100伪造大量不同的源IP地址的SYN报文通过防火墙设备200发送给服务器300;同场景1,区别在于,服务器300接收到SYN报文,与客户端100建立连接,向服务器反馈SYN/ACK报文;
此时,防火墙设备200会建立大量的会话表项,每一会话表项对应一个SYN报文和一个SYN/ACK报文;防火墙设备200通过周期性的检测与会话表项匹配的报文及个数,可以确定这类会话表项对应的连接为非法连接,对应的攻击为非持续性攻击,进而删除这类会话表项,释放占用的内存。
场景4:客户端100为攻击者,客户端100伪造少量不同的源IP地址的SYN报文通过防火墙设备200发送给服务器300;同场景3,区别在于,防火墙设备200会建立少量的会话表项,每一会话表项对应多个SYN报文和一个SYN/ACK报文;
此时,防火墙设备200通过周期性的检测与会话表项匹配的报文及个数,可以确定这类会话表项对应的连接为非法连接,对应的攻击为持续性攻击,进而为这类会话表项配置丢弃标识,使防火墙设备200丢弃与这类会话表项匹配的报文。
场景5:客户端100为攻击者,客户端100伪造大量不同的源IP地址的SYN报文通过防火墙设备200发送给不存在的服务器;
此时,防火墙设备200会产生大量由一个SYN报文触发建立的会话表项;防火墙设备200通过周期性的检测与会话表项匹配的报文及个数,可以确定这类会话表项对应的连接为非法连接,对应的攻击为非持续性攻击,进而删除这类会话表项,释放占用的内存。
应用上述各个实施例,连接建立完成需要消耗的时长小于等于第一阈值;防火墙设备每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项,若检测到第一会话表项,则确定第一会话表项对应的连接建立完成,此时若确定第一会话表项对应的连接为非法连接且与第一会话表项匹配的正向报文的个数不大于第二阈值,也就是,确定第一会话表项对应的攻击为非持续攻击,删除第一会话表项。可见,本申请实施例中,防火墙设备定时检测会话表项,能够及时地发现并删除对应非法连接的会话表项,进而实现快速释放非法连接对应的会话表项占用的内存,降低了对业务处理效率的影响。
与方法实施例对应,本申请实施例还提供了一种会话表项处理装置。
参考图6,图6为本申请实施例提供的会话表项处理装置的第一种结构示意图,应用于防火墙设备,该装置包括:
第一检测单元601,用于每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项;时间差值为当前时刻和与会话表项匹配的最后一个报文的接收时间的时间差值;
判断单元602,用于在第一检测单元601的检测结果为是时,判断第一会话表项对应的连接是否为非法连接;
第二检测单元603,用于在判断单元602的判断结果为是时,检测与第一会话表项匹配的正向报文的个数是否大于第二阈值;
第一删除单元604,用于在第二检测单元603的检测结果为否时删除第一会话表项。
在本申请的一个实施例中,判断单元602,具体可以用于:
检测与第一会话表项匹配的报文是否仅有正向报文;或检测与第一会话表项匹配的报文是否仅有同步SYN报文和SYN/确认ACK报文;
如果检测到仅有正向报文或检测到仅有SYN报文和SYN/ACK报文,则确定第一会话表项对应的连接为非法连接。
在本申请的一个实施例中,会话表项处理装置还可以包括:
第三检测单元(图6中未示出),用于在删除第一会话表项之后,检测可疑列表包括的网络协议IP地址中是否存在第一会话表项包括的源IP地址;可疑列表用于存储产生攻击的IP地址,并用于提示产生攻击的IP地址;
第一处理单元(图6中未示出),用于在第三检测单元的检测结果为否时,将源IP地址添加至可疑列表中,为可疑列表中源IP地址配置老化时长;还用于在第三检测单元的检测结果为是时,重置可疑列表中源IP地址的老化时长;
第二删除单元(图6中未示出),用于当老化时长超时后,从可疑列表中删除源IP地址。
在本申请的一个实施例中,会话表项处理装置还可以包括:
第四检测单元(图6中未示出),用于在删除第一会话表项之后,检测可疑列表包括的IP地址中是否存在第一会话表项包括的源IP地址;可疑列表用于存储产生攻击的IP地址和当前时刻前的第二时长内引用次数的对应关系;
第二处理单元(图6中未示出),用于在第四检测单元的检测结果为否时,将源IP地址添加至可疑列表中,将可疑列表中源IP地址的引用次数设置为1;在第四检测单元的检测结果为是时,将可疑列表中源IP地址的引用次数加1;
第五检测单元(图6中未示出),用于每隔第三时长检测可疑列表中是否存在引用次数大于第三阈值的第一IP地址;
输出单元(图6中未示出),用于在第五检测单元的检测结果为是时,输出包括第一IP地址的告警日志;告警日志用于提示第一IP地址为短时间内多次产生攻击的IP地址。
在本申请的一个实施例中,会话表项处理装置还可以包括:
配置单元(图6中未示出),用于若检测到与第一会话表项匹配的正向报文的个数大于第二阈值,则为第一会话表项配置丢弃标识;丢弃标识用于指示防火墙设备丢弃与第一会话表项匹配的报文。
应用上述各个实施例,连接建立完成需要消耗的时长小于等于第一阈值;防火墙设备每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项,若检测到第一会话表项,则确定第一会话表项对应的连接建立完成,此时若确定第一会话表项对应的连接为非法连接且与第一会话表项匹配的正向报文的个数不大于第二阈值,也就是,确定第一会话表项对应的攻击为非持续攻击,删除第一会话表项。可见,本申请实施例中,防火墙设备定时检测会话表项,能够及时地发现并删除对应非法连接的会话表项,进而实现快速释放非法连接对应的会话表项占用的内存,降低了对业务处理效率的影响。
本申请实施例还提供了一种防火墙设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701、通信接口702、存储器703通过通信总线704完成相互间的通信;
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现如下步骤:
每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项;时间差值为当前时刻和与会话表项匹配的最后一个报文的接收时间的时间差值;
如果存在第一会话表项,则判断第一会话表项对应的连接是否为非法连接;
如果是非法连接,则检测与第一会话表项匹配的正向报文的个数是否大于第二阈值;
如果不大于第二阈值,则删除第一会话表项。
在本申请的一个实施例中,处理器701具体可以用于:
检测与第一会话表项匹配的报文是否仅有正向报文;或检测与第一会话表项匹配的报文是否仅有SYN报文和SYN/ACK报文;
如果检测到仅有正向报文或检测到仅有SYN报文和SYN/ACK报文,则确定第一会话表项对应的连接为非法连接。
在本申请的一个实施例中,处理器701还可以用于:
在删除第一会话表项之后,检测可疑列表包括的IP地址中是否存在第一会话表项包括的源IP地址;可疑列表用于存储产生攻击的IP地址,并用于提示产生攻击的IP地址;
如果不存在,则将源IP地址添加至可疑列表中,为可疑列表中源IP地址配置老化时长;如果存在,则重置可疑列表中源IP地址的老化时长;
当老化时长超时后,从可疑列表中删除源IP地址。
在本申请的一个实施例中,处理器701还可以用于:
在删除第一会话表项之后,检测可疑列表包括的IP地址中是否存在第一会话表项包括的源IP地址;可疑列表用于存储产生攻击的IP地址和当前时刻前的第二时长内引用次数的对应关系;
如果不存在,则将源IP地址添加至可疑列表中,将可疑列表中源IP地址的引用次数设置为1;如果存在,则将可疑列表中源IP地址的引用次数加1;
这种情况下,处理器701还可以用于:
每隔第三时长检测可疑列表中是否存在引用次数大于第三阈值的第一IP地址;
如果存在第一IP地址,则输出包括第一IP地址的告警日志;告警日志用于提示第一IP地址为短时间内多次产生攻击的IP地址。
在本申请的一个实施例中,处理器701还可以用于:
若检测到与第一会话表项匹配的正向报文的个数大于第二阈值,则为第一会话表项配置丢弃标识;丢弃标识用于指示防火墙设备丢弃与第一会话表项匹配的报文。
应用上述各个实施例,连接建立完成需要消耗的时长小于等于第一阈值;防火墙设备每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项,若检测到第一会话表项,则确定第一会话表项对应的连接建立完成,此时若确定第一会话表项对应的连接为非法连接且与第一会话表项匹配的正向报文的个数不大于第二阈值,也就是,确定第一会话表项对应的攻击为非持续攻击,删除第一会话表项。可见,本申请实施例中,防火墙设备定时检测会话表项,能够及时地发现并删除对应非法连接的会话表项,进而实现快速释放非法连接对应的会话表项占用的内存,降低了对业务处理效率的影响。
上述防火墙设备提到的通信总线可以是PCI(Peripheral ComponentInterconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述防火墙设备与其他设备之间的通信。
存储器可以包括RAM(Random Access Memory,随机存取存储器),也可以包括NVM(Non-Volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processing,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例还提供了一种可读存储介质,可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现如下步骤:
每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项;时间差值为当前时刻和与会话表项匹配的最后一个报文的接收时间的时间差值;
如果存在第一会话表项,则判断第一会话表项对应的连接是否为非法连接;
如果是非法连接,则检测与第一会话表项匹配的正向报文的个数是否大于第二阈值;
如果不大于第二阈值,则删除第一会话表项。
在本申请的一个实施例中,判断所述第一会话表项对应的连接是否为非法连接的步骤,包括:
检测与第一会话表项匹配的报文是否仅有正向报文;或检测与第一会话表项匹配的报文是否仅有SYN报文和SYN/ACK报文;
如果检测到仅有正向报文或检测到仅有SYN报文和SYN/ACK报文,则确定第一会话表项对应的连接为非法连接。
在本申请的一个实施例中,计算机程序被处理器执行时还可以实现如下步骤:
在删除第一会话表项之后,检测可疑列表包括的IP地址中是否存在第一会话表项包括的源IP地址;可疑列表用于存储产生攻击的IP地址,并用于提示产生攻击的IP地址;
如果不存在,则将源IP地址添加至可疑列表中,为可疑列表中源IP地址配置老化时长;如果存在,则重置可疑列表中源IP地址的老化时长;
当老化时长超时后,从可疑列表中删除源IP地址。
在本申请的一个实施例中,计算机程序被处理器执行时还可以实现如下步骤:
在删除第一会话表项之后,检测可疑列表包括的IP地址中是否存在第一会话表项包括的源IP地址;可疑列表用于存储产生攻击的IP地址和当前时刻前的第二时长内引用次数的对应关系;
如果不存在,则将源IP地址添加至可疑列表中,将可疑列表中源IP地址的引用次数设置为1;如果存在,则将可疑列表中源IP地址的引用次数加1;
每隔第三时长检测可疑列表中是否存在引用次数大于第三阈值的第一IP地址;
如果存在第一IP地址,则输出包括第一IP地址的告警日志;告警日志用于提示第一IP地址为短时间内多次产生攻击的IP地址。
在本申请的一个实施例中计算机程序被处理器执行时还可以实现如下步骤:
若检测到与第一会话表项匹配的正向报文的个数大于第二阈值,则为第一会话表项配置丢弃标识;丢弃标识用于指示防火墙设备丢弃与第一会话表项匹配的报文。
应用上述各个实施例,连接建立完成需要消耗的时长小于等于第一阈值;防火墙设备每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项,若检测到第一会话表项,则确定第一会话表项对应的连接建立完成,此时若确定第一会话表项对应的连接为非法连接且与第一会话表项匹配的正向报文的个数不大于第二阈值,也就是,确定第一会话表项对应的攻击为非持续攻击,删除第一会话表项。可见,本申请实施例中,防火墙设备定时检测会话表项,能够及时地发现并删除对应非法连接的会话表项,进而实现快速释放非法连接对应的会话表项占用的内存,降低了对业务处理效率的影响。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、防火墙设备、可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
Claims (12)
1.一种会话表项处理方法,其特征在于,应用于防火墙设备,所述方法包括:
每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项;所述时间差值为当前时刻和与会话表项匹配的最后一个报文的接收时间的时间差值,所述第一阈值大于等于连接建立完成需要消耗的时长;
如果存在所述第一会话表项,则判断所述第一会话表项对应的连接是否为非法连接;
如果是非法连接,则检测与所述第一会话表项匹配的正向报文的个数是否大于第二阈值;
如果不大于所述第二阈值,则删除所述第一会话表项。
2.根据权利要求1所述的方法,其特征在于,所述判断所述第一会话表项对应的连接是否为非法连接的步骤,包括:
检测与所述第一会话表项匹配的报文是否仅有正向报文;或检测与所述第一会话表项匹配的报文是否仅有同步SYN报文和SYN/确认ACK报文;
如果检测到仅有正向报文或检测到仅有SYN报文和SYN/ACK报文,则确定所述第一会话表项对应的连接为非法连接。
3.根据权利要求1所述的方法,其特征在于,在删除所述第一会话表项之后,所述方法还包括:
检测可疑列表包括的网络协议IP地址中是否存在所述第一会话表项包括的源IP地址;所述可疑列表用于存储产生攻击的IP地址,并用于提示产生攻击的IP地址;
如果不存在,则将所述源IP地址添加至所述可疑列表中,为所述可疑列表中所述源IP地址配置老化时长;如果存在,则重置所述可疑列表中所述源IP地址的所述老化时长;
当所述老化时长超时后,从所述可疑列表中删除所述源IP地址。
4.根据权利要求1所述的方法,其特征在于,在删除所述第一会话表项之后,所述方法还包括:
检测可疑列表包括的IP地址中是否存在所述第一会话表项包括的源IP地址;所述可疑列表用于存储产生攻击的IP地址和当前时刻前的第二时长内引用次数的对应关系;
如果不存在,则将所述源IP地址添加至所述可疑列表中,将所述可疑列表中所述源IP地址的引用次数设置为1;如果存在,则将所述可疑列表中所述源IP地址的引用次数加1;
所述方法还包括:
每隔第三时长检测所述可疑列表中是否存在引用次数大于第三阈值的第一IP地址;
如果存在第一IP地址,则输出包括所述第一IP地址的告警日志;所述告警日志用于提示所述第一IP地址为短时间内多次产生攻击的IP地址。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若检测到与所述第一会话表项匹配的正向报文的个数大于所述第二阈值,则为所述第一会话表项配置丢弃标识;所述丢弃标识用于指示所述防火墙设备丢弃与所述第一会话表项匹配的报文。
6.一种会话表项处理装置,其特征在于,应用于防火墙设备,所述装置包括:
第一检测单元,用于每隔第一时长检测会话表项中是否存在时间差值的绝对值超过第一阈值的第一会话表项;所述时间差值为当前时刻和与会话表项匹配的最后一个报文的接收时间的时间差值,所述第一阈值大于等于连接建立完成需要消耗的时长;
判断单元,用于在所述第一检测单元的检测结果为是时,判断所述第一会话表项对应的连接是否为非法连接;
第二检测单元,用于在所述判断单元的判断结果为是时,检测与所述第一会话表项匹配的正向报文的个数是否大于第二阈值;
第一删除单元,用于在所述第二检测单元的检测结果为否时删除所述第一会话表项。
7.根据权利要求6所述的装置,其特征在于,所述判断单元,具体用于:
检测与所述第一会话表项匹配的报文是否仅有正向报文;或检测与所述第一会话表项匹配的报文是否仅有同步SYN报文和SYN/确认ACK报文;
如果检测到仅有正向报文或检测到仅有SYN报文和SYN/ACK报文,则确定所述第一会话表项对应的连接为非法连接。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第三检测单元,用于在删除所述第一会话表项之后,检测可疑列表包括的网络协议IP地址中是否存在所述第一会话表项包括的源IP地址;所述可疑列表用于存储产生攻击的IP地址,并用于提示产生攻击的IP地址;
第一处理单元,用于在所述第三检测单元的检测结果为否时,将所述源IP地址添加至所述可疑列表中,为所述可疑列表中所述源IP地址配置老化时长;还用于在所述第三检测单元的检测结果为是时,重置所述可疑列表中所述源IP地址的所述老化时长;
第二删除单元,用于当所述老化时长超时后,从所述可疑列表中删除所述源IP地址。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第四检测单元,用于在删除所述第一会话表项之后,检测可疑列表包括的IP地址中是否存在所述第一会话表项包括的源IP地址;所述可疑列表用于存储产生攻击的IP地址和当前时刻前的第二时长内引用次数的对应关系;
第二处理单元,用于在所述第四检测单元的检测结果为否时,将所述源IP地址添加至所述可疑列表中,将所述可疑列表中所述源IP地址的引用次数设置为1;在所述第四检测单元的检测结果为是时,将所述可疑列表中所述源IP地址的引用次数加1;
第五检测单元,用于每隔第三时长检测所述可疑列表中是否存在引用次数大于第三阈值的第一IP地址;
输出单元,用于在所述第五检测单元的检测结果为是时,输出包括所述第一IP地址的告警日志;所述告警日志用于提示所述第一IP地址为短时间内多次产生攻击的IP地址。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
配置单元,用于若检测到与所述第一会话表项匹配的正向报文的个数大于所述第二阈值,则为所述第一会话表项配置丢弃标识;所述丢弃标识用于指示所述防火墙设备丢弃与所述第一会话表项匹配的报文。
11.一种防火墙设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口、存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序,实现权利要求1-5任一所述的方法步骤。
12.一种可读存储介质,其特征在于,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710439697.6A CN107547503B (zh) | 2017-06-12 | 2017-06-12 | 一种会话表项处理方法、装置、防火墙设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710439697.6A CN107547503B (zh) | 2017-06-12 | 2017-06-12 | 一种会话表项处理方法、装置、防火墙设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107547503A CN107547503A (zh) | 2018-01-05 |
CN107547503B true CN107547503B (zh) | 2020-12-25 |
Family
ID=60970148
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710439697.6A Active CN107547503B (zh) | 2017-06-12 | 2017-06-12 | 一种会话表项处理方法、装置、防火墙设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107547503B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108650334B (zh) * | 2018-08-02 | 2021-03-30 | 东软集团股份有限公司 | 一种会话失效的设置方法及装置 |
CN110392034B (zh) * | 2018-09-28 | 2020-10-13 | 新华三信息安全技术有限公司 | 一种报文处理方法及装置 |
CN109617920B (zh) * | 2019-01-23 | 2021-07-20 | 新华三信息安全技术有限公司 | 一种报文处理方法、装置、路由器及防火墙设备 |
CN109922144B (zh) | 2019-02-28 | 2022-09-16 | 北京百度网讯科技有限公司 | 用于处理数据的方法和装置 |
CN111225019B (zh) * | 2019-10-29 | 2022-06-28 | ***股份有限公司 | 会话控制处理方法、装置、设备及介质 |
CN113783857B (zh) * | 2021-08-31 | 2023-11-07 | 新华三信息安全技术有限公司 | 一种防攻击方法、装置、设备及机器可读存储介质 |
CN113965347B (zh) * | 2021-09-09 | 2024-03-15 | 山石网科通信技术股份有限公司 | 防火墙的数据处理方法及装置 |
CN118120336A (zh) * | 2021-10-27 | 2024-05-31 | Oppo广东移动通信有限公司 | 块确认会话删除方法、装置、多链路设备及存储介质 |
CN114024887B (zh) * | 2021-11-10 | 2024-06-14 | 北京天融信网络安全技术有限公司 | 转发表项的处理方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101170517A (zh) * | 2007-12-06 | 2008-04-30 | 杭州华三通信技术有限公司 | 对控制会话表进行老化的方法及装置 |
CN101296071A (zh) * | 2007-04-25 | 2008-10-29 | 北京天融信网络安全技术有限公司 | 防火墙芯片内部连接表的老化方法 |
JP4475156B2 (ja) * | 2005-03-29 | 2010-06-09 | 日本電気株式会社 | ネットワーク処理装置、ネットワーク処理方法及びネットワーク処理プログラム |
US8160080B1 (en) * | 2006-05-08 | 2012-04-17 | Marvell Israel (M.I.S.L.) Ltd. | Implementation of reliable synchronization of distributed databases |
CN102882894A (zh) * | 2012-10-30 | 2013-01-16 | 杭州迪普科技有限公司 | 一种识别攻击的方法及装置 |
-
2017
- 2017-06-12 CN CN201710439697.6A patent/CN107547503B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4475156B2 (ja) * | 2005-03-29 | 2010-06-09 | 日本電気株式会社 | ネットワーク処理装置、ネットワーク処理方法及びネットワーク処理プログラム |
US8160080B1 (en) * | 2006-05-08 | 2012-04-17 | Marvell Israel (M.I.S.L.) Ltd. | Implementation of reliable synchronization of distributed databases |
CN101296071A (zh) * | 2007-04-25 | 2008-10-29 | 北京天融信网络安全技术有限公司 | 防火墙芯片内部连接表的老化方法 |
CN101170517A (zh) * | 2007-12-06 | 2008-04-30 | 杭州华三通信技术有限公司 | 对控制会话表进行老化的方法及装置 |
CN102882894A (zh) * | 2012-10-30 | 2013-01-16 | 杭州迪普科技有限公司 | 一种识别攻击的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107547503A (zh) | 2018-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107547503B (zh) | 一种会话表项处理方法、装置、防火墙设备及存储介质 | |
CN109831461B (zh) | 一种分布式拒绝服务DDoS攻击防御方法及装置 | |
WO2017088326A1 (zh) | Tcp连接的处理方法、装置及*** | |
CN107710680B (zh) | 网络攻击防御策略发送、网络攻击防御的方法和装置 | |
US7266754B2 (en) | Detecting network denial of service attacks | |
CN109194680B (zh) | 一种网络攻击识别方法、装置及设备 | |
CN110519265B (zh) | 一种防御攻击的方法及装置 | |
US10505952B2 (en) | Attack detection device, attack detection method, and attack detection program | |
CN110198293B (zh) | 服务器的攻击防护方法、装置、存储介质和电子装置 | |
CN107547507B (zh) | 一种防攻击方法、装置、路由器设备及机器可读存储介质 | |
CN107395632B (zh) | SYN Flood防护方法、装置、清洗设备及介质 | |
CN108965263B (zh) | 网络攻击防御方法及装置 | |
CN109040140B (zh) | 一种慢速攻击检测方法及装置 | |
CN112055956B (zh) | 用于网络安全性的装置和方法 | |
US11695858B2 (en) | Packet fragmentation control | |
US8301712B1 (en) | System and method for protecting mail servers from mail flood attacks | |
CA2911989C (en) | Method, system and apparatus for dectecting instant message spam | |
CN111431871A (zh) | Tcp半透明代理的处理方法和装置 | |
CN107454065B (zh) | 一种UDP Flood攻击的防护方法及装置 | |
CN111756713B (zh) | 网络攻击识别方法、装置、计算机设备及介质 | |
CN108737344B (zh) | 一种网络攻击防护方法和装置 | |
CN110661763B (zh) | 一种DDoS反射攻击防御方法、装置及其设备 | |
CN106506270B (zh) | 一种ping报文处理方法及装置 | |
CN108471427B (zh) | 一种防御攻击的方法及装置 | |
CN101771575B (zh) | 一种处理ip分片报文的方法、装置及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |