当前位置: 首页 > 专利查询>山东大学专利>正文

一种基于多生成器的http流量拟态生成方法技术

技术编号:36886083 阅读:19 留言:0更新日期:2023-03-15 21:33
本发明专利技术公开了一种基于多生成器的http流量拟态生成方法,依次包括以下步骤:A:构建网络流量数据集;B:利用Word2vec网络模型生成原始流量样本;C:构生成对抗网络模型并对模型进行训练;D:将高斯噪声输入生成对抗网络模型的生成器中得到比较样本;E:将比较样本还原得到还原数据并输入流量生成器中,生成流级别数据;F:将流级别数据输入流量生成器中,通过构建数据包长度序列和时间间隔序列生成数据包级别数据,得到与流级别数据及初始网络流量数据的数据特征一致的拟态网络流量数据。本发明专利技术通过对正常的网络数据流量的模式进行学习,并对已有数据进行流量整形,达到与真实数据在统计特征和数据包构造上高度相似的目的。计特征和数据包构造上高度相似的目的。计特征和数据包构造上高度相似的目的。

【技术实现步骤摘要】
一种基于多生成器的http流量拟态生成方法


[0001]本专利技术涉及流量拟态领域,尤其涉及一种基于多生成器的http流量拟态生成方法。

技术介绍

[0002]伴随着互联网的爆炸式发展,互联网安全迎来了巨大的挑战,一种从统计分析角度的攻击行为即流量分析攻击正在日益增多。而面对该种以网络流量统计为基础,从实时数据行为分析角度出发的攻击,目前已有的流量合成器以及隧道技术并不能在保证合成的流量的准确性与真实性的基础上较好的规避该种攻击。
[0003]拟态的目的在于将受到监管的协议伪装成白名单协议格式来规避攻击者的审查。在目前已有的各项研究成果中,即便是相对比较成熟的洋葱路由使用的流量混淆技术也存在数据包熵值过高的问题,很容易被基于深度包检测的技术探测到并识别出来。

技术实现思路

[0004]本专利技术的目的是提供一种基于多生成器的http流量拟态生成方法,通过对正常的网络数据流量的模式进行学习,并对已有数据进行流量整形,达到与真实数据在统计特征和数据包构造上高度相似的目的。
[0005]本专利技术采用下述技术方案:
[0006]一种基于多生成器的http流量拟态生成方法,依次包括以下步骤:
[0007]A:构建网络流量数据集;网络流量数据集中的每条初始网络流量数据均包括以下数据特征:数据包总数、源端口、目的端口、总字节数和流持续时间;
[0008]B:利用Word2vec网络模型,对网络流量数据集中的初始网络流量数据进行预处理,生成对应的Word2vec向量作为原始流量样本;
[0009]C:构建基于pytorch的多生成器与并行鉴别器的生成对抗网络模型并对模型进行训练,得到训练后的生成对抗网络模型;生成对抗网络模型中的生成器由两个串行的转置卷积生成器构成,鉴别器第一层为并行卷积结构,随后串联多层卷积层;
[0010]D:将高斯噪声输入训练后的生成对抗网络模型的生成器中,并将所得到的生成数据作为比较样本;
[0011]E:构建流量生成器,并将步骤D中获得的比较样本根据数据特征进行还原,得到与初始网络流量数据格式相同的还原数据,并将还原数据输入流量生成器中,生成流级别数据;
[0012]F:将步骤E中得到的流级别数据输入流量生成器中,由流量生成器根据输入的流级别数据,在整个网络流量数据集中寻找最相似的前N条初始网络流量数据进行匹配,并通过构建数据包长度序列和时间间隔序列生成数据包级别数据,得到与流级别数据及初始网络流量数据的数据特征一致的拟态网络流量数据。
[0013]所述的步骤B中,采用现有的Word2vec网络模型对初始网络流量数据进行训练,将
单条初始网络流量数据中的每一个维度的特征均转换为定长的80维Word2vec向量,所有特征转换后的维度共计400维,随后将该400维的向量变形成20*20的图片形式,并将所得到的对应的Word2vec向量作为原始流量样本。
[0014]所述的步骤C中,对基于pytorch的多生成器与并行鉴别器的生成对抗网络模型进行训练时,将训练数据输入到生成对抗网络模型的鉴别器D中,获得Wasserstien距离;若得到的Wasserstien距离小于设定的距离阈值K1,则结束训练,得到训练后的生成对抗网络模型;若得到的Wasserstien距离大于等于设定的距离阈值K1,则对生成对抗网络模型的参数进行调整后继续训练,直至得到的Wasserstien距离小于设定的距离阈值K1,最终得到训练后的生成对抗网络模型。
[0015]所述的步骤D包括以下具体步骤:
[0016]D1:将多个符合高斯分布的范围在[

1,1]之间的20*20的噪声矩阵,输入到生成对抗网络模型的第一个生成器G1中,由第一个生成器G1生成中间结果;
[0017]D2:将第一个生成器G1生成的中间结果,输入到生成对抗网络模型的第二个生成器G2中,由第二个生成器G2输出多个20*20的矩阵形式的生成数据,作为比较样本。
[0018]所述的步骤E中,流量生成器包括数据还原模块、数据长度匹配模块、数据包间隔匹配模块和数据校验模块;所述的数据还原模块用于将比较样本还原为原始数据形式;数据包长度匹配模块用于根据流级别数据的要求,生成数据包长度;数据包间隔匹配模块用于匹配数据包之间的发送时长间隔;数据校验模块用于校验生成的数据包序列以及时间间隔序列的正确性。
[0019]所述的步骤E中,数据还原模块在根据数据特征对比较样本进行还原时,首先按照步骤A中的数据特征划分方式对比较样本进行切割,切割后的得到的每个比较样本均为长度是80维的短向量,然后使用短向量在特征信息库中进行相似度匹配,分别获取与每个比较样本的特征相似度最高的数据特征结果,再将若干个数据特征结果进行组合,最终形成一条完整的流级别数据;特征信息库由初始网络流量数据的数据特征经word2vec模型形成。
[0020]所述的步骤F包括以下具体步骤:
[0021]F1:根据输入的流级别数据,流量生成器中的数据包长度匹配模块,在整个网络流量数据集中寻找最相似的前N条初始网络流量数据,并随机选择某条初始网络流量数据所对应的数据包流中的某一个数据包,将该数据包的长度加入到生成数据包长度序列中;然后进入步骤F2;
[0022]F2:在数据包长度序列加入随机选择的数据包长度后,判断当前的数据包长度序列的Cumul流量累计表示,与最相似的前N条初始网络流量数据的Cumul流量累计表示的相似度是否大于等于设定的相似度阈值K2;
[0023]若大于等于设定的相似度阈值K2,则保存当前的数据包长度序列;然后选择所加入的数据包长度所对应的初始网络流量数据,由数据包间隔匹配模块将该初始网络流量数据的数据包发送的平均时间间隔加入时间间隔序列中,并保存当前的时间间隔序列;然后进入步骤F3;
[0024]若小于设定的相似度阈值K2,在将该随机选择的数据包长度移出生成数据包长度序列后,保存当前的时间间隔序列;然后返回步骤F1,重新进行数据包的随机选择;
[0025]F3:按照步骤F1和F2的方法继续随机加入数据包,直至所加入的数据包总数与流级别数据的数据特征中的数据包总数相同;然后进入步骤F4;
[0026]F4:将随机加入的所有的数据包的长度进行累加,得到加入的数据包的总字节数M1;并判断总字节数M1与流级别数据的数据特征中的字节数M2的误差|M1‑
M2|/M2,是否小于等于设定的长度误差阈值K3;若小于等于长度误差阈值K3,则保存当前的数据包长度序列,然后进入步骤F5;若大于长度误差阈值K3,则返回步骤F1,重新进行数据包的随机选择;
[0027]F5:根据当前得到的数据包长度序列和时间间隔序列,利用数据校验模块,分别进行数据流向校验和数据流持续时间校验;
[0028]在进行数据流向校验时,将从源端口流出的数据定义为发送数据,将从目的端口流入的数据定义为接收数据;若通过数据包长度序列中得到的发送数据和接收数据的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于多生成器的http流量拟态生成方法,其特征在于,依次包括以下步骤:A:构建网络流量数据集;网络流量数据集中的每条初始网络流量数据均包括以下数据特征:数据包总数、源端口、目的端口、总字节数和流持续时间;B:利用Word2vec网络模型,对网络流量数据集中的初始网络流量数据进行预处理,生成对应的Word2vec向量作为原始流量样本;C:构建基于pytorch的多生成器与并行鉴别器的生成对抗网络模型并对模型进行训练,得到训练后的生成对抗网络模型;生成对抗网络模型中的生成器由两个串行的转置卷积生成器构成,鉴别器第一层为并行卷积结构,随后串联多层卷积层;D:将高斯噪声输入训练后的生成对抗网络模型的生成器中,将所得到的生成数据作为比较样本;E:构建流量生成器,并将步骤D中获得的比较样本根据数据特征进行还原,得到与初始网络流量数据格式相同的还原数据,并将还原数据输入流量生成器中,生成流级别数据;F:将步骤E中得到的流级别数据输入流量生成器中,由流量生成器根据输入的流级别数据,在整个网络流量数据集中寻找最相似的前N条初始网络流量数据进行匹配,并通过构建数据包长度序列和时间间隔序列生成数据包级别数据,得到与流级别数据及初始网络流量数据的数据特征一致的拟态网络流量数据。2.根据权利要求1所述的基于多生成器的http流量拟态生成方法,其特征在于:所述的步骤B中,采用现有的Word2vec网络模型对初始网络流量数据进行训练,将单条初始网络流量数据中的每一个维度的特征均转换为定长的80维Word2vec向量,所有特征转换后的维度共计400维,随后将该400维的向量变形成20*20的图片形式,并将所得到的对应的Word2vec向量作为原始流量样本。3.根据权利要求1所述的基于多生成器的http流量拟态生成方法,其特征在于:所述的步骤C中,对基于pytorch的多生成器与并行鉴别器的生成对抗网络模型进行训练时,将训练数据输入到生成对抗网络模型的鉴别器D中,获得Wasserstien距离;若得到的Wasserstien距离小于设定的距离阈值K1,则结束训练,得到训练后的生成对抗网络模型;若得到的Wasserstien距离大于等于设定的距离阈值K1,则对生成对抗网络模型的参数进行调整后继续训练,直至得到的Wasserstien距离小于设定的距离阈值K1,最终得到训练后的生成对抗网络模型。4.根据权利要求1所述的基于多生成器的http流量拟态生成方法,其特征在于,所述的步骤D包括以下具体步骤:D1:将多个符合高斯分布的范围在[

1,1]之间的20*20的噪声矩阵,输入到生成对抗网络模型的第一个生成器G1中,由第一个生成器G1生成中间结果;D2:将第一个生成器G1生成的中间结果,输入到生成对抗网络模型的第二个生成器G2中,由第二个生成器G2输出多个20*20的矩阵形式的生成数据,作为比较样本。5.根据权利要求1所述的基于多生成器的http流量拟态生成方法,其特征在于:所述的步骤E中,流量生成器包括数据还原模块、数据长度匹配模块、数据包间隔匹配模块和数据校验模块;所述的数据还原模块用于将比较样本还原为原始数据形式;数据包长度匹配模块用于根据流级别数据的要求,生成数据包长度;数据包间隔匹配模块用于匹配数据包之间的发送时长间隔;数据校验模块用于校验生成的数据包序列以及时间间隔序列的正确
性。6.根据权利要求5所述的基于多生成器的http流量拟态生成方法,其特征在于:所述的步骤E中,数据还原模块在根据数据特征对比较样本进行还原时,首先按照步骤A中的数据特征划分方式对比较样本进行切割,切割后得到的每个比较样本均为长度是80维的短向量,然后使用短向量在特征信息库中进行相似度匹配,分别获取与每个比较样本的特征相似度最高的数据特征结果,再将若干个数据特征结果进行组合,最终形成一条完整的流级别数据;特征信...

【专利技术属性】
技术研发人员:徐东亮杨承林刘志伟马骁徐舜翟文升王晨曦韩旭
申请(专利权)人:山东大学
类型:发明
国别省市:

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

1