一种web防御方法和系统的制作方法
【技术领域】
[0001] 本发明涉及互联网安全技术领域,特别是涉及一种WEB防御方法和系统。
【背景技术】
[0002] 随着互联网业务及W邸应用的迅猛发展,W邸技术的更新换代,W邸应用的攻击面 在不断的扩大,各种漏洞层出不穷,W邸应用的安全面临新的挑战。
[000引现有的W邸攻击大致可W分为两类;一种是利用W邸服务器的漏洞进行攻击,另一 种是利用网页自身的安全漏洞进行攻击。在现有的防御W邸攻击方式中,网站应用级入侵 防御系统(WAF,WebApplicationFirewall),会对HTTP的请求进行异常检测,拒绝不符合 HTTP标准的请求。然而由于其网络架构的特点,主要用在小流量的W邸应用。在面对大流 量的应用时,WAF的网络架构存在网络实体负载过大,性能难W胜任的缺陷。
【发明内容】
[0004] 本发明提供了一种WEB防御方法和系统,W解决现有的W邸防御方式在处理大流 量的W邸请求时不能及时处理的问题。
[0005] 本发明公开了一种WEB防御方法,在分布式系统中的每个W邸服务器上部署WEB 防御模块;独立于每个W邸服务器部署规则服务器,在所述规则服务器上维护规则表和危 险IP列表;其中,所述规则表配置有检测W邸请求是否为危险请求的规则,W及对触发规则 的W邸请求做出的响应;所述危险IP列表包括一定数量的触发规则次数达到预设阀值的 W邸请求的IP;该方法包括:
[0006] 所述W邸防御模块在启动时,从所述规则服务器中获取所述规则表和所述危险IP 列表;
[0007] 获取W邸服务器解析超文本传输协议http数据包得到的W邸请求;
[0008] 判断所述W邸请求的IP是否在所述危险IP列表中;
[0009] 如果在,拒绝为所述肥B请求建立连接;
[0010] 如果不在,则继续依据所述规则表判断所述W邸请求是否为危险请求;
[0011] 如果是,依据所述规则表对所述W邸请求做出响应,并将触发规则的所述W邸请求 的信息提交给所述规则服务器W更新所述危险IP列表中;
[0012] 如果不是,将所述W邸请求转交给所述W邸服务器的其他模块处理。
[0013] 可选的,所述W邸防御模块周期性地从所述规则服务器中获取所述规则表和所述 危险IP列表;W及,
[0014] 当所述规则表或所述危险IP列表有更新时,接收所述规则服务器下发的更新后 的规则表或危险IP列表。
[0015] 可选的,独立于所述规则服务器部署监控服务器,所述监控服务器用于向所述规 则服务器下发新的规则W更新所述规则表;该方法还包括:所述W邸防御模块接收所述监 控服务器的W邸查询请求,并根据所述W邸查询请求将自身的运行状态上报给所述监控服 务器。
[0016] 依据本发明的另一方面,提供了一种W邸防御方法,在分布式系统中的每个W邸服 务器上部署W邸防御模块;独立于每个W邸服务器部署规则服务器,在所述规则服务器上维 护规则表和危险IP列表;该方法包括:
[0017] 所述规则服务器接收检测W邸请求是否为危险请求的规则,W及对触发规则的 W邸请求做出的响应的配置信息;
[001引根据所述规则和响应的配置信息建立或更新所述规则表;
[0019] 接收所述WEB防御模块提交的触发所述规则表中规则的WEB请求的信息;
[0020] 依据触发规则的所述W邸请求的信息做哈希表,哈希表的键包括所述W邸请求的IP,对应的值为该IP的触发次数,其中,每触发规则一次,则触发次数加一;
[0021] 从所述哈希表中获取一定数量的触发次数达到预设阀值的W邸请求的IP建立或 更新所述危险IP列表;
[002引在所述WEB防御模块启动时,发送所述规则表和所述危险IP列表到所述WEB防御 模块,使得所述W邸防御模块根据所述规则表和所述危险IP列表对W邸请求进行防御。
[0023] 可选的,当所述规则表或所述危险IP列表有更新时,下发更新后的规则表或危险 IP列表到所述W邸防御模块;W及,根据所述W邸防御模块周期性发送的获取请求,将所述 规则表和所述危险IP列表发送到所述W邸防御模块。
[0024] 可选的,独立于所述规则服务器部署监控服务器,所述监控服务器用于向所述规 则服务器下发新的规则W更新所述规则表;该方法还包括:所述规则服务器接收所述监控 服务器的W邸查询请求,并根据所述W邸查询请求将所述规则表和所述危险IP列表上报给 所述监控服务器。
[00巧]依据本发明的另一方面,提供了一种WEB防御御系统,该系统包括:至少一个WEB防御模块、一个规则服务器,其中,所述W邸防御模块部署在分布式系统中的每个W邸服务 器上;所述规则服务器独立于每个W邸服务器部署,在所述规则服务器上维护规则表和危 险IP列表;
[0026] 所述W邸防御模块,用于在启动时从所述规则服务器中获取所述规则表和所述危 险IP列表;对W邸服务器解析http数据包得到的W邸请求,判断所述W邸请求的IP是否 在所述危险IP列表中;如果在,拒绝为所述W邸请求建立连接;如果不在,则继续依据所述 规则表判断所述W邸请求是否为危险请求;如果是,依据所述规则表对所述W邸请求做出响 应,并将触发规则的所述W邸请求的信息提交给所述规则服务器W更新所述危险IP列表; 如果不是,将所述W邸请求转交给所述W邸服务器的其他模块处理;
[0027] 所述规则服务器,用于接收检测W邸请求是否为危险请求的规则,W及对触发规 则的W邸请求做出的响应的配置信息,根据所述规则和响应的配置信息建立或更新所述规 则表;根据W邸防御模块提交的触发规则的W邸请求的信息做哈希表,哈希表的键包括所述 WEB请求的IP,对应的值为该IP的触发次数,其中,每触发规则一次,则触发次数加一;从所 述哈希表中获取一定数量的触发次数达到预设阀值的W邸请求的IP建立或更新所述危险 IP列表。
[0028] 可选的,所述W邸防御模块,还用于周期性地从所述规则服务器中获取所述规则 表和所述危险IP列表;和/或,当所述规则表或所述危险IP列表有更新时,接收所述规则 服务器下发的更新后的规则表或危险IP列表。
[0029] 可选的,所述规则服务器,还用于当所述规则表或所述危险IP列表有更新时,下 发更新后的规则表或危险IP列表到所述W邸防御模块;和/或,根据所述W邸防御模块周 期性发送的获取请求,将所述规则表和所述危险IP列表发送到所述W邸防御模块。
[0030] 可选的,该系统还包括;监控服务器,独立于所述规则服务器部署,用于向所述规 则服务器下发新的规则W更新所述规则表;W及,向所述W邸防御模块发送W邸查询请求查 询所述W邸防御模块的运行状态,向所述规则服务器发送W邸查询请求查询所述规则表和 所述危险IP列表。
[0031] 综上所述,本发明的技术方案,由于W邸防御模块单独部署在W邸服务器上,任何 一个若机不会影响到其他的服务器和业务,稳定易用并且便于扩充,克服了传统单一节点 部署的性能瓶颈和单点故障。此外,由于W邸防御模块是对W邸服务器解析ht化数据包得 到的W邸请求进行处理,能够充分利用W邸服务器的资源,解析效率和处理性能得W兼顾, 因此能够及时处理大流量的W邸请求。
【附图说明】
[003引图1是本发明实施例提供的一种WEB防御方法的流程图;
[003引图2是本发明实施例提供的另一种WEB防御方法的流程图;
[0034] 图3是本发明实施例提供的一种WEB防御系统的结构示意图。
【具体实施方式】
[0035]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方 式作进一步地详细描述。
[003引图1是本发明实施例提供的一种WEB防御方法的流程图。如图1所示,该方法包 括如下步骤。
[0037] 步骤101,在分布式系统中的每个W邸服务器上部署W邸防御