网络安全防护方法、设备及计算机可读存储介质技术

技术编号:19703203 阅读:21 留言:0更新日期:2018-12-08 14:27
本发明专利技术公开了一种网络安全防护方法,该方法包括:当nginx服务器接收到客户端发送的网络请求包时,从预先保存的WAF服务配置信息中获取一个可用的WAF服务地址;将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器,以使所述WAF服务器根据预置的WAF策略判断所述网络请求包是否为恶意的网络请求包;当接收到所述WAF服务器返回的所述网络请求包为恶意的网络请求包的判断结果时,拦截所述网络请求包。本发明专利技术还公开了一种网络安全防护设备和一种计算机可读存储介质。本发明专利技术能够提高基于nginx服务器的Web应用防护性能。

【技术实现步骤摘要】
网络安全防护方法、设备及计算机可读存储介质
本专利技术涉及网络安全
,尤其涉及网络安全防护方法、设备及计算机可读存储介质。
技术介绍
nginx(enginex)是一个高性能的HTTP和反向代理服务,用于实现客户端和业务后台之间的网络代理。当WEB(WorldWideWeb,万维网)应用越来越为丰富的同时,WEB服务器以其强大的计算能力、处理性能及蕴含的较高价值逐渐成为主要攻击目标,在此情况下,为防止业务后台受到来自于客户端请求的攻击,nginx服务器通常会提供Web应用防护功能。现有技术中,在nginx服务器上实现Web应用防护功能主要包括两种方式:1)将WAF(WebApplicationFirewall,Web应用防护系统)策略通过预编译的方式嵌入到nginx插件中。这种方式无法实现热更新,配置策略不够灵活,且迭代成本较高。2)将WAF策略存储于nginx服务器的共享内存中令nginx插件读取,然后nginx插件根据策略来决定是否拦截客户端请求。由于一台nginx服务器上可能运行多个nginx服务,而不同的nginx服务往往采用不同的WAF策略,因此这种读取共享内存的方式会导致单机上的多个nginx服务之间发生冲突,且策略的执行依赖于单机性能,无法横向扩展。基于上述问题,目前nginx服务器的Web应用防护性能还有待提高。
技术实现思路
本专利技术的主要目的在于提出一种网络安全防护方法、设备及计算机可读存储介质,旨在提高基于nginx服务器的Web应用防护性能。为实现上述目的,本专利技术提供一种网络安全防护方法,所述网络安全防护方法包括如下步骤:当nginx服务器接收到客户端发送的网络请求包时,从预先保存的WAF服务配置信息中获取一个可用的WAF服务地址;将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器,以使所述WAF服务器根据预置的WAF策略判断所述网络请求包是否为恶意的网络请求包;当接收到所述WAF服务器返回的所述网络请求包为恶意的网络请求包的判断结果时,拦截所述网络请求包。优选地,所述将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器的步骤包括:调用预设的网络接口,所述网络接口包括采用用户数据报协议UDP的UDP接口和采用传输控制协议TCP的TCP接口中的任意一种;通过所述网络接口将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器。优选地,所述通过所述网络接口将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器的步骤包括:判断所述网络请求包的大小是否超过预设大小;若是,则为未超出部分的包体分配预设的固定内存,为超出部分的包体分配动态内存,并将超出部分的包体通过调用异步发送TCP接口的方式发送给所述WAF服务地址对应的WAF服务器。优选地,所述通过所述网络接口将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器的步骤包括:当调用所述UDP接口将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器时,通过一个网络上下文对象记录所述网络请求包的请求状态;基于预置的多个内存池为所述网络上下文对象分配内存,其中每个内存池的容量大于或等于所述nginx服务器每秒能够处理的消息数TPS与所述WAF服务器的响应耗时之积。优选地,所述将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器的步骤包括:在调用所述WAF服务地址对应的WAF服务器的过程中,检测是否存在调用所述WAF服务器连续失败的次数达到预设次数;若是,则从所述WAF服务配置信息中删除所述WAF服务器对应的WAF服务地址,并将所述网络请求包发送给新的WAF服务地址对应的WAF服务器。优选地,所述当接收到所述WAF服务器返回的所述网络请求包为恶意的网络请求包的判断结果时,拦截所述网络请求包的步骤之后,还包括:定期从所述WAF服务器获取WAF服务的配置更新信息;根据获取到的所述配置更新信息对预先保存的WAF服务配置信息进行更新。优选地,所述当nginx服务器接收到客户端发送的网络请求包时,从预先保存的WAF服务配置信息中获取一个可用的WAF服务地址的步骤之后,还包括:当未获取到任何可用的WAF服务地址时,将所述网络请求包转发至对应的业务后台。优选地,所述网络安全防护方法还包括:记录从接收所述网络请求包到将所述网络请求包发送给所述WAF服务器过程中的异常信息,将记录的所述异常信息定期发送给所述WAF服务器。此外,为实现上述目的,本专利技术还提供一种网络安全防护设备,所述网络安全防护设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的网络安全防护程序,所述网络安全防护程序被所述处理器执行时实现如上所述的网络安全防护方法的步骤。此外,为实现上述目的,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有网络安全防护程序,所述网络安全防护程序被处理器执行时实现如上所述的网络安全防护方法的步骤。本专利技术当nginx服务器接收到客户端发送的网络请求包时,从预先保存的WAF服务配置信息中获取一个可用的WAF服务地址;将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器,以使所述WAF服务器根据预置的WAF策略判断所述网络请求包是否为恶意的网络请求包;当接收到所述WAF服务器返回的所述网络请求包为恶意的网络请求包的判断结果时,拦截所述网络请求包。这种方式通过将WAF策略从nginx服务器中分离出来作为单独的服务,使得在进行Web应用防护时不侵入nginx服务器,避免了对nginx服务器的影响,且可以灵活地变更WAF服务配置信息和WAF策略,从而提高了基于nginx服务器的Web应用防护性能。附图说明图1是本专利技术实施例方案涉及的硬件运行环境的设备结构示意图;图2为本专利技术网络安全防护方法第一实施例的流程示意图;图3为本专利技术实施例中网络安全防护的交互示意图。本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术实施例的主要解决方案是:当nginx服务器接收到客户端发送的网络请求包时,从预先保存的WAF服务配置信息中获取一个可用的WAF服务地址;将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器,以使所述WAF服务器根据预置的WAF策略判断所述网络请求包是否为恶意的网络请求包;当接收到所述WAF服务器返回的所述网络请求包为恶意的网络请求包的判断结果时,拦截所述网络请求包。现有技术中,在nginx服务器上实现Web应用防护功能主要包括两种方式:1)将WAF(WebApplicationFirewall,Web应用防护系统)策略通过预编译的方式嵌入到nginx插件中。这种方式无法实现热更新,配置策略不够灵活,且迭代成本较高。2)将WAF策略存储于nginx服务器的共享内存中令nginx插件读取,然后nginx插件根据策略来决定是否拦截客户端请求。这种方式会导致单机上的多个nginx服务之间发生冲突,且策略的执行依赖于单机性能,无法横向扩展。基于上述问题,目前nginx服务器的Web应用防护性能还有待提高。本专利技术通过将WA本文档来自技高网...

【技术保护点】
1.一种网络安全防护方法,其特征在于,所述网络安全防护方法包括如下步骤:当nginx服务器接收到客户端发送的网络请求包时,从预先保存的WAF服务配置信息中获取一个可用的WAF服务地址;将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器,以使所述WAF服务器根据预置的WAF策略判断所述网络请求包是否为恶意的网络请求包;当接收到所述WAF服务器返回的所述网络请求包为恶意的网络请求包的判断结果时,拦截所述网络请求包。

【技术特征摘要】
1.一种网络安全防护方法,其特征在于,所述网络安全防护方法包括如下步骤:当nginx服务器接收到客户端发送的网络请求包时,从预先保存的WAF服务配置信息中获取一个可用的WAF服务地址;将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器,以使所述WAF服务器根据预置的WAF策略判断所述网络请求包是否为恶意的网络请求包;当接收到所述WAF服务器返回的所述网络请求包为恶意的网络请求包的判断结果时,拦截所述网络请求包。2.如权利要求1所述的网络安全防护方法,其特征在于,所述将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器的步骤包括:调用预设的网络接口,所述网络接口包括采用用户数据报协议UDP的UDP接口和采用传输控制协议TCP的TCP接口中的任意一种;通过所述网络接口将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器。3.如权利要求2所述的网络安全防护方法,其特征在于,所述通过所述网络接口将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器的步骤包括:判断所述网络请求包的大小是否超过预设大小;若是,则为未超出部分的包体分配预设的固定内存,为超出部分的包体分配动态内存,并将超出部分的包体通过调用异步发送TCP接口的方式发送给所述WAF服务地址对应的WAF服务器。4.如权利要求2所述的网络安全防护方法,其特征在于,所述通过所述网络接口将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器的步骤包括:当调用所述UDP接口将所述网络请求包发送给获取到的所述WAF服务地址对应的WAF服务器时,通过一个网络上下文对象记录所述网络请求包的请求状态;基于预置的多个内存池为所述网络上下文对象分配内存,其中每个内存池的容量大于或等于所述nginx服务器每秒能够处理的消息数TPS与所述WAF服务器的响应耗时之...

【专利技术属性】
技术研发人员:林袖伦
申请(专利权)人:深圳前海微众银行股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1