一种基于改进生成对抗网络的物联网协议模糊测试方法技术

技术编号:36183509 阅读:25 留言:0更新日期:2022-12-31 20:42
本发明专利技术提出基于改进生成对抗网络的物联网协议模糊测试方法,解决了传统协议模糊测试中需要掌握协议格式进而生成满足目标系统要求的测试用例的问题。在测试用例的接受率、漏洞的检出率指标上,本发明专利技术方法与传统方法相比具有显著的优越性,采用本发明专利技术所生成的测试用例具有正确的协议格式,并且保持其多样性。并且保持其多样性。并且保持其多样性。

【技术实现步骤摘要】
一种基于改进生成对抗网络的物联网协议模糊测试方法


[0001]本专利技术是属于物联网安全方向,具体是一种基于改进生成对抗网络的物联网协议模糊测试方法。

技术介绍

[0002]随着各行各业逐步转问数字化,物联网安全问题得到了国内外各行各业的关注。模糊测试作为一种用于安全漏洞检测的安全测试技术,由于自动化程度高、误报率低等优点,其应用越来越广泛,地位也越来越重要。针对物联网协议的模糊测试,传统的模糊测试虽然可以检测到其中存在的安全漏洞,但在实际使用中还存在着难题,例如:协议模糊测试大多需要事先对协议结构规范进行分析以此构造生成器,而对于物联网环境来说,其中存在着难以提前获得协议结构的私有协议等,若采用传统的方法来进行模糊测试,则需要花费大量的人力和时间。使用机器学习的方法学习协议的格式信息,自动地生成满足协议格式且具有多样性的测试用例,从而展开针对物联网协议的漏洞挖掘研究是近几年来的科研方向。
[0003]针对协议的模糊测试,目前结合机器学习算法生成模糊测试用例通常既满足协议格式需要,同时具有多样性,从而高效地进行协议漏洞挖掘。但针对不同协议,需要考虑协议格式本身的细节问题。目前大部分研究只考虑模型的选取,并没有针对不同协议的特点对相关模型进行改进,因此并未得到最优的模糊测试用例。

技术实现思路

[0004]针对上述技术问题,本专利技术提出了一种基于改进生成对抗网络的物联网协议模糊测试方法,该方法是一种通过学习正常报文的格式信息生成测试用例的模糊测试方法,可以有效解决传统协议模糊测试中需要掌握协议格式进而生成满足目标系统要求的测试用例的问题。在测试用例的接受率、漏洞的检出率指标上,本专利技术的方法与传统方法相比具有显著的优越性,采用本方法提高了物联网协议模糊测试效率,生成的测试用例具有正确的协议格式,并且保持其多样性。
[0005]为了实现上述技术目的,本专利技术采用如下具体技术方案:
[0006]一种基于改进生成对抗网络的物联网协议模糊测试方法,包括以下步骤:
[0007]S1、收集物联网网络报文并对其进行数据预处理;
[0008]S2、针对物联网协议模糊测试的问题抽象;
[0009]S3、改进RankGAN模型的构造;具体包括以下子步骤:
[0010]S3.1、结合批标准化处理的生成器构造:在改进后的RankGAN模型中,生成器用到LSTM网络,当生成器收到Ranker的得分信息后,利用反馈及时调整其参数,进而生成下一个数据;
[0011]S3.2、结合自注意力机制的Ranker:为提高模型的训练速度,选择CNN作为基础网络实现Ranker,改进后的Ranker结构包括输入层、嵌入层、4个conv

1d层、4个自注意力层、
池化层;
[0012]S4、改进RankGAN模型的训练。
[0013]步骤S1包括以下子步骤:
[0014]S1.1、按照数据帧长度构造,
[0015]S1.2、按照数据类别构造,利用PAM算法将复杂的数据集按照不同的协议特征进行分类,通过协议特征信息构造数据集实现对各协议功能进行“单点”测试;
[0016]S1.3、混合构造,结合步骤S1.1和步骤S1.2上述两种构造方式,将数据长度相同的报文和协议特征相似的报文进行随机混合,符合真实网络流量的报文分布特点,以增加生成器的输出类别,增强发现漏洞的能力。
[0017]步骤S2中从网络流量中获取的数据是以序列的形式存在,问题抽象为M
(1:n)
=(s1,s2,L,s
n
),s
i
∈S,M
(1:n)
∈M
*
,其中,
[0018]S表示十六进制的字符集,即S={0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f},
[0019]M
*
表示所有的原始报文数据。
[0020]步骤S3.1中,所述改进的RankGAN模型中,分别对生成器的tanh激活函数和sigmoid激活函数添加了批标准化操作。
[0021]步骤S3.2中,所述改进的Ranker中使用放缩点积自注意力机制加以优化。
[0022]步骤S4中,设词汇集为V,在t时刻已生成的序列为:s
1:t
‑1=(x0,x1,L,x
t
‑1),其中,
[0023]x
i
∈V,i∈[0,t

1],下一个tokenx
t
是策略π
θ
(x
t
|s
1:t
‑1)的动作采样,当生成一个完整的序列后会发送给Ranker,根据比较集C和参考集U获得排名奖励R
Φ
(s|U,C),采用蒙特卡罗搜索的方式计算中间状态的排名得分,中间状态的reward由公式:计算得出,其中,
[0024]s
1:t
‑1为已生成序列,
[0025]U为参考集,
[0026]表示x从G
θ
分布中获取的期望算子,
[0027]R
Φ
(x|U,C
+
,s
1:t
‑1)为当前输入的排名得分,
[0028]C
+
表示从真实数据集经过预采样得到的真实数据集;
[0029]原始token(x0,x1,L,x
t
‑1)是固定的,剩下的(T

t)个token是按G
θ
连续采样的结果,重复抽样n个不同的采样并计算各自的排名得分,求其平均后用于近似当前部分序列的预期奖励;当计算出中间奖励后,便得到生成器G
θ
的目标函数梯度:其中,
[0030]是偏微分算子,开始状态s0为第一个生成的tokenx0,
[0031]则表示基于当前生成器参数θ在一个小批量内对所有抽样完整句子的平均值,
[0032]π
θ
(x
t
|s
1:t
‑1)为当前采样策略,
[0033]V
θ,Φ
(s
1:t
,U)为中间状态的reward;Ranker的目标函数为:
[0034]其中,
[0035]表示x从P
real(x)
分布中获取的期望算子,
[0036]表示x从G
θ
分布中获取的期望算子,
[0037]x~P
real(x)
表示x来自真实数据,
[0038]x~G
θ
表示输入x来自生成数据,
[0039]C

、C
+
表示对不同输入x的比较集;
[0040]在实际训练过程中,通过最小化logR
Φ
(x|U,C
+
),代替最本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于改进生成对抗网络的物联网协议模糊测试方法,其特征在于,包括以下步骤:S1、收集物联网网络报文并对其进行数据预处理;S2、针对物联网协议模糊测试的问题抽象;S3、改进RankGAN模型的构造;具体包括以下子步骤:S3.1、结合批标准化处理的生成器构造:在改进后的RankGAN模型中,生成器用到LSTM网络,当生成器收到Ranker的得分信息后,利用反馈及时调整其参数,进而生成下一个数据;S3.2、结合自注意力机制的Ranker:为提高模型的训练速度,选择CNN作为基础网络实现Ranker,改进后的Ranker结构包括输入层、嵌入层、4个conv

1d层、4个自注意力层、池化层;S4、改进RankGAN模型的训练。2.根据权利要求1所述的基于改进生成对抗网络的物联网协议模糊测试方法,其特征在于,步骤S1包括以下子步骤:S1.1、按照数据帧长度构造,S1.2、按照数据类别构造,利用PAM算法将复杂的数据集按照不同的协议特征进行分类,通过协议特征信息构造数据集实现对各协议功能进行“单点”测试;S1.3、混合构造,结合步骤S1.1和步骤S1.2上述两种构造方式,将数据长度相同的报文和协议特征相似的报文进行随机混合,符合真实网络流量的报文分布特点,以增加生成器的输出类别,增强发现漏洞的能力。3.根据权利要求1所述的基于改进生成对抗网络的物联网协议模糊测试方法,其特征在于,步骤S2中从网络流量中获取的数据是以序列的形式存在,问题抽象为M
(1:n)
=(s1,s2,L,s
n
),s
i
∈S,M
(1:n)
∈M
*
,其中,S表示十六进制的字符集,即S={0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f},M
*
表示所有的原始报文数据。4.根据权利要求1所述的基于改进生成对抗网络的物联网协议模糊测试方法,其特征在于,步骤S3.1中,所述改进的RankGAN模型中,分别对生成器的tanh激活函数和sigmoid激活函数添加了批标准化操作。5.根据权利要求1所述的基于改进生成对抗网络的物联网协议模糊测试方法,其特征在于,步骤S3.2中,所述改进的Ranker中使用放缩点积自注意力机制加以优化。6.根据权利要求1所述的基于改进生成对抗网络的物联网协议模糊测试方法,其特征在于,步骤S4中,设词汇集为V,在t时刻已生成的序列为:s
1:t
‑1=(x0,x1,L,x
t
...

【专利技术属性】
技术研发人员:李鹏牛胜杰徐鹤王汝传张玉杰朱枫程海涛李友涛张结魁陈莉莉
申请(专利权)人:安徽晶奇网络科技股份有限公司
类型:发明
国别省市:

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

1