Web防火墙的局部代理方法

文档序号:9276375阅读:338来源:国知局
Web防火墙的局部代理方法
【技术领域】
[0001]本发明属于web代理技术领域,具体涉及一种WEB防火墙的局部代理方法。
【背景技术】
[0002]随着Web应用的丰富,各类攻击工具不断的普遍和强大,互联网上的安全隐患越来越多。随着客户核心业务系统对网络依赖程度的增加,Web应用攻击事件数量将会持续增长,损失严重程度也会剧增。因此,政府、企业等各类组织都必须有所对策以保护其投资、利润和服务。
[0003]在一般情况下,使用网络浏览器直接去连接其他Internet站点取得网络信息时,是直接联系到目的站点服务器,然后由目的站点服务器把信息传送回来。代理服务器是介于客户端和Web服务器之间的另一台服务器,有了它之后,浏览器不是直接到Web服务器去取回网页而是向代理服务器发出请求,信号会先送到代理服务器,由代理服务器来取回浏览器所需要的信息并传送给你的浏览器。
[0004]而在web应用防火墙中,web代理引擎是web防护的核心,当并发访问量较大时,可能会导致web应用防火墙内存急剧上升,同时使代理引擎的负载非常重,进而导致代理性能急剧下降,严重影响网站的正常访问,因此对于大并发访问的支持,是目前web防火墙中的关键。

【发明内容】

[0005]有鉴于此,本发明的主要目的在于提供一种WEB防火墙的局部代理方法。
[0006]为达到上述目的,本发明的技术方案是这样实现的:
本发明实施例提供一种WEB防火墙的局部代理方法,该方法为:客户端与WEB防火墙的代理引擎建立第一次连接,所述WEB防火墙的代理引擎与服务器端建立第二次连接,所述WEB防火墙的代理引擎将两次连接的四元组信息发送到WEB防火墙的协议栈;所述WEB防火墙的协议栈对接收到第一连接的请求数据包进行记录、代理引擎进行规则检测,当所述请求数据包为非攻击包,则web引擎与服务器端建立连接,进行数据包发送;所述WEB防火墙的协议栈确定服务器端回传的数据包为第二次连接的回应数据包后,对所述回应数据包进行修改校验后直接发送到客户端。
[0007]上述方案中,所述所述四元组信息包括源端IP地址、源端口号、目的IP地址、目的端口号。
[0008]上述方案中,当所述代理引擎对收到的请求数据包进行规则检测,若所述请求数据包为攻击包,则直接发送回应数据包至客户端,并与客户端断开连接。
[0009]上述方案中,当所述请求数据包中的目的IP地址、目的端口与受保护站点不一致时,即该站点不受web防火墙的保护,则不将其上传至代理引擎,由协议栈直接进行转发。
[0010]上述方案中,所述所述WEB防火墙的协议栈确定服务器端回传的数据包为第二次连接的回应数据包后,对所述回应数据包进行修改校验后直接发送到客户端,具体为:当数据包的源IP地址、源端口与受保护站点一致时,即数据包为第二次连接的回应数据,此时查找第一次连接信息结构体中的源MAC、源IP、源端口、入口网口信息,对此数据包的目的MAC、目的IP、目的端口、出口网口信息及TCP序列号进行修改,并进行IP头部、TCP头部进行校验计算,最终直接发送至客户端。
[0011]与现有技术相比,本发明的有益效果:
本发明能够有效提高大并发访问下代理引擎的性能,有效降低代理引擎的负载,在web防火墙的应用中,在提高web防火墙的吞吐性能的同时不影响web防火墙现有的防护功能。
【附图说明】
[0012]图1为本发明实施例提供一种WEB防火墙的局部代理方法的流程图。
【具体实施方式】
[0013]下面结合附图和【具体实施方式】对本发明进行详细说明。
[0014]本发明实施例提供一种WEB防火墙的局部代理方法,如图1所示,该方法通过以下步骤实现:
步骤101:客户端与WEB防火墙的代理引擎建立第一次连接,所述WEB防火墙的代理引擎与服务器端建立第二次连接,所述WEB防火墙的代理引擎将两次连接的四元组信息发送到WEB防火墙的协议栈。
[0015]具体的,所述代理引擎与客户端和服务器端之间需要建立两次tcp连接,当两次连接建立成功后将能够两次连接对应的四元组信息通知给协议栈,以便协议栈能够认知到两次连接的对应关系。
[0016]一条TCP连接是由发送方套接字和接收方套接字来唯一标识的,即TCP连接用四元组信息来唯一标识,所述四元组信息包括源端IP地址、源端口号、目的IP地址、目的端口号。
[0017]步骤102:所述WEB防火墙的协议栈对接收到第一连接的请求数据包进行记录、代理引擎进行规则检测。
[0018]具体的,在协议栈收包入口处,根据两次连接的对应关系,判断数据包是由第一次连接请求的数据,当请求数据包中的目的IP地址和目的端口和受保护站点一致时,即请求数据包为第一次连接的请求数据,这时,记录其TCP序列号、TCP确认序列号和TCP窗口大小等,将数据包的TCP序列号、TCP确认序列号、TCP窗口大小、源MAC、源IP、源端口、入口网口信息存入第一次连接的信息结构体中,进而将数据包传至代理引擎处理。
[0019]当代理引擎收到数据包后会对数据包进行规则检测,若此数据包为非攻击包,则web引擎与服务器端建立连接,进行数据包发送,否则直接发送回应数据包至客户端,并与客户端断开连接。
[0020]当请求数据包中的目的IP地址、目的端口与受保护站点不一致时,即该站点不受web防火墙的保护,则不将其上传至web防火墙引擎,由协议栈直接进行转发。
[0021]步骤103:所述WEB防火墙的协议栈确定服务器端回传的数据包为第二次连接的回应数据包后,对所述回应数据包进行修改校验后直接发送到客户端。
[0022]具体的,当数据包的源IP地址、源端口与受保护站点一致时,即数据包为第二次连接的回应数据,此时查找第一次连接信息结构体中的源MAC、源IP、源端口、入口网口信息,对此数据包的目的MAC、目的IP、目的端口、出口网口信息及TCP序列号等进行修改,并进行IP头部、TCP头部进行校验计算,最终直接发送至客户端。
[0023]以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
【主权项】
1.一种WEB防火墙的局部代理方法,其特征在于,该方法为:客户端与WEB防火墙的代理引擎建立第一次连接,所述WEB防火墙的代理引擎与服务器端建立第二次连接,所述WEB防火墙的代理引擎将两次连接的四元组信息发送到WEB防火墙的协议栈;所述WEB防火墙的协议栈对接收到第一连接的请求数据包进行记录、代理引擎进行规则检测,当所述请求数据包为非攻击包,则web引擎与服务器端建立连接,进行数据包发送;所述WEB防火墙的协议栈确定服务器端回传的数据包为第二次连接的回应数据包后,对所述回应数据包进行修改校验后直接发送到客户端。2.根据权利要求1所述的WEB防火墙的局部代理方法,其特征在于:所述所述四元组信息包括源端IP地址、源端口号、目的IP地址、目的端口号。3.根据权利要求1或2所述的WEB防火墙的局部代理方法,其特征在于: 当所述代理引擎对收到的请求数据包进行规则检测,若所述请求数据包为攻击包,则直接发送回应数据包至客户端,并与客户端断开连接。4.根据权利要求3所述的WEB防火墙的局部代理方法,其特征在于:当所述请求数据包中的目的IP地址、目的端口与受保护站点不一致时,即该站点不受web防火墙的保护,则不将其上传至代理引擎,由协议栈直接进行转发。5.根据权利要求4所述的WEB防火墙的局部代理方法,其特征在于,所述所述WEB防火墙的协议栈确定服务器端回传的数据包为第二次连接的回应数据包后,对所述回应数据包进行修改校验后直接发送到客户端,具体为:当数据包的源IP地址、源端口与受保护站点一致时,即数据包为第二次连接的回应数据,此时查找第一次连接信息结构体中的源MAC、源IP、源端口、入口网口信息,对此数据包的目的MAC、目的IP、目的端口、出口网口信息及TCP序列号进行修改,并进行IP头部、TCP头部进行校验计算,最终直接发送至客户端。
【专利摘要】本发明公开了一种WEB防火墙的局部代理方法,客户端与WEB防火墙的代理引擎建立第一次连接,所述WEB防火墙的代理引擎与服务器端建立第二次连接,所述WEB防火墙的代理引擎将两次连接的四元组信息发送到WEB防火墙的协议栈;所述WEB防火墙的协议栈对接收到第一连接的请求数据包进行记录、代理引擎进行规则检测,当所述请求数据包为非攻击包,则web引擎与服务器端建立连接,进行数据包发送;所述WEB防火墙的协议栈确定服务器端回传的数据包为第二次连接的回应数据包后,对所述回应数据包进行修改校验后直接发送到客户端。本发明能够有效提高大并发访问下代理引擎的性能,有效降低代理引擎的负载。
【IPC分类】H04L29/06
【公开号】CN104994084
【申请号】CN201510347588
【发明人】焦小涛, 陈晓兵, 何建锋, 陈宏伟
【申请人】西安交大捷普网络科技有限公司
【公开日】2015年10月21日
【申请日】2015年6月23日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1