[发明专利]基于二进制映射和深度学习的漏洞检测方法有效
申请号: | 202010018013.7 | 申请日: | 2020-01-08 |
公开(公告)号: | CN111241550B | 公开(公告)日: | 2023-04-18 |
发明(设计)人: | 胡玉鹏;唐斌;唐志泉;李丹;唐薇 | 申请(专利权)人: | 湖南大学 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06V10/82;G06V10/764;G06V10/54;G06N3/0464;G06N3/08 |
代理公司: | 长沙正奇专利事务所有限责任公司 43113 | 代理人: | 马强;王娟 |
地址: | 410082 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 二进制 映射 深度 学习 漏洞 检测 方法 | ||
1.一种基于二进制映射和深度学习的漏洞检测方法,其特征在于,包括以下步骤:
1)将包含漏洞的二进制样本文件转化为灰度图像;
2)按自然数序列对样本包含的漏洞类型进行编号,并根据每个灰度图像对应的源文件包含的漏洞,以(key,value)的形式生成灰度图像对应的编号,再结合所述灰度图像文件,构建hdf5文件;
3)将hdf5数据文件作为训练数据,对卷积神经网络进行迭代训练;
4)调节训练参数,进行多次训练,直至达到预设训练效果,得到训练好的模型;
5)将待检测二进制文件转化为灰度图像,使用训练好的模型对其进行漏洞检测;
所述卷积神经网络包括:
第一卷积层,用于对输入数据进行卷积操作,并使用PRelu激活函数对输出结果进行处理;
第一池化层,用于对第一卷积层的输出结果进行池化操作;
第二卷积层,用于对局部归一化操作后的第一池化层的输出结果进行卷积操作,并使用PRelu激活函数对该卷积操作后的结果进行处理;
第二池化层,用于对第二卷积层输出的结果进行池化操作;
第三卷积层,用于对局部响应归一化处理后的第二池化层的输出结果进行卷积操作,并用PRelu激活函数对该卷积操作后的结果进行处理;
第四卷积层,用于对第三卷积层的输出结果进行卷积操作,并用PRelu激活函数对该卷积操作后的结果进行处理;
第五卷积层,用于对第四卷积层的输出结果进行卷积操作,并用PRelu激活函数对该卷积操作后的结果进行处理;
第三池化层,用于对第五卷积层的输出结果进行池化操作;
第一全连接层,用于对经局部响应归一化处理后的第三池化层的输出结果进行卷积操作,并使用tanh激活函数对该卷积操作后的结果进行处理;
第二全连接层,用于对经Dropout操作后的第一全连接层的输出进行卷积操作,并使用tanh激活函数对该卷积操作后的结果进行处理;
第三全连接层,用于对经Dropout操作后的第二全连接层的输出进行卷积操作,并使用softmax激活函数对该卷积操作后的结果进行处理,得到每种漏洞类型的概率;
局部响应归一化处理后得到的输出表示为:
其中,a表示经过卷积操作后,再经过激活函数ReLU后的输出,b表示经过局部响应归一化处理后的输出结果;表示经过卷积操作后,当前神经网络层第i个通道下的高度为x宽度为y的像素点处的值,表示经过局部响应归一化操作后,第i个通道下的高度为x宽度为y的像素点处的值;N是通道的总数;k,n,α,β均为超参数。
2.根据权利要求1所述的基于二进制映射和深度学习的漏洞检测方法,其特征在于,步骤1)的实现过程包括:
1)将一个包含漏洞的二进制文件按位读取为一维数组,读取过程中,取该二进制文件的每8位数据作为该数组一个元素的值,该元素的取值范围为0-255;
2)新建一个二维数组,并使该二维数组每行的宽度固定为256,使用所述一维数组中的数值依次填充该二维数组,从而将一维数组转化成一个具有固定宽度的二维数组;
3)利用Python中的cv2库将步骤2)得到的固定宽度的二维数组存储为灰度图像。
3.根据权利要求1所述的基于二进制映射和深度学习的漏洞检测方法,其特征在于,步骤2)的具体时间过程包括:
1)对收集到的包含漏洞的样本文件进行处理,生成两个标签文件,即训练标签文件和测试标签文件,每个标签文件包含有多条数据,均以(key,value)的形式存在,训练标签文件的key为某个包含漏洞文件转化成灰度图像后的图像路径,value为该文件所属的漏洞类型编号;测试标签文件的key为漏洞类型编号,对应训练标签文件中的漏洞各类型编号,value为该类型编号所对应的文字解释;其中,测试标签文件中的漏洞类型编号由小到大按顺序依次生成,且先生成测试标签文件,再生成训练标签文件,确保两个标签文件中的漏洞编号相对应;
2)将灰度图像样本文件按照训练标签文件中的对应关系,采用堆叠的方式,构建并生成hdf5文件。
4.根据权利要求1所述的基于二进制映射和深度学习的漏洞检测方法,其特征在于,步骤3)中,所述卷积神经网络为Alexnet网络。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南大学,未经湖南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010018013.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种旋喷注浆加固过程监控系统及方法
- 下一篇:预制装配式市政工程隔离带