一种防止攻击的方法和防火墙的制作方法

文档序号:9828230阅读:201来源:国知局
一种防止攻击的方法和防火墙的制作方法
【技术领域】
[0001]本申请涉及网络技术领域,特别是涉及一种防止攻击的方法和防火墙。
【背景技术】
[0002]在防火墙内网侧接口上使能NAT (Network Address Translat1n,网络地址转换)hairpin功能后,若采用P2P方式进行报文转发,则内网的各内网设备首先向外网服务器注册自己的内网地址信息,以获取其对应的外网地址信息,然后内网设备之间通过使用彼此向外网服务器注册获得的外网地址信息进行互访。该方式下,外网侧的出方向地址转换必须配置为PAT (Port Address Translat1n,端口地址转换)转换方式,并使能EIM(Endpoint-1ndependent Mapping,端点独立映射)模式。
[0003]在E頂模式下,只要是来自相同源地址和源端口号的报文,不论其目的地址是否相同,通过PAT映射后,其源地址和源端口号都被转换为同一个外部地址和端口号,该映射关系(即内网地址信息和外网地址信息的映射关系)会被记录下来并生成一个E頂表项;并且防火墙允许所有外网设备和内网设备通过该转换后的地址和端口来访问源地址和源端口号对应的内网设备。也就是说,内网或者外网设备可以利用外网地址信息通过防火墙上的E頂表随意访问该外网地址信息转后的内网地址信息对应的内网设备,这样攻击者可以很容易通过EIM表对内网设备进行DDOS (Distributed Denial of service,分布式拒绝服务)攻击,使内网设备的安全得不到有效保障,同时还有可能会威胁到整个内网的安全。

【发明内容】

[0004]本申请提出一种防止攻击的方法,应用于NAT网络中的使能E頂模式的防火墙,所述方法包括:
[0005]接收报文;
[0006]在E頂表中查找外网地址和外网端口号与所述报文的目的地址和目的端口号匹配的E頂表项;
[0007]确定所述E頂表项中的内网地址和内网端口对应的内网设备是否已建立所述报文所属的会话;
[0008]若所述内网设备未建立所述报文所属的会话,则确定所述内网设备已建立的会话数量;
[0009]若所述会话数量大于所述E頂表项中预设的第一会话数量阈值,则丢弃所述报文。
[0010]—种防火墙,所述防火墙应用于NAT网络中,并且所述防火墙使能E頂模式,所述防火墙包括:
[0011 ] 接收模块,用于接收报文;
[0012]查找模块,用于在E頂表中查找外网地址和外网端口号与所述报文的目的地址和目的端口号匹配的E頂表项;
[0013]判断模块,用于确定所述E頂表项中的内网地址和内网端口对应的内网设备是否已建立所述报文所属的会话;
[0014]确定模块,若所述内网设备未建立所述报文所属的会话,则用于确定所述内网设备已建立的会话数量;
[0015]第一丢弃模块,若所述会话数量大于所述E頂表项中预设的第一会话数量阈值,则用于丢弃所述报文。
[0016]本申请中防火墙通过查找到E頂表中外网地址和外网端口号与接收的报文的目的地址和目的端口号匹配的E頂表项,确定所述E頂表项的内网地址和内网端口对应的内网设备是否已建立所述报文对应的会话,如果没有建立,判断当前所述内网设备已建立的会话数量是否超过所述E頂表项中预设的第一会话数量阈值,如果超过则丢弃,本申请通过控制所述内网设备建立会话的数量从而避免攻击者通过E頂表项对内网设备进行DDOS攻击。
【附图说明】
[0017]为了更清楚地说明本申请或现有技术中的技术方案,下面将对本申请或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]图1为本申请实施例中的一种防止攻击的方法流程图;
[0019]图2为本申请实施例中的另一种防止攻击的方法流程图;
[0020]图3为本申请实施例中一种防火墙结构示意图。
【具体实施方式】
[0021]下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的其他实施例,都属于本申请保护的范围。
[0022]本发明实施例提供一种防止攻击的方法,如图1所示的一种防止攻击的方法流程图,该方法应用于防火墙,该防火墙内网侧接口上使能NAT hairpin功能,外网侧的出方向地址转换方式配置为PAT转换方式,并使能E頂模式,采用P2P方式进行报文转发。
[0023]该方法包括以下步骤:
[0024]步骤101,接收报文。
[0025]在本例中,外网设备可以访问内网设备,内网设备也可以访问同一内网中的另一个内网设备。具体的,在外网设备访问内网设备,或内网设备访问同一内网中的另一个内网设备时,发送给目的内网设备的报文的目的地址和目的端口号使用目的内网设备的外网地址和外网端口号。
[0026]其中,外网设备获取内网设备的外网地址和外网端号的过程及内网设备获取同一内网其它内网设备的外网地址和外网端口的过程与现有技术相同,在此不再赘述。
[0027]步骤102,在E頂表中查找外网地址和外网端口号与所述报文的目的地址和目的端口号匹配的E頂表项。
[0028]防火墙维护E頂表,所述E頂表包括至少一个E頂表项,每个E頂表项用于记录内网地址、内网端口号,及该内网地址和内网端口号对应的外网地址、外网端口。
[0029]在本例中,外网设备向内网设备发送报文和内网设备向另一内网设备发送报文时,均需要使用目的内网设备的外网地址作为目的地址,外网端口号作为目的端口号,因此,防火墙接收到报文后查找E頂表中外网地址和外网端口号与报文的目的地址和目的端口号相同的E頂表项。
[0030]如果E頂表中不存在外网地址和外网端口号与报文的目的地址和目的端口号相同的E頂表项,则按照现有技术执行。
[0031 ] 步骤103,确定所述E頂表项中的内网地址和内网端口对应的内网设备是否已建立所述报文所属的会话。
[0032]在一个例子中,若防火墙的快转表中存在与所述报文匹配的快转表项,则确定内网设备已建立所述报文所属的会话;若防火墙的快转表中不存在与所述报文匹配的快转表项,则确定内网设备未建立所述报文所属的会话。
[0033]若所述内网设备未建立所述报文所属的会话,则进行步骤104,若已建立所述报文所属的会话,则执行步骤106。
[0034]步骤104,确定所述内网设备已建立的会话数量。
[0035]在一个例子中,防火墙可以根据维护的会话表确定出该内网设备已建立的会话数量。
[0036]在本例中,防火墙在建立E頂表项时,可在所述E頂表项中设置第一会话数量阈值,所述第一会话数量阈值用于控制与所述内网设备建立会话的数量,使所述内网设备建立的会话数量保持在一定范围内,从而使所述内网设备避免建立过多的会话,进而避免针对所述内网设备的恶意攻击。
[0037]如果所述会话数量大于所述E頂表项中预设的第一会话数量阈值,表明该内网设备可能会受到恶意攻击。如果所述会话数量不大于所述E頂表项中预设的第一会话数量阈值时,表明即使转发所述报文触发内网设备建立新的会话,该内网设备也不会受到恶意攻击。
[0038]因此,若所述会话数量大于所述E頂表项中预设的第一会话数量阈值,则执行步骤105 ;
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1