基于深度学习的Web攻击检测与分类识别方法及装置制造方法及图纸

技术编号:38315735 阅读:15 留言:0更新日期:2023-07-29 08:57
本发明专利技术公开了一种基于深度学习的Web攻击检测与分类识别方法,包括:获取web日志信息并将其标记为不同类型;对web日志信息进行解码,并对解码后的web日志信息进行分词,并转换为词向量;基于textCNN算法、Bi

【技术实现步骤摘要】
基于深度学习的Web攻击检测与分类识别方法及装置


[0001]本专利技术属于通信
,具体涉及一种基于深度学习的Web攻击检测与分类识别方法及装置。

技术介绍

[0002]随着互联网技术的不断发展,越来越多的Web应用程序出现在人们的生活中。Web应用程序给日常生活带来便利的同时,也给使用者带来了风险。可用性和过度使用使Web应用程序成为了网络攻击的目标。攻击者还可以使用多种手段攻击Web应用程序、破坏特定的资源、从数据库中窃取数据或者中断应用服务,给社会带来重大的经济损失和伤害。而现有的基于黑名单、基于异常和基于启发式的网络攻击防御方法都只对已知攻击有效,无法防御新的攻击手段,并且很容易被绕过。因此,检测清楚攻击者所使用的攻击手段,对于事后应急响应处理有重要的指导作用。
[0003]目前,现有的Web攻击检测方案在对Web攻击的检测和识别上,主要有以下几种方式:
[0004]第一种是基于行为规则匹配的Web攻击检测和防御方法。该方法通过预设一个包含多种防御规则的规则防御库,将web应用防护系统的访问请求与防御规则库中的记录进行匹配,匹配的记录作为样本数据来建立分析模型。通过建立用户数据库,通过分析模型对用户的访问行为进行学习,从而更新和修正防御规则库中的防御规则,根据设定的规则对用户的访问行为进行拦截。然而防御规则库中的防御规则往往基于专家经验,具有局限性。其所依赖的规则库只能识别和防御已知的漏洞威胁,在面对未知的新型攻击时很容易被绕过,随着新型攻击层出不穷,攻击更加隐匿且难以识别,给安全防御带来严峻的挑战。
[0005]第二种是基于动态特征提取的攻击URL检测方法。该方法通过对采集到的URL数据进行标记,并对URL数据进行预处理,即将URL分割为字符集,统计每一种字符集的总数,丢弃数量小于预设值的字符,然后对每一个字符向量化,按行拼接为数值矩阵,输入循环神经网络进行训练。使用训练好的模型对未知URL判定是否为攻击URL。这种方法在一定程度上能够识别未知攻击,但仅对URL进行检测容易忽略通过POST进行攻击的方式,比如,SQL注入和文件上传等。因此,该模型检测web攻击的准确度较低,在面对多种攻击手段的情况下,不具备很好的检测和防御效果。
[0006]第三种是基于NLP的Web攻击检测方法。该方法使用fastText文本分类算法将获取的HTML请求分类,然后通过规则进行批量标注,将文本向量化处理,再选出特殊字符进行向量化,通过深度学习模型得到独热编码的分类输出,然后将独热编码标签映射到二分类标签上。然而,该方法所使用的文本分类算法无法捕捉词序信息,对长文本的检测效果不佳。同时,该方法流程复杂,所需花费的时间较长,成本较高且仅能将攻击进行二分类,无法准确判断攻击类型并及时做出响应。
[0007]综上所述,现有的网络攻击检测和防御方法都只对已知攻击有效,无法防御新的攻击手段,并且很容易被绕过;且大多数的攻击检测方案只能进行异常识别,无法对攻击手
段进行准确的分类识别。由此,现有Web攻击检测方法在模型的可靠性、准确性、实用性和成本开销上均不能很好地满足web攻击检测的实际需要。

技术实现思路

[0008]为了解决现有技术中存在的上述问题,本专利技术提供了基于深度学习的Web攻击检测与分类识别方法。本专利技术要解决的技术问题通过以下技术方案实现:
[0009]第一方面,本专利技术提供了一种基于深度学习的Web攻击检测与分类识别方法,包括:
[0010]步骤1:获取web日志信息并将其标记为不同类型;
[0011]步骤2:对所述web日志信息进行解码,并对解码后的web日志信息进行分词,并转换为词向量;
[0012]步骤3:基于textCNN算法、Bi

LSTM网络以及注意力机制构建Web攻击检测与分类识别的深度学习模型;
[0013]步骤4:利用所述词向量对所述深度学习模型进行训练,并保存训练好的模型;
[0014]步骤5:利用训练好的深度学习模型对未知的web日志进行检测以判定攻击类型。
[0015]第二方面,本专利技术提供了一种基于深度学习的Web攻击检测与分类识别装置,包括:
[0016]数据采集模块,用于获取web日志信息并将其标记为不同类型;
[0017]数据预处理模块,用于对所述web日志信息进行解码,并对解码后的web日志信息进行分词,并转换为词向量;
[0018]模型构建模块,用于基于textCNN算法、Bi

LSTM以及注意力机制构建用于Web攻击检测与分类识别的深度学习模型;
[0019]训练模块,用于利用所述词向量对所述深度学习模型进行训练,并保存训练好的模型;
[0020]检测模块,用于利用训练好的深度学习模型对未知的web日志进行检测以判定攻击类型。
[0021]本专利技术的有益效果:
[0022]本专利技术提供的基于深度学习的Web攻击检测与分类识别方法结合textCNN算法、Bi

LSTM网络以及注意力机制构建了深度学习模型,利用深度学习模型端到端的特性,不需要人工进行特征提取,不再依赖专家知识,消除了先验知识对模型偏差的影响,避免人为因素造成偏差的同时减少了工作量和成本;且该模型可以在充分提取web日志局部特征的同时提取语序特征,并输出多种攻击类型;因而使得该方法对web攻击的检测和分类识别的准确率较高、速度较快;此外,该方法不仅可以识别多种web攻击类型,还能对未知的web攻击进行检测和多分类识别,识别出具体的攻击类型能够帮助运维人员快速定位和响应,提升了针对web攻击的安全防护能力,具有较高的安全性和广泛适用性。
[0023]以下将结合附图及实施例对本专利技术做进一步详细说明。
附图说明
[0024]图1是本专利技术实施例提供的一种基于深度学习的Web攻击检测与分类识别方法示
意图;
[0025]图2是本专利技术实施例提供的Web攻击检测与分类识别的深度学习模型的结构示意图;
[0026]图3是本专利技术实施例提供的textCNN模块的结构图;
[0027]图4是本专利技术实施例提供的基于注意力机制的Bi

LSTM模块的结构图;
[0028]图5是本专利技术实施例提供的分类输出模块的结构图;
[0029]图6是本专利技术实施例提供的一种基于深度学习的Web攻击检测与分类识别装置的结构示意图;
[0030]图7是本专利技术实施例提供的对未知web日志中web攻击检测与分类识别流程图。
具体实施方式
[0031]下面结合具体实施例对本专利技术做进一步详细的描述,但本专利技术的实施方式不限于此。
[0032]实施例一
[0033]请参见图1,图1是本专利技术实施例提供的基于深度学习的Web攻击检测与分类识别方法示意图,其包括:
[0034]步骤1:获取web日志信息并将其标记为不同类型。
[0035]具体的,可以本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于深度学习的Web攻击检测与分类识别方法,其特征在于,包括:步骤1:获取web日志信息并将其标记为不同类型;步骤2:对所述web日志信息进行解码,并对解码后的web日志信息进行分词,并转换为词向量;步骤3:基于textCNN算法、Bi

LSTM网络以及注意力机制构建Web攻击检测与分类识别的深度学习模型;步骤4:利用所述词向量对所述深度学习模型进行训练,并保存训练好的模型;步骤5:利用训练好的深度学习模型对未知的web日志进行检测以判定攻击类型。2.根据权利要求1所述的基于深度学习的Web攻击检测与分类识别方法,其特征在于,在步骤1中,所述类型包括正常访问、结构化查询语言注入、跨站脚本攻击、远程代码执行、目录遍历和命令执行攻击。3.根据权利要求1所述的基于深度学习的Web攻击检测与分类识别方法,其特征在于,步骤2包括:21)对所述web日志信息进行统一资源定位符解码,得到普通文本;22)对所述普通文本进行分词处理,并将每个词映射到字典,获得词索引序列;23)将所述词索引序列转化为词向量。4.根据权利要求1所述的基于深度学习的Web攻击检测与分类识别方法,其特征在于,在步骤3中,构建的深度学习模型包括局部特征提取模块、语序特征提取模块、特征融合模块以及分类输出模块;其中,所述局部特征提取模块用于提取输入文本的局部特征向量;所述语序特征提取模块用于提取输入文本的语序特征向量;所述特征融合模块用于对所述局部特征向量和所述语序特征向量进行融合,得到融合特征向量;所述分类输出模块用于对所述融合特征向量进行处理,以输出模型预测的攻击类别。5.根据权利要求4所述的基于深度学习的Web攻击检测与分类识别方法,其特征在于,所述局部特征提取模块采用textCNN模型,其包括一个卷积层、一个BatchNorm层以及一个最大池化层;其中,所述卷积层包括三个采用大小分别为[3、5、7]的卷积核,且都输出为256维;所述BatchNorm层设置在激活函数ReLU之后。6.根据...

【专利技术属性】
技术研发人员:李兴华苗春雨周芷慧叶方庆
申请(专利权)人:杭州安恒信息技术股份有限公司
类型:发明
国别省市:

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

1