Web网站的请求处理方法及装置、计算机可读存储介质与流程

    专利2022-07-07  152


    本申请涉及网站安全技术领域,尤其涉及一种web网站的请求处理方法及装置、计算机可读存储介质。



    背景技术:

    现有web网站业务系统的日志存于本地,防火墙系统根据安全运维人员提前设定好的拦截策略对web网站攻击进行拦截。现有的防火墙技术基于单一安全规则的威胁拦截分析手段进行检测,降低了防火墙系统对web网站攻击威胁判断的准确性,提高威胁分析判断的误报率和漏报率,大大提高了网站的风险性。

    如何降低web网站被攻击的风险,提高web网站的安全性,是本申请所要解决的技术问题。



    技术实现要素:

    本申请实施例的目的是提供一种web网站的请求处理方法及装置、计算机可读存储介质,用以解决现有攻击请求检测准确性低的问题。

    为了解决上述技术问题,本说明书是这样实现的:

    第一方面,提供了一种web网站的请求处理方法,包括:

    获取目标请求对应的web网站的业务日志数据;

    根据第一安全规则对所述业务日志数据进行检测,得到判定所述业务日志数据中所述目标请求的统一资源定位符url为攻击url的第一置信度;获取所述web网站的安全策略规则信息;

    根据所述安全策略规则信息中的第二安全规则对所述业务日志数据进行检测,得到判定所述url为攻击url的第二置信度;

    根据所述第一置信度和所述第二置信度确定所述目标请求对应的是否为攻击请求的威胁检测结果,并基于所述威胁检测结果执行对所述目标请求的拦截操作。

    可选的,该方法还包括:

    获取预定异常检测模型;

    将所述url输入到所述预定异常检测模型进行检测,得到判定所述url为攻击url的第三置信度;

    其中,根据所述第一置信度和所述第二置信度确定所述目标请求对应的是否为攻击请求的威胁检测结果,包括:

    根据所述第一置信度和所述第二置信度,以及结合所述第三置信度确定所述目标请求对应的威胁检测结果。

    可选的,该方法还包括:

    获取所述业务日志数据中所述目标请求的ip地址;

    根据预定威胁情报数据库对所述业务日志数据进行检测,得到判定所述ip地址为威胁ip地址的第四置信度;

    其中,根据所述第一置信度和所述第二置信度确定所述目标请求对应的是否为攻击请求的威胁检测结果,包括:

    根据所述第一置信度和所述第二置信度,以及结合所述第三置信度和所述第四置信度确定所述目标请求对应的威胁检测结果。

    可选的,所述第一置信度为根据所述第一安全规则,对判定所述url为攻击url时进行威胁打分对应的第一分数;

    所述第二置信度为根据所述第二安全规则,对判定所述url为攻击url时进行威胁打分对应的第二分数;

    所述第三置信度为根据所述预定异常检测模型,对判定所述url为攻击url时进行威胁打分对应的第三分数;

    所述第四置信度为根据所述预定威胁情报数据库,对判定所述ip地址为威胁ip地址时进行威胁打分对应的第四分数,

    其中,根据所述第一置信度和所述第二置信度,以及结合所述第三置信度和所述第四置信度确定所述目标请求对应的威胁检测结果,包括:

    对所述第一分数、所述第二分数、所述第三分数和所述第四分数求和得到累计威胁分数;

    在所述累计威胁分数大于预定分数阈值时,确定所述目标请求为攻击请求。

    可选的,所述第一安全规则为语义分析规则,所述根据第一安全规则对所述业务日志数据进行检测,包括:对所述url进行语义分析,提取出所述url对应的威胁语义;将所述威胁语义与威胁语义分析库包括的多条威胁语义规则进行比对分析,以判定所述url是否为攻击url;所述第二安全规则包括多条威胁检测正则规则,每条威胁检测正则规则根据对应的威胁程度具有不同的打分权重,

    其中,根据判定所述url为攻击url的威胁检测正则规则对应的打分权重,确定所述第二分数。

    可选的,在获取目标请求对应的web网站的业务日志数据之前,包括:

    从预定队列读取从所述web网站的服务集群节点获取的业务日志信息;

    将所述web网站服务集群节点的业务日志信息转换为json格式的业务日志数据,所述业务日志数据包括访问所述web网站的请求的ip地址和url。

    可选的,在获取所述web网站的安全策略规则信息之前,包括:

    创建http服务的应用程序接口api;

    读取安全策略规则系统通过所述api接口推送的所述安全策略规则信息;

    将所述安全策略规则信息转换为json格式的安全策略规则日志数据,所述安全策略规则日志数据包括所述第二安全规则。

    可选的,在根据所述威胁检测结果确定所述目标请求为攻击请求时,还包括:将所述目标请求的url作为训练样本,对所述预定异常检测模型进行训练更新。

    第二方面,提供了一种web网站的请求处理装置,包括处理器和与所述存储器电连接的处理器,所述存储器存储有可在所述处理器运行的计算机程序,该计算机程序被该处理器执行时实现如第一方面所述的web网站的请求处理方法的步骤。

    第三方面,提供了一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现如第一方面所述的web网站的请求处理方法的步骤。

    在本申请实施例中,通过获取目标请求对应的web网站的业务日志数据;根据第一安全规则对所述业务日志数据进行检测,得到判定所述业务日志数据中所述目标请求的统一资源定位符url为攻击url的第一置信度;获取所述web网站的安全策略规则信息;根据所述安全策略规则信息中的第二安全规则对所述业务日志数据进行检测,得到判定所述url为攻击url的第二置信度;根据所述第一置信度和所述第二置信度确定所述目标请求对应的威胁检测结果,以基于所述威胁检测结果执行对所述目标请求的拦截操作,可以提高攻击请求检测的准确性,大大降低web网站被攻击的风险,提高网站安全性。

    附图说明

    此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

    图1是本申请实施例的web网站的请求处理方法的流程示意图。

    图2是本申请实施例的web网站的请求处理方法的应用场景示意图。

    图3是本申请实施例的web网站的请求处理方法示例图。

    图4是本申请实施例的web网站的请求处理装置的结构示意图。

    具体实施方式

    下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请中附图编号仅用于区分方案中的各个步骤,不用于限定各个步骤的执行顺序,具体执行顺序以说明书中描述为准。

    为了解决现有技术中存在的问题,本申请实施例提供一种web网站的请求处理方法,图1是本申请实施例的web网站的请求处理方法的流程示意图。如图1所示,包括以下步骤:

    步骤102,获取目标请求对应的web网站的业务日志数据。

    web网站的业务日志数据是通过收集web集群所产生的web业务日志信息,并进行相应处理后得到。

    可选的,在获取目标请求对应的web网站的业务日志数据之前,包括:从预定队列读取从所述web网站的服务集群节点获取的业务日志信息;将所述web网站服务集群节点的业务日志信息转换为json格式的业务日志数据,所述业务日志数据包括访问所述web网站的请求的ip地址和统一资源定位符(url)。

    上述收集web集群所产生的web业务日志信息为网站web业务日志信息聚合,网站web服务日志信息聚合是将web集群所产生的业务日志信息,转换成json文本形式的业务日志数据进行保存。

    具体地,可以参考图2实施例的web网站的请求处理方法的应用场景。通过web威胁日志采集系统30创建一个kafka消费处理,用于读取web服务集群的各个节点的web业务系统22通过kafkcat软件发送到kafka队列28上的web网站的业务日志信息,web威胁日志采集系统30再从kafka队列28去获取对应的业务日志信息,并将业务日志信息按照json格式的键key与值value定义进行格式化转换得到业务日志数据。然后,对业务日志数据进行字段的拆分,并保存到数据库中,例如图2所示的日志采集数据库集群中。可选的,从web业务系统对应得到的web业务日志数据的表格式如下:

    【访问者ip】【时间戳】【url】

    其中,访问者ip为访问请求的ip地址,时间戳为当前请求访问web网站时的时间,url为访问请求的url。

    上述实施例中,将web业务日志信息通过kafakcat软件,发送到kakfa服务,并由web威胁日志采集系统30消费各个web服务节点通过kafkacat推送到kafka队列里的数据。web威胁日志采集系统30创建kafka处理程序,读取kafka队列数据,并进行文本字段拆分,以及保存json格式的web业务日志数据到elasticsearch日志采集数据库集群32的表中。保存的表格式如下:

    【索引名】【访问者ip】【时间戳】【url】

    其中,【索引名】是指elasticsearch日志采集数据库集群的表索引名。

    本申请通过创建kafka服务,实现低依赖度的数据收集代理客户端服务,从而不需要在被收集服务器上安装依赖性高的大型传统数据收集代理服务程序或第三方插件,减少日志数据收集过程中对系统服务稳定性的影响。

    步骤104,根据第一安全规则对所述业务日志数据进行检测,得到判定所述业务日志数据中所述目标请求的url为攻击url请求的第一置信度。

    如上文所述,步骤102获取到目标请求对应的业务日志数据。业务日志数据中包括目标请求的ip地址、url和访问时间戳。

    在步骤104中,可以根据预定的安全规则,即第一安全规则对该目标请求的业务日志数据进行检测,以初步判定该目标请求是否为威胁请求。具体地,第一安全规则可以是语义分析规则,对目标请求对应的业务日志数据中的url进行语义判定。通过分析url的语义提取出url对应的威胁语义,确定url中含有的脚本数据,并将提取出的威胁语义与威胁语义分析库包括的多条威胁语义规则进行比对分析,来确定该目标请求的url中是否恶意脚本,例如,如果url中含有结构化查询语言(structuredquerylanguage,sql)注入与跨站脚本(crosssitescript,xss)攻击。则确定url中存在恶意脚本。

    但是,仅通过第一安全规则进行攻击请求判定,可能存在一定的错判概率,因此在本申请中,若确定url中存在恶意脚本,则初步判定该目标请求为威胁请求,并确定判定该目标请求的url为攻击url的第一置信度。

    具体地,所述第一置信度为根据第一安全规则,对判定目标请求的url为攻击url时进行的威胁打分,这里第一置信度对应的威胁打分为第一分数。例如,目标请求的url命中第一安全规则对应的威胁判定规则就计1分。

    从而,在步骤104中,通过采用语义威胁分析库的语义分析规则,对目标请求的业务日志数据中的url进行攻击威胁判定,可以确定该目标请求的url为攻击url的第一置信度。

    步骤106,获取所述web网站的安全策略规则信息。

    web网站的安全策略规则信息是web网站安全运维人员发布的网站安全策略规则,例如通过图2所示的安全策略规则系统26来发布或变更。安全运维人员通过安全策略规则系统26创建编辑安全检测策略规则,例如威胁检测正则规则,并对安全策略规则系统26进行维护。web网站的安全策略规则信息,可以由图2所示的web威胁日志采集系统30从安全策略规则系统26进行采集和获取。

    可选的,在获取所述web网站的安全策略规则信息之前,包括:创建http服务的应用程序接口(api);读取安全策略规则系统通过所述api接口推送的所述安全策略规则信息;将所述安全策略规则信息转换为json格式的安全策略规则日志数据,所述安全策略规则日志数据包括第二安全规则。

    上述步骤可以由web威胁日志采集系统30实施,可以创建一个rest(representationalstatetransfer,表述性状态传递)api的http服务接口,当安全运维人员通过安全策略规则系统26发布或变更安全策略,安全策略规则系统26就会向这个api接口推送消息,并由web威胁日志采集系统30处理服务,对安全策略规则系统26发送过来的安全策略规则信息进行json格式转换,得到对应的安全策略规则日志数据。并对日志数据进行字段的划分,表格式如下:

    【开始有效时间戳】【结束有效时间戳】【正则规则】

    其中,正则规则即第二安全规则,用于目标请求的威胁攻击分析。开始有效时间戳和结束有效时间戳对应设置了该条正则规则对应的有效时间段,也就是不在该时间段内,该调正则规则无效。运维人员通过时间戳来管理正则规则的有效期,定期向web威胁日志采集系统30发布推送规则信息。web威胁日志采集系统30创建的restapi接口用于接收不同时间安全策略规则系统26发布过来的安全策略规则信息。再进行字段划分,将对应的安全策略规则日志数据保存到elasticsearch日志采集数据库集群32的库表中。

    【索引名】【开始有效时间戳】【结束有效时间戳】【正则规则】

    其中,【索引名】是指elasticsearch日志采集数据库集群的表索引名。

    步骤108,根据所述安全策略规则信息中的第二安全规则对所述业务日志数据进行检测,得到判定所述url为攻击url请求的第二置信度。

    第二置信度为根据所述第二安全规则,对判定所述url为攻击url请求时进行威胁打分对应的第二分数,第二安全规则为上述用于威胁检测或分析的正则规则,正则规则由安全运维人员进行创建和编辑。第二安全规则包括多条威胁检测正则规则,通过将目标请求的url与正则规则进行比对,可以初步判定该url为攻击url的置信度。即,在根据判定目标请求的url为攻击url时,进行威胁打分得到的第二分数。

    在一个实施例中,第二安全规则包括的多条威胁检测正则规则根据对应的威胁程度具有不同的打分权重,也就是说,在请求的url符合某条正则规则时,则可以较高概率地确定该url为攻击url,而符合另一条正则规则,则可能确定其为攻击url的概率较低。因此,对应较高概率的正则规则具有较高的打分权重,对应较低概率的正则规则则具有较低的打分权重。其中,根据判定所述url为攻击url请求的威胁检测正则规则对应的打分权重,确定所述第二分数。

    例如,目标请求的url命中第二安全规则的对应的威胁判定规则,计分范围在2-3分之间,其中最高概率规则的打分权重的可以计3分,最低概率规则的打分权重的可以计2分,中间概率规则基于各自的概率大小,打分权重可以在大于2分和小于3分之间。

    步骤110,根据所述第一置信度和所述第二置信度确定所述目标请求对应的是否为攻击请求的威胁评估结果,并基于所述威胁评估结果执行对所述目标请求的拦截操作。

    如上文所述,在步骤104和108中,通过对目标请求进行检测,可以得到分别对应第一安全规则的第一置信度和对应第二安全规则的第二置信度。上述步骤104和步骤108的检测步骤可以各自独立并行,也可以顺序进行,本申请不局限于此。

    在步骤110中,根据第一置信度和第二置信度确定目标请求对应的是否为攻击请求的威胁评估结果,可以是对第一置信度对应的第一分数和第二置信度对应的第二分数求和得到累计威胁分数。并且,在所述累计威胁分数大于预定分数阈值时,确定目标请求为攻击请求,即判定目标请求对应的网站web业务日志数据中的【url】是攻击型url。执行对所述目标请求的拦截操作,可以是报警并通知防火墙,对目标请求进行拦截、限速、屏蔽等阻止攻击的操作。

    第一分数和第二分数参与到例如图2所述的web攻击威胁分析34的威胁分析算法计数,得到累计威胁分数。

    至此,通过目标请求的url进行语义攻击威胁的第一安全规则检测分析和正则规则攻击威胁的第二安全规则检测分析进行关联威胁分析,每一步威胁攻击判定成立就基于置信度对应的分数,对威胁计数累加一定分数,最后经过以上威胁检测分析判定后,威胁计数大于指定分数,则判定该目标请求的ur是攻击型url,进而执行阻止攻击的操作。

    由此,本申请通过获取不同类型的web网站的业务日志数据和安全策略规则信息,并对目标请求进行关联威胁检测分析,可以提高威胁分析判定的准确性,进而降低web网站被攻击的风险性。

    为了进一步提高对目标请求威胁检测的准确性,可选的,本申请web网站的请求处理方法还包括:获取预定异常检测模型;将所述url输入到所述预定异常检测模型进行检测,得到判定所述url为攻击url请求的第三置信度;其中,根据所述第一置信度和所述第二置信度确定所述目标请求对应的是否为攻击请求的威胁检测结果,包括:根据所述第一置信度和所述第二置信度、以及结合所述第三置信度确定所述目标请求对应的威胁评估结果。

    预定异常检测模型是利用异常访问的攻击请求作为样本,进行长短期记忆网络(longshort-termmemory,lstm)的人工神经网络建模训练得到的。例如,首先获取训练样本集和初始异常检测模型,所述训练样本集包括多个攻击请求的url数据样本和正常请求的url数据样本;利用所述训练样本集训练所述初始异常检测模型,得到所述预定异常检测模型。

    此外,还可以利用正常请求的url数据样本集合进行lstm人工神经网络建模,训练得到正常检测模型。然后,将正常测模型和异常检测模型入库保存。

    在步骤110确定目标请求为攻击请求之后,将该目标请求进一步输入到训练好的预定异常检测模型进行判定分析,得出是该请求是攻击请求的比率。模型计算的结果是一个趋近于数字1的比例数。在异常检测模型里,计算结果越接近1表示,表示该目标请求大概率是攻击请求。

    第三置信度是根据预定异常检测模型,对判定所述url为攻击url时进行威胁打分对应的第三分数,也就是在目标请求的url输出到预定异常检测模型后,对应的计算结果接近1时,认为该目标请求为攻击请求,则对应第三置信度的打分例如计为1。

    此时,可以结合第一安全规则的第一分数、第二安全规则的第二分数和异常检测模型的第三分数对应的累计分数,与预定分数阈值进行比对,从而判定当前的url是否是攻击行为。

    本申请通过借助模型训练的智能算法,动态的通过机器学习自动创建安全检测策略,降低对攻击拦截的误报率和漏报率,并降低安全运维人力成本。

    为了自动完善或提高异常检测模型的准确率,可选的,在根据所述威胁检测结果确定所述目标请求为攻击请求时,还包括:将所述目标请求的url作为训练样本,对所述预定异常检测模型进行训练更新。

    随着新产生的外部攻击,新的攻击url也随之增多,在攻击url条目数量达到预定数量后,本申请可以利用新的攻击请求的url样本数据迭代旧的不重复的样本数据,将确定为攻击请求的请求作为威胁样本数据进行入库保存,并根据新的威胁样本数据和之前入库保存的威胁模型,重新生成更新的异常检测模型,让异常检测模型随着攻击请求数据的累积,准确率自动完善提高。通过检测分析,划分历史日志中数据中的正常请求、异常请求数据,让检测系统获得通过历史攻击数据自动学习,自动优化调整检测模型,从而使得检测模型拥有自动进行联想威胁分析的能力,提高检测的精度。

    为了进一步提高对目标请求威胁检测的准确性,可选的,本申请web网站的请求处理方法还包括:获取web网站的业务日志数据中所述目标请求的ip地址;根据预定威胁情报数据库对所述业务日志数据进行检测,得到判定所述ip地址为威胁ip地址的第四置信度;其中,根据所述第一置信度和所述第二置信度确定所述目标请求对应的是否为攻击请求的威胁检测结果,包括:根据所述第一置信度和所述第二置信度,以及结合所述第三置信度和所述第四置信度确定所述目标请求对应的威胁检测结果。所述第四置信度为根据所述预定威胁情报数据库,对判定所述ip地址为威胁ip地址时进行威胁打分对应的第四分数。

    如上文所述,web网站的业务日志数据包括url和ip地址,在web威胁日志采集系统30收集到web网站的业务日志的时候,则接收到了web请求的客户端口的访问者ip。将ip地址与预定的威胁情报数据库,例如图2的威胁情报查询库38进行检索比对,如果该ip地址在威胁情报查询库38里可以找到,则可以取得此ip地址威胁情报的威胁类型、危险级别的结果属性。

    威胁情报查询库38中的表格式如下:

    【访问者ip】【时间戳】【url】【威胁类型】【危险级别】

    在威胁情报查询库38中没有查到,则该ip地址的第四置信度对应的第四得分为0,不认定是威胁。如果可以在威胁情报查询库38中查询到,则根据危险的级别进行后续的威胁打分处理,不同级别的打分分数不一样。

    此时,可以结合第一安全规则的第一分数、第二安全规则的第二分数、异常检测模型的第三分数和威胁ip的第四分数对应的累计分数,与预定分数阈值进行比对,从而判断当前的url是否是攻击行为。

    当然,也可以不考虑异常检测模型的第三分数,仅根据第一分数、第二分数和第四分数进行累计分数。或者,根据第一分数、第二分数、第三分数和第四分数中的至少两项计算得到的累计分数,将至少两种攻击请求检测的方式关联起来确定目标请求是否为攻击请求,从而很大程度地提高攻击请求检测的准确性,提高web网站的安全性。

    在一个实施例中,本申请的web网站的请求处理方法还可以收集防火墙系统中的日志,例如web威胁日志采集系统30将防火墙系统24中的日志进行收集聚合,得到其中的web攻击事件的报警日志,并将报警日志文本按一定的格式要求拆分成有意义的字段,保存到elasticsearch日志采集数据库集群32的库表中。

    具体地,通过创建一个用户数据报协议(udp,userdatagramprotocol)的网络监听服务,接收由防火墙系统24发送过来的日志数据,并按照防火墙威胁事件的相关字段的定义,对整段的防火墙系统日志进行字段拆分,分割成若干字段保存到数据库表,表格式如下:

    【攻击类型】【时间戳】【攻击url】【威胁级别】

    数据库的表格式如下:

    【索引名】【攻击类型】【时间戳】【攻击url】【危险级别】

    现有的防火墙日志收集是通过支持防火墙发送功能进行日志数据收集,但是这种防火墙日志的收集导致数据丢包率高,高负荷工作下,不可保证日志数据传输的可靠性和完整性。本申请通过创建网络监听服务,可以直接支持防火墙日志输出,避免日志数据丢失,也避免安装数据代理收集防火墙日志对系统服务稳定性造成影响。

    对于图2的实施例,本申请通过web威胁日志采集系统30预先获取web业务系统的业务日志信息、防火墙系统24的系统日志信息、安全策略规则系统26的安全策略规则信息,并对应转换为预定格式的字段,将各个web威胁分析关联日志入库保存到elasticsearch日志采集数据库集群32中。

    web攻击威胁分析34利用威胁样本数据与威胁模型入库的数据库36和威胁情报查询库38,对当前web访问的目标请求进行检测,并将对应的威胁分析结果入库保存到数据库40中,最后通过攻击威胁分析展示服务,将威胁分析结果展示到前端42中。

    下面,将结合图3的实施例,对本申请实施例的web网站的请求处理方法示例作出说明。

    如图3所示,包括以下步骤:

    步骤302:web业务服务日志信息聚合;

    步骤304:日志格式化;

    步骤306:日志数据库存储。

    步骤308:防火墙日志信息聚合;

    步骤310:日志格式化;

    步骤312:日志数据库存储。

    步骤314:安全策略规则信息聚合;

    步骤316:日志格式化;

    步骤318:日志数据库存储。

    通过步骤306、312、318,将网站服务相关的文本日志保存于全文检索数据库,并提供一套restapi形式的数据处理流程方法,因此易于维护日志处理标准化好,读取方便效率高。

    步骤320:web威胁攻击分析。

    在步骤320中,在当前接收到的目标请求后,通过restapi接口查询elasticsearch日志采集数据库集群的索引表中保存上述各种日志数据,并根据如下规则的威胁关联分析对目标请求进行检测:

    取得web业务日志数据【访问者ip】【url】中的【访问者ip】,将访问者ip在威胁情报数据库中进行查询。得到【访问者ip】的威胁情报数据库中返回的数据【威胁级别】的信息,根据威胁的级别对【威胁计分】变量累加一定分数。

    取得web业务日志数据【访问者ip】【url】中的【url】,将【url】通过威胁语义分析库进行判断。得到语义分析结果是不是攻击请求url,如果是攻击型请求url对【威胁计数】变量累加一定分数。

    取得web业务日志数据【访问者ip】【url】中的【url】,再取得安全策略规则数据【开始有效时间戳】【结束有效时间戳】【正则规则】中开始和结束时间戳没有过期的【正则规则】,将【url】与【正则规则】进行匹配,匹配成功的,符合【正则规则】的【url】被定义为攻击url,如果是攻击型请求url,根据该匹配正则规则的打分权重对【威胁计数】变量累加一定分数。

    取得web业务日志数据【访问者ip】【url】中的【url】,将【url】与预定异常检测模型进行计数,使用异常检测模型进行url是否为异常攻击请求的分析判断。如果异常检测模型的计算比率趋近于1,表示为异常请求,趋近于0表示是正常请求。还可以将【url】与正常检测模型进行计数,如果正常检测模型的结果趋近于1,表示为正常请求,趋近于0表示不属于正常请求。根据两类检测模型的分析结果,综合判断当前【url】请求是否为攻击请求,如果是攻击型请求url对【威胁计数】变量累加一定分数。

    通过对网站web业务日志数据中的【访问者ip】与威胁情报数据库进行比对,进行关联威胁分析,对【url】进行语义攻击威胁分析、正则策略攻击威胁分析、与预定异常检测模型进行攻击威胁分析,每一步威胁攻击判定成立就对【威胁计数】累加一定分数,最后经过以上威胁分析判断后,【威胁计数】大于指定的阈值分数,则判定当前网站web业务日志中的【url】是攻击型url,报警并通知防火墙,对当前【访问者ip】的目标请求,进行拦截、限速、屏蔽等阻止攻击的操作。

    步骤322:web威胁攻击分析结果入库。

    在该步骤中,可以将检测目标请求为正常请求和/或异常请求的分析结果保存到数据库中,作为上述异常检测模型和正常检测模型的训练样本,从而对检测模型进行更新训练,进一步提高检测模型的检测精度。

    步骤324:web威胁攻击分析结果展示。

    本申请通过获取web网站的业务日志信息、安全检测规则策略系统中的规则信息,对web网站业务日志中的url同时通过正则规则检测、语义威胁攻击检测、人工神经网络算法检测,对日志中的访问者ip进行威胁情报数据库关联检测,通过多种威胁检测策略对相同日志数据源的安全检查策略进行多角度多层级分析,来准确的判断潜在的威胁攻击行为,并对攻击行为进行拦截及阻断处理,达到提高网站攻击威胁检测准确率,降低防火墙的误报率和漏报率,降低或避免网站业务被攻击的风险。

    此外,通过创建kafaka服务、restapi接口和/或udp监听服务,可以自动化地收集和聚合对应类型的威胁检测数据,保证系统的稳定性和数据的完整性,并减少检测的人力成本。

    为了解决现有技术中存在的问题,可选的,本申请实施例还提供一种web网站的请求处理装置,如图4所示,请求处理装置2000包括存储器2200和与所述存储器2200电连接的处理器2400,所述存储器2200存储有可在所述处理器2400运行的计算机程序,所述计算机程序被所述处理器2400执行时实现上述一种web网站的请求处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

    本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述一种web网站的请求处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等。

    需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

    通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。

    上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。


    技术特征:

    1.一种web网站的请求处理方法,其特征在于,包括:

    获取目标请求对应的web网站的业务日志数据;

    根据第一安全规则对所述业务日志数据进行检测,得到判定所述业务日志数据中所述目标请求的统一资源定位符url为攻击url的第一置信度;

    获取所述web网站的安全策略规则信息;

    根据所述安全策略规则信息中的第二安全规则对所述业务日志数据进行检测,得到判定所述url为攻击url的第二置信度;

    根据所述第一置信度和所述第二置信度确定所述目标请求对应的是否为攻击请求的威胁检测结果,并基于所述威胁检测结果执行对所述目标请求的拦截操作。

    2.如权利要求1所述的方法,其特征在于,还包括:

    获取预定异常检测模型;

    将所述url输入到所述预定异常检测模型进行检测,得到判定所述url为攻击url的第三置信度;其中,

    根据所述第一置信度和所述第二置信度确定所述目标请求对应的是否为攻击请求的威胁检测结果,包括:

    根据所述第一置信度和所述第二置信度,以及结合所述第三置信度确定所述目标请求对应的威胁检测结果。

    3.如权利要求2所述的方法,其特征在于,还包括:

    获取所述业务日志数据中所述目标请求的ip地址;

    根据预定威胁情报数据库对所述业务日志数据进行检测,得到判定所述ip地址为威胁ip地址的第四置信度;其中,

    根据所述第一置信度和所述第二置信度确定所述目标请求对应的是否为攻击请求的威胁检测结果,包括:

    根据所述第一置信度和所述第二置信度,以及结合所述第三置信度和所述第四置信度确定所述目标请求对应的威胁检测结果。

    4.如权利要求3所述的方法,其特征在于,

    所述第一置信度为根据所述第一安全规则,对判定所述url为攻击url时进行威胁打分对应的第一分数;

    所述第二置信度为根据所述第二安全规则,对判定所述url为攻击url时进行威胁打分对应的第二分数;

    所述第三置信度为根据所述预定异常检测模型,对判定所述url为攻击url时进行威胁打分对应的第三分数;

    所述第四置信度为根据所述预定威胁情报数据库检测所述ip地址为威胁ip地址时进行威胁打分对应的第四分数,其中,

    根据所述第一置信度和所述第二置信度,以及结合所述第三置信度和所述第四置信度确定所述目标请求对应的威胁检测结果,包括:

    对所述第一分数、所述第二分数、所述第三分数和所述第四分数求和得到累计威胁分数;

    在所述累计威胁分数大于预定分数阈值时,确定所述目标请求为攻击请求。

    5.如权利要求4所述的方法,其特征在于,

    所述第一安全规则为语义分析规则,所述根据第一安全规则对所述业务日志数据进行检测,包括:对所述url进行语义分析,提取出所述url对应的威胁语义;将所述威胁语义与威胁语义分析库包括的多条威胁语义规则进行比对分析,以判定所述url是否为攻击url;

    所述第二安全规则包括多条威胁检测正则规则,每条威胁检测正则规则根据对应的威胁程度具有不同的打分权重,其中,

    根据检测所述url为攻击url的威胁检测正则规则对应的打分权重,确定所述第二分数。

    6.如权利要求1所述的方法,其特征在于,在获取目标请求对应的web网站的业务日志数据之前,包括:

    从预定队列读取从所述web网站的服务集群节点获取的业务日志信息;

    将所述web网站服务集群节点的业务日志信息转换为json格式的业务日志数据,所述业务日志数据包括访问所述web网站的请求的ip地址和url。

    7.如权利要求1所述的方法,其特征在于,在获取所述web网站的安全策略规则信息之前,包括:

    创建http服务的应用程序接口api;

    读取安全策略规则系统通过所述api接口推送的所述安全策略规则信息;

    将所述安全策略规则信息转换为json格式的安全策略规则日志数据,所述安全策略规则日志数据包括所述第二安全规则。

    8.如权利要求2所述的方法,其特征在于,在根据所述威胁检测结果确定所述目标请求为攻击请求时,还包括:

    将所述目标请求的url作为训练样本,对所述预定异常检测模型进行训练更新。

    9.一种电子设备,其特征在于,包括:存储器和与所述存储器电连接的处理器,所述存储器存储有可在所述处理器运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至8中任一项所述的方法的步骤。

    10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的方法的步骤。

    技术总结
    本申请公开了一种Web网站的请求处理方法及装置、计算机可读存储介质,本申请实施例的方案包括:获取目标请求对应的Web网站的业务日志数据;根据第一安全规则对业务日志数据进行检测,得到判定业务日志数据中URL为攻击URL的第一置信度;获取Web网站的安全策略规则信息;根据安全策略规则信息中的第二安全规则对业务日志数据进行检测,得到判定URL为攻击URL的第二置信度;根据第一置信度和第二置信度确定目标请求对应的是否为攻击请求的威胁检测结果,并基于威胁检测结果执行对目标请求的拦截操作。本申请实施例可以提高检测Web网站攻击请求的准确性,降低网站被攻击的风险。

    技术研发人员:盛洋
    受保护的技术使用者:新浪网技术(中国)有限公司
    技术研发日:2020.10.14
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-8130.html

    最新回复(0)