[发明专利]基于关键词自动识别和决策图模型的Web攻击检测方法在审

专利信息
申请号: 202010963251.5 申请日: 2020-09-14
公开(公告)号: CN112052448A 公开(公告)日: 2020-12-08
发明(设计)人: 莫毓昌 申请(专利权)人: 莫毓昌
主分类号: G06F21/55 分类号: G06F21/55
代理公司: 北京市盛峰律师事务所 11337 代理人: 席小东
地址: 321004 浙江*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 关键词 自动识别 决策 模型 web 攻击 检测 方法
【权利要求书】:

1.一种基于关键词自动识别和决策图模型的Web攻击检测方法,其特征在于,包括以下步骤:

步骤1,构造Web攻击请求数据集的元素词典DICT,方法为:

步骤1.1,确定需要进行Web攻击检测的p种Web攻击类型;对于每种Web攻击类型ATj,j=1,2,...,p,均收集到多条与该Web攻击类型ATj对应的Web攻击请求数据,因此,对于p种Web攻击类型,收集到的所有Web攻击请求数据形成Web攻击请求数据集;其中,Web攻击请求数据集一共包括q条Web攻击请求数据;

步骤1.2,对于Web攻击请求数据集中的每一条Web攻击请求数据,采用元素分离提取算法,对其进行元素分离提取处理,得到该条Web攻击请求数据对应的元素集合;

其中,元素分离提取方式为:以元素为单元,提取Web攻击请求数据中的每个元素,提取到的各个元素组合形成元素集合;其中,元素包括:词语元素、数字元素和符号元素;

步骤1.3,对于q条Web攻击请求数据,共得到q个元素集合;将q个元素集合组合,并去掉重复的元素,形成元素词典DICT;其中,元素词典DICT共有s个元素组成,将元素词典DICT表示为:DICT=<E[1],E[2],...,E[s]>,其中,E[1]代表元素词典DICT中的第1个元素,E[2]代表元素词典DICT中的第2个元素,...,E[s]代表元素词典DICT中的第s个元素;

步骤2,对于Web攻击请求数据集的每个Web攻击请求数据,对其进行样本编码,得到该Web攻击请求数据对应的one-hot编码,具体方法为:

步骤2.1,对于Web攻击请求数据WSi,i=1,2,...,q,对其进行元素分离提取处理后,得到的元素集合表示为WEi=<Ei1,Ei2,...,Eic>;其中,c为元素集合WEi包括的元素数量;

步骤2.2,根据元素集合WEi=<Ei1,Ei2,...,Eic>和元素词典DICT=<E[1],E[2],...,E[s]>,构造Web攻击请求数据WSi对应的one-hot编码Ui=<ui1,ui2,...,uis>,其中,one-hot编码Ui中码位的数量,与元素词典DICT中元素数量相等,均为s个;

one-hot编码Ui中各码位取值为:

如果元素词典DICT中的每1个元素E[1]出现在元素集合WEi中,则one-hot编码Ui中的第1个码位ui1取值为1;否则,one-hot编码Ui中的第1个码位ui1取值为0;

如果元素词典DICT中的每2个元素E[2]出现在元素集合WEi中,则one-hot编码Ui中的第2个码位ui2取值为1;否则,one-hot编码Ui中的第2个码位ui2取值为0;

依此类推

如果元素词典DICT中的每s个元素E[s]出现在元素集合WEi中,则one-hot编码Ui中的第s个码位uis取值为1;否则,one-hot编码Ui中的第s个码位uis取值为0;

由此得到Web攻击请求数据WSi的one-hot编码Ui=<ui1,ui2,...,uis>;

步骤3,需要进行Web攻击检测的Web攻击类型共有p种,对于每种Web攻击类型ATj,j=1,2,...,p,均建立与该Web攻击类型ATj对应的关键元素词典KEYDICTj,具体方法为:

步骤3.1,对于Web攻击请求数据集中每个Web攻击请求数据WSi,构造对应的训练样本TSi=<Ui,yi>=<ui1,ui2,...,uis,yi>;

其中,yi代表Web攻击请求数据WSi的标签,如果Web攻击请求数据WSi的类型为Web攻击类型ATj,则标签yi为1;反之,如果Web攻击请求数据WSi的类型不是Web攻击类型ATj,则标签yi为0;

步骤3.2,由于Web攻击请求数据集中一共有q条Web攻击请求数据,因此,共得到q个训练样本,从而形成与Web攻击类型ATj对应的训练样本集合;

步骤3.3,构建关于Web攻击类型ATj对应的线性模型hji

hji=θ01ui12ui2+...+θsuis (1)

其中:

θ0为线性模型常数项;θ12,...,θs分别为线性模型的系数;

构建输出转换模型:

其中:

y'i为与训练样本TSi对应的标签预测值;

步骤3.4,根据线性模型hji和输出转换模型,对线性模型hji进行拟合,得到最终的θ012,...,θs的值,从而得到最终的关于Web攻击类型ATj的线性模型;

步骤3.5,对于元素词典DICT=<E[1],E[2],...,E[s]>,系数θ1同时表示元素E[1]的权重,系数θ2同时表示元素E[2]的权重,...,系数θs同时表示元素E[s]的权重;权重越大,表明对应元素对于Web攻击类型ATj的影响越关键;

预设置权重阈值ε0;检查每个系数θk的绝对值是否小于权重阈值ε0,其中,k=1,2,...,s,如果是,则系数θk对应的元素E[k]为非关键元素;否则,系数θk对应的元素E[k]为关键元素;

步骤3.6,将步骤3.5得到的所有关键元素存入与Web攻击类型ATj对应的关键元素词典KEYDICTj,由此得到关键元素词典KEYDICTj

步骤4,对于每种Web攻击类型ATj,j=1,2,...,p,均构造与该Web攻击类型ATj对应的攻击类型检测模型Modj,具体方法为:

步骤4.1,将关键元素词典KEYDICTj中的各个关键元素按设定规则排序并进行编号,由此得到关键元素词典KEYDICTj=<A1,A2,...,Ag>;其中,g为关键元素词典KEYDICTj中包括的关键元素数量;A1代表关键元素词典KEYDICTj中编号为1的关键元素,A2代表关键元素词典KEYDICTj中编号为2的关键元素,...,Ag代表关键元素词典KEYDICTj中编号为g的关键元素;其中,每个关键元素在关键元素词典KEYDICTj中具有唯一编号,并且,该编号作为关键元素的标识,与关键元素绑定;

步骤4.2,步骤1.1中,假设共收集到f条与Web攻击类型ATj对应的Web攻击请求数据,对于f条Web攻击请求数据中的每条Web攻击请求数据,表示为MSr,r=1,2,...,f,在进行元素分离提取处理后,得到由多个元素组成的元素集合表示为MEr

根据关键元素词典KEYDICTj中的关键元素,从元素集合MEr中识别出所有关键元素,并将识别出的关键元素按其编号从小到大排序,由此得到Web攻击请求数据MSr对应的关键元素序列XLr=<Ar1,Ar2,...,Arm>;其中,m为关键元素序列XLr包括的关键元素数量;

步骤4.3,对于每个Web攻击请求数据MSr对应的关键元素序列XLr=<Ar1,Ar2,...,Arm>,生成对应的单样本决策图Tur,方法为:

单样本决策图Tur共有m+1层,按自上向下方向,分别为第1层,第2层,...,第m+1层;

关键元素Ar1作为第1层结点,关键元素Ar2作为第2层结点,...,关键元素Arm作为第m层结点;而第m+1层具有两个判定结点,分别为判定结点N和判定结点Y;判定结点Y表明确定Web请求数据为Web攻击类型ATj的情况;判定结点N表明Web请求数据攻击类型暂时无法判断的情况;

第1层结点引出有向正边L11到第2层结点,第2层结点引出有向正边L21到第3层结点,依此类推,直到第m-1层结点引出有向正边L(m-1)1到第m层结点;最后,第m层结点引出有向正边Lm1到判定结点Y;

第1层结点引出有向负边L10到判定结点N,第2层结点引出有向负边L20到判定结点N,依此类推,直到第m层结点引出有向负边Lm0到判定结点N;

由此得到关键元素序列XLr=<Ar1,Ar2,...,Arm>对应的单样本决策图Tur

步骤4.4,一共有f条与Web攻击类型ATj对应的Web攻击请求数据,因此,共得到f个与Web攻击类型ATj对应的单样本决策图;

采用决策图合并算法,将f个单样本决策图逐个合并,得到与Web攻击类型ATj对应的攻击类型检测模型Modj

步骤5,因此,对于p种Web攻击类型,共构造得到p个攻击类型检测模型;当需要检测某个Web请求数据是否为攻击请求时,采用以下方式检测:

步骤5.1,对于当前需要检测的Web请求数据Q0,采用元素分离提取算法,对其进行元素分离提取处理,得到元素集合WQ;

步骤5.2,令j=1;

步骤5.3,首先检测Web请求数据Q0是否为第j种Web攻击类型ATj,方法为:

步骤5.3.1,根据Web攻击类型ATj对应的关键元素词典KEYDICTj,从元素集合WQ中挑选出关键元素,并按关键元素的编号从小到大排列各个关键元素,得到关键元素序列XLQ=<AQ1,AQ2,...,AQz>,其中,z为关键元素序列XLQ包括的关键元素数量;

步骤5.3.2,根据关键元素序列XLQ=<AQ1,AQ2,...,AQz>遍历攻击类型检测模型Modj,遍历方法为:

从攻击类型检测模型Modj的第1个结点JD11开始,判断第1个结点JD11的关键元素是否属于关键元素序列XLr,如果不属于,则通过第1个结点JD11引出的有向负边定位到下一个结点;如果属于,则通过第1个结点JD11引出的有向正边定位到下一个结点;

在定位到下一个结点后,将该结点表示为JD12,继续判断结点JD12的关键元素是否属于关键元素序列XLr,如果不属于,则通过结点JD12引出的有向负边定位到下一个结点;如果属于,则通过结点JD12引出的有向正边定位到下一个结点;

依此类推,从第1个结点开始向下逐层进行判断,如果最终能够成功定位到判定结点Y,则表明当前识别的Web请求数据Q0为第j种Web攻击类型ATj,将第j种Web攻击类型ATj记录到Web请求数据Q0对应的攻击类型表中,然后执行步骤5.3.3;否则,表明当前识别的Web请求数据Q0的攻击类型暂时无法判断,不更新攻击类型表,并执行步骤5.3.3;

步骤5.3.3,判断j是否等于p;如果不等于,则执行步骤5.4;如果等于,则执行步骤6;

步骤5.4,令j=j+1,返回执行步骤5.3;

步骤6,查找最后得到的Web请求数据Q0对应的攻击类型表,如果攻击类型表为空,则表明当前检测的Web请求数据Q0不属于p种Web攻击类型中的任意一种,得出当前检测的Web请求数据Q0为非攻击请求的结论,并结束流程;

如果攻击类型表不为空,则攻击类型表所记录的各种Web攻击类型,均为成功识别到的Web请求数据Q0的Web攻击类型,实现对Web请求数据Q0攻击类型的全面检测识别,并结束流程。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于莫毓昌,未经莫毓昌许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010963251.5/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top