CN113765716B - 一种基于梯度对抗的网络流量防测绘方法 - Google Patents
一种基于梯度对抗的网络流量防测绘方法 Download PDFInfo
- Publication number
- CN113765716B CN113765716B CN202111037369.6A CN202111037369A CN113765716B CN 113765716 B CN113765716 B CN 113765716B CN 202111037369 A CN202111037369 A CN 202111037369A CN 113765716 B CN113765716 B CN 113765716B
- Authority
- CN
- China
- Prior art keywords
- matrix
- flow
- network
- prediction model
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000013507 mapping Methods 0.000 title claims abstract description 69
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000002265 prevention Effects 0.000 title claims abstract description 30
- 230000008485 antagonism Effects 0.000 title claims abstract description 11
- 239000011159 matrix material Substances 0.000 claims description 190
- 238000012360 testing method Methods 0.000 claims description 63
- 230000006870 function Effects 0.000 claims description 37
- 238000012549 training Methods 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 15
- 230000000694 effects Effects 0.000 claims description 11
- 238000013527 convolutional neural network Methods 0.000 claims description 10
- 238000013528 artificial neural network Methods 0.000 claims description 8
- 238000010276 construction Methods 0.000 claims description 6
- 125000004122 cyclic group Chemical group 0.000 claims description 5
- 230000007812 deficiency Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 21
- 238000004458 analytical method Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 238000013136 deep learning model Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000007123 defense Effects 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 230000003449 preventive effect Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000007876 drug discovery Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种基于梯度对抗的网络流量防测绘方法,提前构造网络流量预测模型,并将历史网络流量数据输入该网络流量预测模型,得到相对应的下一个时间段的网络流量预测值,并根据预测值和真实的预测值对应时间段的实际值求损失函数,最后对损失函数进行关于历史网络流量输入值的梯度求解,以此向网络中增加相对应的虚假流量值,以达到扰乱敌对方预测模型并导致其预测错误的目的,能够切实可靠地降低了区域网络的风险。
Description
技术领域
本发明涉及网络流量预测领域,尤其涉及一种基于梯度对抗的网络流量防测绘方法。
背景技术
从1956年计算机科学家约翰·麦卡锡在达特茅斯会议提出了“人工智能”的概念,到现在其身影遍布各个领域,人工智能在实际应用中表现出了绝佳的性能,甚至在某些方面超过了人类能力(如:基于大数据预测、棋类竞技、药物发现)。但不可忽视的是,人工智能的技术也有被恶意运用的例子(如:使用语音合成冒充人类进行欺骗、通过自动黑客进行攻击、“剑桥分析”事件)。
互联网作为同时期产生的另一项发明,在现在作为人们通信的重要媒介,承担了人们大部分的通信的任务,甚至达到了不可或缺的地步。人们在利用网络解决自己信息需求的同时,随着科技的进步带来的网络安全问题,却让人们无时无刻不受到网络安全隐患的威胁。使得人们对网络数据安全、网络系统可靠性、网络财产安全产生了担忧,更重要的是在政府和军事领域网络安全更是有着关乎国家安全的地位。值得庆幸的是,为了解决此类问题,人们开发出了防火墙技术、防病毒技术、数据加密技术、入侵检测技术、网络监察技术、SSL加密等。
但是在诸多网络安全问题中,区域网络流量的防测绘问题却容易受到忽视。对于一个军事区域或者政府办公地区,甚至是一个大型企业,敌对方通过分析进出该区域的流量值,就足以产生一定的威胁。而基于机器学习的网络流量预测方法的提出,更是增强了敌对方对区域网络流量的分析能力,其主要表现为通过对该区域的历史网络流量值进行处理从而得到未来时刻的网络流量的预测值,并且具有较高的精度。以此敌对方可以根据预测值对该区域选择特定的时刻进行更高有效的攻击,或者是在实际值和预测值有巨大差异时对受害方进行行为分析和预测。网络流量预测中常用深度信念网络(DBN)、卷积神经网络(CNN)、循环神经网络(RNN)和长短时记忆网络(LSTM)共四种深度学习方法对区域流量进行预测,并具有较高精度。
有鉴于此,本发明提出了一种基于梯度对抗的网络流量防测绘方法及其装置,本发明的使用的核心算法是快速梯度下降法(fast gradient sign method,以下简记为:FGSM),通过对有可能的预测模型进行提前构造,并利用历史网络流量数据通过该预测模型,得到相对应的下一个时间段的网络流量预测值,并根据预测值和真实的预测值对应时间段的实际值求损失函数,最后对损失函数进行关于历史网络流量输入值的梯度求解,以此向网络中增加相对应的虚假流量值,以达到扰乱敌对方预测模型并导致其预测错误的目的,切实可靠地降低了区域网络的风险。
发明内容
为了解决敌对方基于收集到的历史区域网络流量值,进行训练得到网络流量预测模型,能够精确地预测出受害方的未来网络流量值,从而进一步地做出更具有针对性的攻击行为的问题。本发明提出了本发一种基于梯度对抗的网络流量防测绘方法及其装置。
为实现上述发明目的,本发明采用了以下技术方案:一种基于梯度对抗的网络流量防测绘方法,具体包括以下步骤:
(1)将防测绘地区的各个区域划分为若干区域,并对每个划分区域分别采集网络流量的进出量;将同一时刻所有区域的网络流量的进出量整理并构成流量矩阵,并记录好流量矩阵以及流量矩阵采集时的时间,以此对所有收集到的历史网络流量值进行处理,将构建的流量矩阵组成具有时间属性的网络流量数据集。
(2)将步骤(1)采集到的网络流量数据集输入流量预测模型f(·),并训练该流量预测模型f(·);所述流量预测模型包括深度信念网络、卷积神经网络、循环神经网络或长短时记忆网络;
(3)基于步骤(2)训练好的流量预测模型,计算测试数据集的真实值和经过流量预测模型之后的预测值之间损失函数,根据该损失函数计算其梯度矩阵,将该梯度矩阵标准化,对标准化后的梯度矩阵乘以扰动系数,得到扰动矩阵;
(4)构建防测绘测试样本矩阵xc,将该防测绘测试样本矩阵xc输入步骤(2)到构建的流量预测模型f(·)中,保存输出的预测值;
(5)采用均方误差MSE对防测绘效果进行评估,分别计算并比较无防测绘和有防测绘两种情况下的MSE值,对防测绘效果进行验证;
进一步地,所述步骤(2)包括以下子步骤:
(2.1)将步骤(1)采集的具有时间属性的网络流量数据集按时间顺序排列,划分为训练数据集和测试数据集;
(2.2)构建流量预测模型f(·),所述流量预测模型f(·)包括深度信念网络、卷积神经网络、循环神经网络和长短时记忆网;
(2.3)将步骤(2.1)采集到的训练数据集的输入到步骤(2.2)构建的流量预测网络模型中进行训练,得到参数确定的流量预测模型。
(2.4)将步骤(2.1)采集到的测试数据集测试集输入到步骤(2.3)训练得到的流量预测模型,设流量预测模型f:X→Y,网络流量测试数据集输入该模型的矩阵为xt∈X,则流量预测模型的输出为f(θ,xt)=yt,yt∈Y,即通过该流量预测模型得到网络流量测试数据集的预测结果为f(θ,xt)=yt,yt∈Y,而实际值为其中θ为由网络流量预测模型训练得到的参数;所述实际值/>为输入的测试数据集对应的实际相邻的下一个时间跨度网络流量矩阵,观察对应得到输出的预测网络流量矩阵序列预测值,将预测值该预测网络流量矩阵序列和实际值/>进行对比,根据预测值与实际值平均数值差异、预测值与实际值走势吻合度或预测值的平稳性等选择适合的方式,查看该流量预测模型是否满足预测要求;若该流量预测模型不满足预测要求,则重复步骤(2.1)~步骤(2.3)直至该流量预测模型满足预测要求。
进一步地,所述步骤(3)包括以下子步骤:
(3.1)计算出测试数据集的真实值和经过流量预测模型之后的预测值之间的损失函数,具体为:根据步骤(2.4)计算的结果f(θ,xt)=yt,yt∈Y,对测试数据集求损失函数,其计算公式为:而其中的/>分别为预测值矩阵和真实值矩阵的第i行j列的流量值,损失函数/>为标量,简记为J(θ,xt,yt)。
(3.2)通过对损失函数J(θ,xt,yt)求关于测试数据集输入矩阵的梯度函数得到其梯度矩阵,具体为:根据步骤(3.1)得到测试数据集的真实值和经过流量预测模型之后的预测值之间的损失函数J(θ,xt,yt),并对其求关于历史网络测试流量矩阵xt的梯度矩阵,梯度矩阵的第i行j列元素的值计算公式为:其中/>为历史网络流量矩阵xt的第i行j列元素,最后记整个梯度矩阵为/>
(3.3)对整个梯度矩阵进行标准化操作,具体操作包括:通过sign(·)函数对梯度矩阵/>进行标准处理以便以此为依据添加扰动,即对梯度矩阵中大于0的元素替换成1,小于等于0的元素变为0。记作为/>
(3.4)生成扰动矩阵,具体操作包括:
根据(3.3)中被标准化处理过梯度矩阵乘以一个微小的值∈,形成扰动矩阵/>其中∈足够小以至于使/>中的任意元素不足网络流量测试数据集输入矩阵xt∈X元素的十分之一。
进一步地,所述步骤(4)包括以下子步骤:
(4.1)构建防测绘测试样本矩阵xc,具体操作为:将原测试数据集输入矩阵x和步骤(3.5)生成的扰动矩阵进行相加,此时设防测绘测试样本矩阵为xc,而xc中的元素xc(i,j)计算方式为/>其中x(i,j)表示原测试输入矩阵x的第i行j列的元素值,/>表示生成的扰动矩阵 的第i行j列的元素值。
(4.2)将步骤(4.1)构建的防测绘测试样本矩阵xc输入步骤(2)到构建的流量预测模型f(·)中,得到防测绘测试样本矩阵xc∈X在流量预测模型f(·)下对应的输出f(θ,xc)=yc,yc∈Y,其中yc为对应输出,并保存yc。
进一步地,所述步骤(5)包括以下子步骤:
(5.1)基于流量值离散且数量点不固定的特点,采用均方误差MSE对防测绘效果进行评估:均方误差MSE统计参数是预测数据和原始数据对应点误差的平方和的均值,具体公式为:其中n表示输出矩阵的元素个数,计算方式为n=(m+1)×(k+1),输出矩阵为m+1行,k+1列的矩阵,且从第0行第0列开始计算,/>分别为预测值矩阵和真实值矩阵的第i行j列的流量值。
(5.2)分别计算无防测绘和有防测绘两种情况下的MSE值,具体操作如下:分别计算原测试输入矩阵xt得到的对应预测值yt和输入防测绘测试矩阵xc得到的对应预测值yc相对于真实的流量值的MSE值,其中原测试输入的MSEt为:/>而加了扰动的防测绘测试输入的MSEc为:/>
(5.3)对比两种不同输入下的MSE值,由于两种不同输入的MSE值均为标量,故当有MSEt<2*MSEC时可以认为防测绘成功。
本发明的有益效果为:本发明公开的基于梯度对抗的网络流量防测绘方法能够解决敌对方基于收集到的历史区域网络流量值,进行训练得到网络流量预测模型,能够精确地预测出受害方的未来网络流量值,从而进一步地做出更具有针对性的攻击行为。本发明通过向网络中增加相对应的虚假流量值,以达到扰乱敌对方预测模型并导致其预测错误的目的,切实可靠地降低了区域网络的风险。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中的一些关键步骤的形象表示,使其更容易理解。
图1是生成具有防测绘作用的网络流量矩阵的流程图。
具体实施方式
针对现有技术不足,本发明提出了一种基于梯度对抗的网络流量防测绘方法及其装置,本发明使用快速梯度下降法(fast gradient sign method,FGSM),通过对有可能的预测模型进行提前构造,并利用历史网络流量数据通过该预测模型,得到相对应的下一个时间段的网络流量预测值,并根据预测值和真实的预测值对应时间段的实际值求损失函数,最后对损失函数进行关于历史网络流量输入值的梯度求解,以此向网络中增加相对应的虚假流量值,以达到扰乱敌对方预测模型并导致其预测错误的目的,切实可靠地降低了区域网络的风险。
FGSM(fast gradient sign method)是一种基于梯度生成对抗样本的算法,属于对抗攻击中的无目标攻击(即不要求对抗样本经过model预测指定的类别,只要与原样本预测的不一样即可)。在构建深度神经网络结构的时候,常规的模型训练在更新参数时需要求损失函数最小值,沿着梯度的反方向移动,将参数减去计算得到的梯度,也就是所谓的梯度下降算法。这样就能使得损失值越来越小,从而模型预测对的概率越来越大。而FGSM可以理解为梯度上升算法,既然无目标攻击是希望模型将输入经过处理后得到的值与实际值不相同都算攻击成功,那么只需要损失值越来越大就可以达到这个目标,也就是模型预测的概率中对应于真实值的概率越小越好,这和原来的参数更新目的正好相反。因此只需要在输入矩阵中加上计算得到的梯度方向,这样修改后的矩阵经过网络时的损失值就比修改前的矩阵经过网络时的损失值要大,使得损失函数最大化。换句话说,模型能预测正确的概率变小了。这就是FGSM算法的内容,一方面是基于输入矩阵计算梯度,另一方面更新输入矩阵时是加上梯度,而不是减去梯度,这和常见的学习模型更新参数正好背道而驰。从而使原本训练好的模型判断错误,输出错误结论。
本发明方法结合实际情况举出实施步骤,具体操作为::
(1)对防测绘方的各个区域的流量值进行采集并进行处理,具体包括以下子步骤:
(1.1)对防测绘方的各个区域按照地理位置特征划分为若干区域,分别采集网络流量的进出量,本实施例提供三种简易网络流量采集方式,一般采集三个月以上:
方式一:利用网络抓包软件wireshark进行抓包获取显示网络封包的详细信息。Wireshark是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。更为重要的是wireshark只能查看封包,而不能修改封包的内容,或者发送封包。基于该软件可以对某个区域内所有的路由器,以固定的时间间隔对网络流量的进出量进行统计并进行记录。
方式二:利用Putty软件查看路由流量,PuTTY是一个Telnet、SSH、rlogin、纯TCP以及串行接口连接软件。PuTTY为一开放源代码软件,主要由Simon Tatham维护,使用MITlicence授权。首先下载SSH登录工具Putty,打开putty,输入登录用户名、路由IP和端口,点击"Open"进行登录,进入对话界面,输入密码后回车。进入到主界面:根据自己的需要选择不同的查看方式。目前该软件可以有两种选择,一种是查看内网实时流量,另一种是查看每个网络接口的流量。可以输入对应选择的编号,并回车进入查看流量界面。基于该软件可以查看指定区域内的网络接口的流量,并以固定的时间间隔对网络流量的进出量进行统计并进行记录。
方式三:如果条件允许可以利用通信运营商提供信息,一般是具有一定规模的企业或者政府机构。由于每个TCP,、UDP包都要计流量,且包含源端口和目的端口信息,所以可以通过提供设备的端口地址而得到进出规定区域内的流量值。然后按照要求对端口进行分类,并以固定的时间间隔对网络流量的进出量进行统计并进行记录。
(1.2)对步骤(1.1)采集的网络流量的进出量进行处理,具体为:将采集的网络流量的进出量,先以时间段划分(一般以15分钟为一个时间段),划分好的流量值均为同一时间段的不同区域。再将同一时间段的不同区域流量值进行排序,以此形成一个同一时间段的流量矩阵。以此作为其他时间段的流量矩阵构建标准,将区域流量值和矩阵位置进行对应,建立具有时间属性的网络流量数据集。
(2)用步骤(1)采集到的网络流量数据集训练所选择网络流量预测模型,具体操作为:
(2.1)将步骤(1)采集到的时间属性的网络流量数据集,按照适合的时间跨度,划分出历史网络流量输入矩阵和该历史网络流量输入矩阵对应的预测流量矩阵。具体为,以一个时间跨度的流量矩阵序列作为历史网络流量矩阵,以该时间跨度相邻的下一个时间跨度的流量矩阵序列作为预测流量矩阵。所述历史网络流量输入矩阵为向流量预测模型f(·)的输入流量矩阵,预测流量矩阵为历史网络流量输入矩阵通过流量预测模型f(·)后的输出流量矩阵。将划分好的历史网络流量输入矩阵和预测流量矩阵一一对应,并按照比例划分出网络流量训练数据集和测试数据集,所述划分比例一般设置为7:3。
(2.2)将攻击者有可能会使用的流量预测模型搭建出来,所述流量预测模型包括深度信念网络(DBN)、卷积神经网络(CNN)、循环神经网络(RNN)和长短时记忆网络(LSTM)四种;可以根据实际情况选择其中一种流量预测模型进行搭建,具体为:卷积神经网络(CNN)适合样本数量较大,对预测精度要求较高且时延不敏感的非线性时间序列;循环神经网络(RNN)适合动态的短相关时间序列;长短时记忆网络(LSTM)适合样本数量多且具有长期依赖性的时间序列、深度信念网络(DBN)适合样本数量较小的非线性时间序列。
(2.3)将(2.1)划分出的训练数据集对步骤(2.2)构建的流量预测网络模型进行训练,得到流量预测深度学习模型,将该流量预测深度学习模型的参数保存至本地文件。
(2.4)用步骤(2.1)划分的测试数据集对步骤(2.3)训练得到的流量预测深度学习模型的可靠性进行验证,具体为:将步骤(2.1)采集到的测试数据集测试集输入到步骤(2.3)训练得到的流量预测模型,设流量预测模型f:X→Y,网络流量测试数据集输入该模型的矩阵为xt∈X,则流量预测模型的输出为f(θ,xt)=yt,yt∈Y,即通过该流量预测模型得到网络流量测试数据集的预测结果为f(θ,xt)=yt,yt∈Y,而实际值为其中θ为由网络流量预测模型训练得到的参数;所述实际值/>为输入的测试数据集对应的实际相邻的下一个时间跨度网络流量矩阵,观察对应得到输出的预测网络流量矩阵序列预测值,将预测值该预测网络流量矩阵序列和实际值/>进行对比,根据侧重点(预测值与实际值平均数值差异、预测值与实际值走势吻合度、预测值的平稳性等)选择适合的方式,查看该流量预测模型是否满足预测要求;若该流量预测模型不满足预测要求,则重复步骤(2.1)~步骤(2.3)直至该流量预测模型满足预测要求。
(3)基于步骤(2)训练好的流量预测模型,计算测试数据集的真实值和经过流量预测模型之后的预测值之间损失函数,根据该损失函数计算其梯度矩阵,将该梯度矩阵标准化,对标准化后的梯度矩阵乘以扰动系数,得到扰动矩阵,具体操作为:
(3.1)产生下一个阶段的预测值,具体操作为:将采集到的历史网络流量数据,按照网络流量预测模型输入的时间尺寸大小划分为时间跨度相等的矩阵序列。将按照时间划分完的矩阵序列中倒数第二段时间矩阵的网络流量预测值作为构建好的模型的输入xt,经过模型运算实现对矩阵序列中倒数第一段时间的网络流量值进行预测,并以倒数矩阵序列中第一段时间的网络流量值作为输出yt。以此将得到基于已知的矩阵序列中倒数第二段时间网络流量数据,倒数第一段时间的网络流量预测值。
(3.2)计算出矩阵序列中倒数第一段时间的流量的真实值和经过模型之后的预测值yt之间的损失函数,具体为:根据步骤(3.1)计算的结果yt,对矩阵序列中倒数第一段时间的流量值求损失函数,其计算公式为:/>而其中的/>分别为预测值矩阵和真实值矩阵的第i行j列的流量值,损失函数/>为标量,为方便记忆简记为J(θ,xt,yt)。
(3.3)通过对损失求关于输入矩阵(矩阵序列中倒数第二段时间网络流量矩阵)的梯度函数得到其梯度矩阵,具体操作包括:
根据(3.2)得到矩阵序列中倒数第一段时间的流量值的真实值和经过模型之后的预测值之间的损失函数J(θ,xt,yt),并对其求关于矩阵序列中倒数第二段时间的流量矩阵xt的梯度矩阵,梯度矩阵的第i行j列元素的值计算公式为:其中/>为矩阵序列中倒数第二段时间流量矩阵xt的第i行j列元素,最后记整个梯度矩阵为
(3.4)对整个梯度矩阵进行标准化操作,具体操作包括:通过sign(·)函数对梯度矩阵进行标准处理以便以此为依据添加扰动,即对梯度矩阵/>中大于0的元素替换成1,小于等于0的元素变为0。理论中sign(·)函数将小于0的元素替换成-1,而本实施例中让小于0的元素变为0的原因在于,现实操作中无法把真实网络中的流量减少。将经过sign(·)函数处理后的梯度矩阵/>记作为
(3.5)生成扰动矩阵,具体操作包括:
根据步骤(3.4)中被标准化处理过梯度矩阵乘以一个微小的扰动系数∈,形成扰动矩阵/>其中扰动系数∈足够小以至于使中的任意元素不足对应原倒数第二段时间输入矩阵元素的十分之一。
(4)将得到的扰动矩阵加到实际网络中,生成网络流量防测绘测试样本并进行验证,具体包括以下步骤:
(4.1)向实际网络中添加扰动流量:额外使用一台独立的通讯终端,该通讯终端的输入输出流量不计入历史网络流量统计之中,且该通讯终端能够和该区域中任意一个终端进行数据传输,且能够向指定终端发送指定大小的数据。
(4.2)向防测绘区域中添加对应的流量,实现的方式如下:
由于流量在相邻时间内具有一定的连续性,即相邻时间段(且时间跨度在一定范围内)网络流量值大小相似的特点,且具有很多类似的特性,所以可以将在倒数第二个时间段求得的扰动值添加到现在的时间段中。设此时实际网络流量矩阵为xc,而xc中的元素xc(i,j)计算方式为/>其中x(i,j)表示未添加扰动的网络流量矩阵x的第i行j列的元素值,/>表示添加扰动的网络流量矩阵/>的第i行j列的元素值。具体操作为:利用步骤(4.1)中所述的通讯终端,在一次采集时间段内对需要添加流量的区域中的端口进行通讯,传送文件为提前准备好的不重要的数据,用来向网络中添加所需要的流量。按照求得的中不为零的元素,利用步骤(4.1)中所述的通讯终端,向该元素位置对应的区域中的终端设备,发送该元素大小的数据。且通讯终端发送数据并完成接收这一过程的时长在一次采样间隔时间内。
(4.3)验证是否完成对网络流量数据的添加,具体操作如下:
对(4.1)中所描述的通讯终端进行流量去向分析,使用(1.1)方式一中的软件wireshark进行抓包获取显示网络封包的详细信息,得到由通讯终端发出的数据信息,具体统计各个接收端是否为(4.2)中所需要添加流量的区域,且对应发送的流量大小是否和 中对应的元素一致。或者其他能够对(4.1)中所描述的通讯终端发出的数据去向和大小进行显示和统计的方式,得到相应流量去向信息后,按照时间刻度,对比流量去向和大小是否和/>中对应的元素位置和大小一致。
(5)对于短时间的网络流量的防测绘防御,则不需要进行可持续化操作,直接进行防测绘效果;对于长时间的的网络流量的防测绘防御,则需要进行可持续化操作;所述可持续化操作具体包括以下子步骤:
(5.1)采集并处理后续的网络流量,具体为:
若防测绘方需要对该区域的网络流量进行分析,故进行了抓包操作,但此时抓包得到的数据包含有用来添加扰动的不重要的数据包。因此采集到的流量值是含有添加的扰动流量值,即其中xc是基于各个区域(除了用于添加扰动的通讯终端)采集的网络流量值处理后的矩阵,而xt才是实际基于各个区域(除了用于添加扰动的通讯终端)实际有效的网络流量值处理后的矩阵,/>是通过添加扰动的通讯终端发出的流量值。由此可得,真实的基于各个区域(除了用于添加扰动的通讯终端)有效的网络流量值处理后的流量矩阵xt计算方式为:/>除了这种方法,可以在抓包后进行统计的时候便进行处理,即对来自用于添加扰动的通讯终端发出的数据包不进行统计,故基于此得到的流量值也为实际流量值。
(5.2)将整个防测绘区的实际有效网络流量进行处理,具体操作如下:
将处理好的整个防测绘区的实际有效网络流量,按照模型输入的时间尺寸大小划分为各个时间段,每隔一个时间段,进行一次如下处理:将最后两个时间段的流量矩阵序列进行步骤(3)的操作,即将前面时间段的流量矩阵序列输入流量预测模型,输出后面时间段的流量矩阵序列的预测值,并根据后面时间段的流量矩阵序列的真实值和预测值求出损失函数,再通过前面时间段的流量矩阵序列求得对应梯度矩阵。再由梯度矩阵处理得到对应的扰动矩阵。再按照步骤(4)中的操作,将根据最后两个时间段的流量矩阵序列得到的扰动矩阵,通过用于添加扰动的通讯终端部署到现在区域所处的实际网络之中,得到添加了扰动的网络流量,且敌对方无论采用什么样的方法对流量值进行采样都只能得到添加了扰动的值。
(6)采用均方误差MSE对防测绘效果进行评估,分别计算无防测绘和有防测绘两种情况下的MSE值,对防测绘效果进行验证,,具体操作为:
(6.1)基于流量值离散且数量点不固定的特点,采用MSE(均方误差)对防测绘效果进行评估:MSE(均方误差)统计参数是预测数据和未添加扰动的原始数据对应点误差的平方和的均值,具体公式为:其中n表示输出矩阵的元素个数,计算方式为n=(m+1)×(k+1),输出矩阵为m+1行,k+1列的矩阵,且从第0行第0列开始计算,分别为预测值矩阵和真实值矩阵的第i行j列的流量值。
(6.2)分别计算无防测绘和有防测绘两种情况下的MSE值,具体操作如下:分别计算未添加扰动的原始数据输入矩阵xt得到的对应预测值yt和输入防测绘测试矩阵xc得到的对应预测值yc相对于真实的流量值的MSE值,其中未添加扰动的MSEt为: 而加了扰动的防测绘输入的MSEc为:
(6.3)对比两种不同输入下的MSE值,由于两种不同输入的MSE值均为标量,故当有MSEt<2*MSEC时可以认为防测绘成功。
对于以上处理步骤,并不是一成不变的,可以根据不同的实际防测绘需求进行不同的操作,本发明提供以下实施例:
实施例1
假如发现了敌对方正在通过某种漏洞获取该区域的流量信息,且暂时不能修复该漏洞,操作如下:
如果敌对方获得的流量信息不重要,或者对方无法破解传输文件的加密方式,从而无法得知传输的内容,但可以知道流量值的大小。基于这种情况,在修复漏洞期间则可以充分利用本发明的方法,实时地使用采集得到的含有添加了扰动的实际网络流量值对流量预测模型进行训练,作为可能的敌对方的流量预测模型。并以实时生成的流量预测模型(即流量预测模型的参数会随着时间的变化而变化,变化的趋势由接受的新输入的流量矩阵决定)来产生扰动流量矩阵,并通过用于添加扰动的通讯终端按照该流量扰动矩阵部署到现在区域所处的实际网络之中。因为采集的流量是真实的流量值,并被用于训练模型,以此便可以扰乱敌对方可能随时对防测绘区的网络进行精确预测的行为,达到减少被敌对方精确破坏的几率。
实施例2
假如敌对方可能采取不同的预测方式,或者有多个敌对方,则具体操作如下:
根据不同的网络流量预测算法搭建对应的流量预测模型,用相同的历史网络流量矩阵序列对模型进行训练,再选出测试的网络流量矩阵对模型的可靠性进行验证,对于精度低到无法显示出测试的网络流量的特性的可以认为没有攻击性。将剩下的通过验证的流量预测模型逐个求得相应的流量扰动矩阵,如果大部分的流量扰动矩阵都大致相同,则按照最能代表这些流量扰动矩阵的其中一个,通过用于添加扰动的通讯终端部署到现在区域所处的实际网络之中,得到添加了扰动的网络流量。如果产生的流量扰动矩阵差异较大,则对流量预测模型进行随机排序,按照时间序列进行部署,在不同的时间段使用对应的流量预测模型生成流量扰动矩阵,并通过用于添加扰动的通讯终端按照该流量扰动矩阵部署到现在区域所处的实际网络之中。
实施例3
假如由于某种原因,敌对方只能使用单一的流量预测模型,具体操作如下:
这种情况一般是由于防守方的产生的流量值特性而决定的,由于该网络流量的特性导致只有某种预测模型才有较高精度,而其余预测模型的预测精度不能达到一定要求。此时,便可以只针对于这种流量预测模型进行防测绘,即只需要根据这种流量预测模型计算得到流量扰动矩阵。在网络流量防测绘过程中,实时地使用采集得到的含有添加了扰动的实际网络流量值对流量预测模型进行训练,作为可能的敌对方的流量预测模型。并以实时生成的流量预测模型(即流量预测模型的参数会随着时间的变化而变化,变化的趋势由接受的新输入的流量矩阵决定)来产生扰动流量矩阵,并通过用于添加扰动的通讯终端按照该流量扰动矩阵部署到现在区域所处的实际网络之中。
综上,本发明提供的基于梯度对抗的网络流量防测绘方法能够解决敌对方基于收集到的历史区域网络流量值,进行训练得到网络流量预测模型,能够精确地预测出受害方的未来网络流量值,从而进一步地做出更具有针对性的攻击行为。本发明可以向网络中增加相对应的虚假流量值,以达到扰乱敌对方预测模型并导致其预测错误的目的,切实可靠地降低了区域网络的风险。
Claims (3)
1.一种基于梯度对抗的网络流量防测绘方法,其特征在于,具体包括以下步骤:
(1)将防测绘地区的各个区域划分为若干区域,并对每个划分区域分别采集网络流量的进出量;将同一时刻所有区域的网络流量的进出量整理并构成流量矩阵,并记录好流量矩阵以及流量矩阵采集时的时间,以此对所有收集到的历史网络流量值进行处理,将构建的流量矩阵组成具有时间属性的网络流量数据集;
(2)将步骤(1)采集到的网络流量数据集输入流量预测模型f(·),并训练该流量预测模型f(·);所述流量预测模型包括深度信念网络、卷积神经网络、循环神经网络或长短时记忆网络;
(3)基于步骤(2)训练好的流量预测模型,计算测试数据集的真实值和经过流量预测模型之后的预测值之间损失函数,根据该损失函数计算其梯度矩阵,将该梯度矩阵标准化,对标准化后的梯度矩阵乘以扰动系数,得到扰动矩阵;
(4)构建防测绘测试样本矩阵xc,将该防测绘测试样本矩阵xc输入步骤(2)构建的流量预测模型f(·)中,保存输出的预测值;所述步骤(4)包括以下子步骤:
(4.1)构建防测绘测试样本矩阵xc,具体操作为:将历史网络测试流量矩阵xt和步骤(3)生成的扰动矩阵进行相加,其中,∈为一个微小的值,∈足够小以至于使/>中的任意元素不足历史网络测试流量矩阵xt∈X元素的十分之一;J(θ,xt,yt)表示损失函数,θ为由网络流量预测模型训练得到的参数;yt表示流量预测模型输出的预测值;此时设防测绘测试样本矩阵为xc,而xc中的元素xc(i,j)计算方式为/> 其中/>为历史网络测试流量矩阵xt的第i行j列元素,/>表示生成的扰动矩阵/>的第i行j列的元素值;
(4.2)将步骤(4.1)构建的防测绘测试样本矩阵xc输入步骤(2)构建的流量预测模型f(·)中,设流量预测模型f:X→Y,得到防测绘测试样本矩阵xc∈X在流量预测模型f(·)下对应的输出f(θ,xc)=yc,yc∈Y,其中yc为对应输出,并保存yc;
(5)采用均方误差MSE对防测绘效果进行评估,分别计算并比较无防测绘和有防测绘两种情况下的MSE值,对防测绘效果进行验证;所述步骤(5)包括以下子步骤:
(5.1)基于流量值离散且数量点不固定的特点,采用均方误差MSE对防测绘效果进行评估:均方误差MSE统计参数是预测数据和原始数据对应点误差的平方和的均值,具体公式为:其中n表示输出矩阵的元素个数,计算方式为n=(m+1)×(k+1),输出矩阵为m+1行,k+1列的矩阵,且从第0行第0列开始计算,y(i,j),/>分别为预测值矩阵和真实值矩阵的第i行j列的流量值;
(5.2)分别计算无防测绘和有防测绘两种情况下的MSE值,具体操作如下:分别计算历史网络测试流量矩阵xt得到的对应预测值yt和输入防测绘测试矩阵xc得到的对应预测值yc相对于真实的流量值的MSE值,其中原测试输入的MSEt为:/>而加了扰动的防测绘测试输入的MSEc为:/>
(5.3)对比两种不同输入下的MSE值,由于两种不同输入的MSE值均为标量,故当有MSEt<2*MSEC时可以认为防测绘成功。
2.根据权利要求1所述的基于梯度对抗的网络流量防测绘方法,其特征在于,所述步骤(2)包括以下子步骤:
(2.1)将步骤(1)采集的具有时间属性的网络流量数据集按时间顺序排列,划分为训练数据集和测试数据集;
(2.2)构建流量预测模型f(·),所述流量预测模型f(·)包括深度信念网络、卷积神经网络、循环神经网络和长短时记忆网络;
(2.3)将步骤(2.1)采集到的训练数据集输入到步骤(2.2)构建的流量预测模型中进行训练,得到参数确定的流量预测模型;
(2.4)将步骤(2.1)采集到的测试数据集输入到步骤(2.3)训练得到的流量预测模型,设流量预测模型f:X→Y,网络流量测试数据集输入该模型的矩阵为xt∈X,流量预测模型的输出为f(θ,xt)=yt,yt∈Y,即通过该流量预测模型得到网络流量测试数据集的预测结果为f(θ,xt)=yt,yt∈Y,而实际值为其中θ为由网络流量预测模型训练得到的参数;所述实际值/>为输入的测试数据集对应的实际相邻的下一个时间跨度网络流量矩阵,输出预测的网络流量矩阵序列的预测值,将预测值和实际值/>进行对比,根据预测值与实际值平均数值差异、预测值与实际值走势吻合度或预测值的平稳性选择适合的方式,查看该流量预测模型是否满足预测要求;若该流量预测模型不满足预测要求,则重复步骤(2.1)~步骤(2.3)直至该流量预测模型满足预测要求。
3.根据权利要求2所述的基于梯度对抗的网络流量防测绘方法,其特征在于,所述步骤(3)包括以下子步骤:
(3.1)计算出测试数据集的真实值和经过流量预测模型之后的预测值之间的损失函数,具体为:根据步骤(2.4)计算的结果f(θ,xt)=yt,yt∈Y,对测试数据集求损失函数,其计算公式为:而其中的/>分别为预测值矩阵和真实值矩阵的第i行j列的流量值,损失函数/>为标量,简记为J(θ,xt,yt);
(3.2)通过对损失函数J(θ,xt,yt)求关于测试数据集输入矩阵的梯度函数得到其梯度矩阵,具体为:根据步骤(3.1)得到测试数据集的真实值和经过流量预测模型之后的预测值之间的损失函数J(θ,xt,yt),并对其求关于历史网络测试流量矩阵xt的梯度矩阵,梯度矩阵的第i行j列元素的值计算公式为:其中/>为历史网络测试流量矩阵xt的第i行j列元素,最后记整个梯度矩阵为/>
(3.3)对整个梯度矩阵进行标准化操作,具体操作包括:通过sign(·)函数对梯度矩阵/>进行标准处理以便以此为依据添加扰动,即对梯度矩阵中大于0的元素替换成1,小于等于0的元素变为0;记作为/>
(3.4)生成扰动矩阵,具体操作包括:
根据(3.3)中被标准化处理过梯度矩阵乘以一个微小的值∈,形成扰动矩阵/>其中∈足够小以至于使/>中的任意元素不足历史网络测试流量矩阵xt∈X元素的十分之一。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111037369.6A CN113765716B (zh) | 2021-09-06 | 2021-09-06 | 一种基于梯度对抗的网络流量防测绘方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111037369.6A CN113765716B (zh) | 2021-09-06 | 2021-09-06 | 一种基于梯度对抗的网络流量防测绘方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113765716A CN113765716A (zh) | 2021-12-07 |
CN113765716B true CN113765716B (zh) | 2024-03-29 |
Family
ID=78793145
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111037369.6A Active CN113765716B (zh) | 2021-09-06 | 2021-09-06 | 一种基于梯度对抗的网络流量防测绘方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113765716B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114500298A (zh) * | 2022-01-10 | 2022-05-13 | 南昌首页科技发展有限公司 | 一种网络流量的调度方法、系统、设备及存储介质 |
CN114095285B (zh) * | 2022-01-24 | 2022-04-22 | 军事科学院系统工程研究院网络信息研究所 | 一种利用自适应扰动抵御网络侦察的方法和系统 |
CN114491515B (zh) * | 2022-01-24 | 2022-12-30 | 中国人民解放军国防科技大学 | 基于节点匹配的对抗图生成方法、装置和计算机设备 |
CN114745283B (zh) * | 2022-03-01 | 2024-05-17 | 杭州中奥科技有限公司 | 网络信息保护方法、装置和电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110851782A (zh) * | 2019-11-12 | 2020-02-28 | 南京邮电大学 | 一种基于轻量级时空深度学习模型的网络流量预测方法 |
CN112465015A (zh) * | 2020-11-26 | 2021-03-09 | 重庆邮电大学 | 面向广义非负矩阵分解算法的自适应梯度集成对抗性攻击方法 |
CN112949822A (zh) * | 2021-02-02 | 2021-06-11 | 中国人民解放军陆军工程大学 | 一种基于双重注意力机制的低感知性对抗样本构成方法 |
-
2021
- 2021-09-06 CN CN202111037369.6A patent/CN113765716B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110851782A (zh) * | 2019-11-12 | 2020-02-28 | 南京邮电大学 | 一种基于轻量级时空深度学习模型的网络流量预测方法 |
CN112465015A (zh) * | 2020-11-26 | 2021-03-09 | 重庆邮电大学 | 面向广义非负矩阵分解算法的自适应梯度集成对抗性攻击方法 |
CN112949822A (zh) * | 2021-02-02 | 2021-06-11 | 中国人民解放军陆军工程大学 | 一种基于双重注意力机制的低感知性对抗样本构成方法 |
Non-Patent Citations (2)
Title |
---|
Fast Gradient Projection Method for Text Adversary Generation and Adversarial Training;Xiaosen Wang等;Computer Science;第1-10页 * |
基于时空相关性的卫星网络流量预测;杨力等;计算机工程与应用;第57卷(第7期);第101-106页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113765716A (zh) | 2021-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113765716B (zh) | 一种基于梯度对抗的网络流量防测绘方法 | |
CN114257386B (zh) | 检测模型的训练方法、系统、设备及存储介质 | |
Hurley et al. | HMM-based intrusion detection system for software defined networking | |
Gutzwiller et al. | A task analysis toward characterizing cyber-cognitive situation awareness (CCSA) in cyber defense analysts | |
CN111859400B (zh) | 风险评估方法、装置、计算机系统和介质 | |
Sun et al. | Honeypot identification in softwarized industrial cyber–physical systems | |
Bajcsy et al. | Cyber defense technology networking and evaluation | |
US20230370490A1 (en) | System and method for cyber exploitation path analysis and task plan optimization | |
Leblanc et al. | An overview of cyber attack and computer network operations simulation | |
Stefanova et al. | Off-policy q-learning technique for intrusion response in network security | |
Al-Sanjary et al. | Comparison and detection analysis of network traffic datasets using K-means clustering algorithm | |
CN117176452A (zh) | 一种动态蜜点放置方法及装置 | |
Muhati et al. | Hidden-Markov-model-enabled prediction and visualization of cyber agility in IoT era | |
Manickam et al. | Labelled Dataset on Distributed Denial‐of‐Service (DDoS) Attacks Based on Internet Control Message Protocol Version 6 (ICMPv6) | |
Layeghy et al. | Benchmarking the Benchmark--Analysis of Synthetic NIDS Datasets | |
RU2612275C1 (ru) | Способ мониторинга сетей связи в условиях ведения сетевой разведки и информационно технических воздействий | |
KR101073402B1 (ko) | 네트워크의 트래픽 모의 및 유사성 검증방법 및 네트워크 트래픽 분석시스템 | |
Ahmad et al. | Artificial neural network approaches to intrusion detection: a review | |
Tsochev et al. | Improving the efficiency of idps by using hybrid methods from artificial intelligence | |
Halisdemir et al. | Data quality problem in AI-based network intrusion detection systems studies and a solution proposal | |
Arafat et al. | Analysis of intrusion detection dataset NSL-KDD using KNIME analytics | |
RU2648508C1 (ru) | Способ оценки способности узла компьютерной сети функционировать в условиях информационно-технических воздействий | |
Dobson | Cyber-Forces, Interactions, Terrain: An agent-based framework for simulating cyber team performance | |
Blumbergs et al. | Crossed swords: A cyber red team oriented technical exercise | |
RU2823575C1 (ru) | Способ адаптивного управления системой обеспечения информационной безопасности корпоративной сети связи |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |