«上一篇 下一篇»
  计算机工程  2019, Vol. 45 Issue (12): 119-126  DOI: 10.19678/j.issn.1000-3428.0053315
0

引用本文  

李杰, 周路, 李华欣, 等. 基于生成对抗网络的网络流量特征伪装技术[J]. 计算机工程, 2019, 45(12), 119-126. DOI: 10.19678/j.issn.1000-3428.0053315.
LI Jie, ZHOU Lu, LI Huaxin, et al. Network Traffic Feature Camouflage Technology Based on Generating Adversarial Network[J]. Computer Engineering, 2019, 45(12), 119-126. DOI: 10.19678/j.issn.1000-3428.0053315.

基金项目

国家自然科学基金面上项目(61672350);装备预研教育部联合基金

通信作者

朱浩瑾(通信作者), 教授、博士

作者简介

李杰(1995—), 男, 硕士研究生, 主研方向为网络安全、隐私保护、匿名网络;
周路, 博士研究生;
李华欣, 硕士研究生;
闫璐, 本科生

文章历史

收稿日期:2018-12-06
修回日期:2019-01-11
基于生成对抗网络的网络流量特征伪装技术
李杰 , 周路 , 李华欣 , 闫璐 , 朱浩瑾     
上海交通大学 电子信息与电气工程学院, 上海 200240
摘要:互联网服务提供商通过使用流量分析攻击技术对流量进行分类和监控,目前的防御措施多数缺乏动态性与应对网络环境变化的灵活性,而且依赖于具体的某种流量的特征,容易被探测和屏蔽。为抵御流量分析攻击,提出一种新的流量隐藏技术,代理服务器将流量动态地伪装成任意目标流量,运用生成对抗网络模型来学习目标网络流量的特征,将源流量变为与目标正常流量不可区分的流量,以保障隐私和规避互联网监控。实验结果表明,该技术在准确率等性能指标上表现良好,且拥有同类方案所不具备的动态性,明显提升了流量的匿名性。
关键词生成对抗网络    网络安全    网站指纹    流量分析    流量特征伪装    
Network Traffic Feature Camouflage Technology Based on Generating Adversarial Network
LI Jie , ZHOU Lu , LI Huaxin , YAN Lu , ZHU Haojin     
School of Electronic Information and Electrical Engineering, Shanghai Jiao Tong University, Shanghai 200240, China
Abstract: Internet service providers often use traffic analysis attack technology to classify and monitor traffic. However, most of the current defense measures lack the flexibility to respond to changes in the network environment, and their dependence on specific traffic characteristics makes them easy to be detected and shielded. To defend against these attacks, we propose a new traffic hiding technology, which enables the proxy server dynamically camouflages any target traffic. We use the Generating Adversarial Network(GAN) model to learn the characteristics of the target traffic, making the source traffic indistinguishable from the target normal traffic so as to protect privacy and avoid Internet monitoring. Experimental results show that the proposed technology has better accuracy and flexibility, and the anonymity of traffic is obviously improved under the existing traffic analysis attack technology.
Key words: Generating Adversarial Network(GAN)    network security    Website fingerprint    traffic analysis    traffic feature camouflage    
0 概述

对互联网监控进行防御是匿名通信技术的重要应用[1], 但由于这些受监控协议的流量与其他正常服务的流量相比, 具有不同的特征, 互联网服务提供商可以很容易地使用流量分析技术进行探测, 而不影响其他正常服务的可用性。流量分析技术被建模为一个分类问题, 攻击者预先收集流量的元数据(如时间信息、包长度等), 然后使用机器学习技术进行分类, 互联网监控者便可以根据分类结果对可疑流量进行拦截。

为对抗流量分析技术, 常规的做法是通过模糊化加密流量改变流量的统计特性, 如时间特征和包序列等[2-4]。近年来, 研究人员提出了更高级别的技术, 即流量变形[5], 将一种类型的流量变形为另外的流量。然而, 大多数防御技术的流量一旦被监控系统检测出来就完全丧失了规避的能力。因此, 需要一个更加动态的流量伪装技术。

本文提出一种新型的流量伪装技术, 使用生成对抗网络(GAN)动态地将被监控的流量伪装成任意目标流量。运用生成对抗网络模型, 系统能够自动地提取目标流量特征, 将源流量变形为和目标流量不可区分的流量, 以保障用户隐私和规避互联网监控。

1 相关工作

互联网服务提供者都存在不同程度的网络监控。作为对应, 网络监控者更多地使用流量分析技术实施攻击。流量分析技术可以在很多场景下用来实施侧信道攻击[6-7]。其中最常见的是使用网络流量进行指纹攻击, 特别是网站指纹攻击。但是最近的研究结果显示了最新的匿名技术在流量分析面前依然有弱点[1]。因此, 仍需要提出新的防御措施。

1.1 流量分析攻击

流量分析攻击被建模为一种基于侧信道信息的分类问题。攻击者利用数据包长度、时间序列等信息提取特征, 并在一组网站或者应用中进行分类[8-10]。流量分析攻击在过去十多年被广泛地研究。文献[2]在2012年进行了完善的流量分析与防御研究, 结果显示, 大量的防御措施并不能抵抗简单的攻击。文献[11]提出通过比较数据包序列的相似性对网站进行推测的方法, 使用隐马尔科夫模型对洋葱路由(Tor)环境下的访问网站页面序列进行推测。文献[12]通过k近邻(kNN)分类器使用大量的特征进行分类。文献[13]提出使用随机森林模型的分类器来进行网站指纹攻击。2016年, 文献[8]使用SVM分类器对累计特征(CUMUL)进行分类, 并在互联网进行了测试, 结果表明, 没有方法能够防御互联网级别的网站指纹攻击。文献[14]使用分类分析完成关联分析, 提出基于网络流量的僵尸网络动态检测模型。文献[15]对Tor的运行机制进行深入分析, 归纳总结了其流量特征, 提出了新的Tor流量识别方法。

虽然加密技术有着广泛的应用, 但是攻击者依旧能够从侧信道和使用模式上获取信息。文献[16]研究了在Web2.0下, Web流量的特性发生改变, 将有助于进行更新的流量分类和行为分析。随着更大的数据集和更加强力的攻击手段的出现, 流量分析也越来越引起人们的研究兴趣。

1.2 流量分析攻击的防御

对于有效的流量分析攻击, 研究人员提出了各种不同的防御机制。许多攻击者使用流量的统计特征对流量进行分类, 典型的防御方法即为伪装流量特征。数据填充和空数据包是最常用的包长度以及间隔时间的方法。例如, HTTPOS[3]可以通过策略性地发送HTTP请求的方式隐藏包长度。TrafficMorphing[5]、WTF-PAD[17]、BuFLO[2]和Tamaraw[4]通过不同的策略填充包长度和控制发送时间以掩藏真实的时间和长度信息。然而, 上述技术大多数都被证明是无效的, 而且会带来额外性能代价[12, 18]

由于防御流量分析攻击的需要, 研究者近年来提出了更加有效的、考虑真实情况的防御措施。文献[19]提出了服务端防御以及运行在应用层的轻量级的客户端防御技术。文献[18]则将浏览器由全双工模式变成了半双工模式, 以较小的代价带来了防御效果的提升。文献[20]使用不同的真实流量作为访问网站时的噪音。文献[21]将Tor客户端与网桥的通信流量填充到Skype视频通话流量中。文献[22]通过先加密数据, 然后再对数据流的统计特征, 如数据包的长度、比特频率等进行流量变形, 使得流量特征类似于某种合法协议。

本文解决方案考虑互联网服务提供商使用流量分析攻击对特定的流量模式进行流量监控和拦截的真实场景[23]。因此, 本文研究目标主要在于难以被分类和拦截的网络流量。

本文的主要贡献如下:

1) 提出一种新的流量伪装机制, 以保护匿名网络通信免受流量分析攻击。本文系统使用GAN模型生成与给定流量无法区分的网络流, 使得匿名流量无法被检测。

2) 基于真实数据集对系统进行了一系列最先进的流量分析攻击。评估结果表明了本文研究在一系列先进的流量分析攻击下的有效性和效率。

2 安全模型

本文将攻击者定义为网络监控者, 因此, 攻击者拥有对网络信道的完全控制, 包括监听和存储所有的流量以及劫持基至断开信道[24]

无论是出于商业或是安全的目的, 家庭、公司乃至运营商等互联网服务提供者都存在不同程度的网络监控。但是随着匿名通信技术的快速发展, 其对网络监控的规避能力也在不断增强, 特别是密码学技术的进步[25], 使得通过流量内容进行网络监控变得更加困难, 因此, 攻击者(网络监控者)更多地通过流量的元数据使用流量分析技术对匿名网络进行探测和拦截。

典型的攻击场景为:攻击者监听整个通信信道, 提取出流量的元数据, 使用流量分析技术对流量进行分类, 试图将受监控流量从正常流量中分类并进行拦截。

为应对攻击者的挑战, 本文设计了如图 1所示的防御系统。该系统能够将受攻击者监控的流量通过流量整型的方式变形为类似于正常流量。为更具灵活性, 本文使用GAN自适应地学习目标网络的特征, 并试图产生与目标正常流量不可区分的流量, 使得攻击者无法探测出匿名网络流量。整体攻防场景如图 1所示。

Download:
图 1 整体攻防场景
3 系统设计 3.1 设计动机

为抵抗网络监控者的攻击, 研究者提出了一系列方案。然而, 这些方案都有共同的缺陷, 即缺乏动态性。在传统的方案中, 协议或者程序一旦被设计出来就难以改变, 而网络环境和攻击者的流量分析技术却在不停的变化[18], 而且大多数防御方案一旦被监控系统识别便失去了防御能力。因此, 需要一种能够应对网络环境与攻击方法的灵活的动态流量伪装技术。

与以前对特定流量的伪装技术不同, 本文提出的系统可以自动生成与目标流量不可区分的伪装流量。为了达到此效果, 本文设计了基于生成对抗网络的通用自动化流量伪装系统。生成对抗网络由文献[26]提出并且在图像生成领域获得了成功。然而, 目前对生成对抗网络在匿名通信方面的应用依旧缺乏研究。

3.2 总体设计

系统总体设计如图 2所示。系统架构包含一个GAN生成器、一个流量生成器、本地代理服务器和远程代理服务器。GAN用来学习目标流量的特征分布规律并生成目标特征, 然后将生成的特征发送给流量生成器。流量生成器根据特征生成带有随机性的包序列, 本地和远程代理负责将流量变形并将负载装入生成的流量中。

Download:
图 2 系统总体架构
3.3 生成对抗网络 3.3.1 生成模型

GAN是一种基于对抗过程的生成模型[26]。GAN同时训练2个模型:一个是生成器G, 试图学习训练数据的分布规律; 另一个是判定器D, 试图区分生成的数据与训练数据。GD进行对抗博弈:G从随机噪声中生成输出样本并试图欺骗D, 输出样本属于训练集, 而D尝试将输出样本与训练样本区分开来。这场博弈最后只会有一个最优解存在, 即G学习到了训练样本的分布规律并且生成了与训练集不可区分的数据, 而D则无法分类输出数据和训练数据。

原理上生成对抗网络是一种使用损失函数J(G, D)进行的min-max博弈模型:

$ \begin{array}{l} \mathop {\min }\limits_G \mathop {\max }\limits_D J(G, D) = &{E_{x \sim {\rm{pdata }}}}\left[ {{{\log }_a}D(x)} \right] + \\ & {E_{z \sim pz}}\left[ {1 - {{\log }_a}D(G(z))} \right] \end{array} $

判定器的损失函数JD由二分类器的交叉熵得出, 如下式所示。

$ \begin{aligned} J_{D}=&-E_{x \sim \text { pdata }}\left[\log _{a} D(x)\right]-\\ & E_{x \sim pz}\left[1-\log _{a} D(G(z))\right] \end{aligned} $

生成器的损失函数理论上是判定器损失函数的相反数。为了加速训练过程, JD通过下式进行计算:

$ {J_G} = - {E_{z \sim pz}}{\log _a}D\left( {G\left( z \right)} \right) $

判定器和生成器分别根据这2个损失函数交替进行训练优化, 直到生成器能生成判别器无法区分的输出样本。

3.3.2 模型实现

在本文的系统中, 系统使用GAN生成器以生成不可区分的流量特征, 如算法1所示。GAN生成器根据从目标流量生成的特征(如包数量、包长度、相隔时间等)对模型进行训练, 生成与目标流量不可区分的流量特征用以生成流量。

算法1  生成对抗网络模型

输入  流量特征集Pr, 超参数, 判定器迭代系数k, 批处理量m, 正则化参数λ

输出  产生的流量特征Gθ

1.Initialize a generator Gθ with parameters θ and a discriminator D with parameters ω

2.while Gθ has not coverage do

3.//train thediscriminator

4.for k steps do

5.x=a batch of m training samples from Pr

6.z=a batch of m generated samples from random noise

7.∈=a batch of m uniform random numbers in [0, 1]

8.x=∈×x+(1-∈)×Gθ(z)

9.Update the discriminator with RMSProp algorithm by descending the discriminator’s loss:

$ \begin{aligned} \mathrm{J}_{\mathrm{D}}=& \mathrm{E}_{\mathrm{m}}\left[\mathrm{D}_{\mathtt{ω}}\left(\mathrm{G}_{\mathtt{θ}}(\mathrm{z})\right)-\mathrm{D}_{\mathtt{ω}}(\mathrm{x})+\right.\\ &\left.\mathtt{λ} \times\left(\left\|\nabla_{\mathrm{\hat x}} \mathrm{D}_{\mathtt{ω}}(\mathrm{\hat x})\right\|-1\right) 2\right] \end{aligned} $

10.end for

11.// Training the generator

12.z=a batch of m generated samples from random noise

13.Update the generator with Adam algorithm by descending the generator’s loss:

$ {{\rm{J}}_{\rm{G}}} = - {{\rm{E}}_{\rm{m}}}\left[ {{{\rm{D}}_{\mathtt{ω}}}\left( {{{\rm{G}}_{\mathtt{θ}}}({\rm{z}})} \right)} \right] $

14.end while

在算法1中, 生成网络Gθ和判定网络Dω都是随机初始化的全连接网络。在每次迭代过程中, 生成器学习生成越来越真实的流量特征样本, 而判定器通过学习真实样本和生成器生成的样本的差别来更好地区分出生成样本。生成器与判别器都是通过梯度反向传播(BP)过程进行优化, 并且判别器的梯度会被传递到生成器以帮助生成器了解如何骗过分类器。在交替训练过程中, 生成器每训练一次, 判别器会训练k次以避免过拟合[29]

为了克服传统生成对抗网络难以训练的问题(如难以达到纳什均衡和训练难以收敛), 本文使用Wasserstein GAN[27]作为GAN生成器。根据Arjovsky[28], 从传统GAN中取消最后一层的sigmod函数会更加鲁棒。为了达到更好的收敛效果, 本文使用WGAN[27]作为生成器的损失函数并且运用WGAN-GP[28]作为判别器的损失函数。

3.3.3 特征选择

本文选择6种典型流量特征来训练GAN模型:总发出包数量Nout, 总接收包数量Nin, 发出总字节数Sout, 收到总字节数Sin, 累计字节数Cum以及包平均间隔时间AvgInter。其中文献[8, 12]研究了最显著的流量分析特征。本文使用这些特征训练一个强大的流量分类判别器, 能够帮助生成模型生成高质量的伪装模式。然而, 累计字节数可以由其他的特征计算得出, 所以本文仅训练其中5种特征。

3.4 流量生成器

流量生成器能够根据GAN生成器的流量模式生成具体的包序列。在流量生成算法中, 本文使用流量的累计表示(CUMUL)[8]来指导流量生成过程。对于一条含有包序列P=[p1, p2, …, pN]的流量, 其中, pi的绝对值表示第i个包的长度, pi>0表示第i个包是向外发出的包, 而pi<0表示第i个包是收到的包。流量的CUMUL表示是一个序列C=[c1, c2, …, cN], 其中, c0=0, ci=ci-1+pi, i∈{1, 2, …, N}。文献[8]的研究表明, CUMUL是一个区分流量类型的显著特征。

为生成与训练集不可区分的流量, 本文运用算法2从CUMUL中推导出与GAN生成的流量模型相匹配的网络流。

算法2  流量生成算法

输入   GAN生成的流量特征F

输出  网络流量flow=[p1, p2, …, pN]

1.S = first 100 network flows similar to feature F

2.CUM S = []

3.for k steps do

4.CUM S.append(cumulative representation of s)

5.end for

6.flows = []

7.for sample = 1to MAX SAMP LE do

8.packet count = Nin + Nout

9.flow = []

10.for packet no = 1 to packet count do

11.loop

12.packet = randomly select a packet in S

13.flow.append(packet)

14.CUM F = cumulative representation of flow

15.max_sim =max(similarity(CUM F, cum ∈ CUM S))

16.if max sim > THRESHOLD then

17.break

18.else

19.flow.remove(packet)

20.continue

21.end if

22.end loop

23.end for

24.flows.append(flow)

25.end for

26.return flow∈flows with best similarity with F

在算法2中, 网络流的生成是由从目标流中挑选出的真实网络流主导的。在算法的每一步中, 随机选取在真实流中出现过的包长度集合, 以此防御“特征长度攻击”[12]。此外, 还选择CUMUL相似度比阈值高的包用来确保不可分辩性。在每一个生成的网络流的特征中包含确定的流入包数量、流出包数量和平均间隔时间。最后, 输出是从生成的流中与其他流量模型相似度最高的流。通过上述方法生成具有相似CUMUL的流量流, 并且能够达到无法被流量分析攻击分辨的目的。

3.5 代理系统

代理系统包括一个本地代理服务器和一个远程代理服务器, 它们之间根据流量生成器生成的流量模式进行通信。本地服务器与远程服务器共享同样的流量生成器以及同样的随机数种子。客户端先连接本地服务器并将传输内容发送给它, 随后本地代理根据生成的流量模式将流量变形, 并将生成的流量通过互联网发送给远程代理。

4 实验评价 4.1 数据收集

本文实验所使用的网络流量由本机访问baidu.com的网关收集。baidu.com是中国最大的搜索引擎, 所以被视为“正常”的流量。实验使用pypcap进行网络监听并使用dpkt来分析流量。由于实验仅限于网络流分析, 因此只收集TCP流量。每条网络流量表示为四元组(源地址, 目标地址, 源端口, 目标端口)。由于仅有元数据是实验所需, 每条网络流量仅存储包长度、包方向和时间戳。最终实验收集到10 000条网络流量和30 000个数据包作为数据集。

4.2 模型训练 4.2.1 数据预处理

实验需要将网络流转换为可以由生成对抗网络处理的特征向量。实验选取显著的6种特征:输出包数量, 输入包数量, 输出总字节数, 输入总字节数, 平均间隔时间和累计字节数。最终每条网络流量会被表示为数值向量。

4.2.2 数据归一化

数据归一化在机器学习中是非常重要的技术。为增强生成对抗网络的效果, 首先需要归一化所有数据, 即将所有数据缩放到-1到1区间上。根据对数据的分析, 发现大部分数据数值较小而小部分数据数值较大。所以, 本文使用以下的对数函数对特征进行缩放:

$ f' = 2 \times {\log _M}(\mathit{f} + 1) - 1 $

其中, Mf的上限, f是源特征数值, 而f′则是归一化后的特征数值。

4.2.3 模型结构

本文中生成对抗网络模型的生成器与判别器都是全连接网络。整个系统使用TensorFlow实现。本文使用leaky-relu作为生成器和判别器的激活函数以加快训练速度。详细的网络结构如表 1所示。

下载CSV 表 1 GAN网络结构
4.2.4 训练过程

在本文实验中随机选择20%的数据(2 000条流量)作为测试集, 其他的作为训练集和验证集。参数由多次实验测试选择出的较好结果决定。判别器选择RMSprop优化器[29], 使用10-3的学习率。生成器使用Adam[30]优化器以及10-3学习率和beta1=0.5。判别器的损失函数是带有梯度惩罚的Wasserstein距离[28], 而生成器的损失函数则是Wasserstein距离[27]。训练在100 000次迭代后结束。

4.3 结果评价

为了评价防御效果, 本文实现一系列的流量分析攻击, 如Hermann分类器[31]、VNG++[2]、带宽分类器[2]、时间分类器[2]、Liberatore分类器[32]、Jaccard分类器[33]和Wright分类器[5]。下文将使用以上的流量分析攻击对本文的流量特征防御系统的防御效果进行测量。

4.3.1 效果指标

本文系统的防御效果由机器学习中的评价指标进行衡量。由于攻击者事实上是对不同的流量进行分类, 本文使用准确率和AUC作为评价指标。

实验首先使用同样数量的目标流量和生成流量的训练集训练攻击者的分类器, 然后在测试集中进行分类, 使用分类结果的准确率作为系统防御效果的指标。AUC是在ROC曲线图的以下部分的面积, 而ROC曲线是由真阳性率与假阳性率所绘制的二维坐标图。在本文中, 真阳性率(TPR)指的是流量本身是“正常”流量而且被判定为“正常”的比率, 而假阳性率(FPR)指的是流量本身伪装的流量但被判定为“正常”的比率。

由此可知, 准确率与AUC值是一个处于0到1区间的有理数。对于“随机猜测”的分类器, 准确率与AUC值都应该接近0.5。当准确率与AUC越接近0.5时, 表示分类器效果越差, 本文的防御系统的效果也就越好。

4.3.2 防御效果

表 2显示了在使用和不使用本文的防御系统下分别对测试集进行实验所得的准确率。可以明显看出, 在不使用本文防御系统下, 分类攻击具有较高的准确率, 其中甚至有4种攻击方法高于0.9, 这表示大多数攻击方法能够显著地区分开被监控流量与正常流量。在使用本文系统之后, 观察到准确率显著降低, 平均降到了0.542, 接近0.5。这些结果显示本文的系统能生成与正常流量不可区分的流量。由于准确率值较低, 攻击者几乎不能用流量分析方法区分和拦截被监控流量, 表明本文的系统能够保护流量免遭监控拦截。

下载CSV 表 2 各种攻击方法下的准确率

为进一步衡量效果, 对系统在不同迭代次数n(1 000次, 50 000次, 100 000次)下的效果进行测量。本文使用表 2中表现较好的部分攻击方法(VNG++, Hermann方法)对不同迭代次数下的系统进行测量并给出ROC曲线图, 如图 3所示, 计算出的AUC值见表 3

Download:
图 3 在不同迭代次数下的ROC曲线
下载CSV 表 3 在不同迭代次数下的AUC值

表 3图 3中可以看出, 迭代次数越多能够带来较好的防御效果。当GAN模型训练1 000次时, 攻击方法能够显著地区分出不同的流量, 最高的AUC值甚至能达到0.98。随着迭代次数的提升, 流量伪装效果显著提升, 在10万次迭代后, AUC值接近0.6。从图 3可以看出, 如果监控者希望真阳性率(TPR)高于90%, 那么伪装后的流量也有接近90%的概率(FPR)能通过监控, 说明了本文系统的有效性。

4.3.3 性能开销

由于GAN的特征训练与流量生成过程可以在线下训练, 这些计算代价可以忽略。本文系统的额外代价主要体现在流量变形过程, 即延迟和带宽损失。然而, 这些代价是必须的, 因为包长度与间隔时间是进行流量变形的重要特征, 所以变形后的流量与目标流量的带宽应该比较相似, 具体的损失与源流量和目标流量的差异性有关。

本文将百度联盟推广的流量变形为www.baidu.com, 总体时间损失由传送每个包的平均额外时间得出, 结果如图 4所示。大多数(96%)延迟低于0.5 s, 这表示本文系统具有实际意义。

Download:
图 4 延迟分布
4.4 本文系统与同类防御方案的对比分析

本文系统与部分同类防御方案的对比如表 4所示。

下载CSV 表 4 同类防御方案的对比

表 1中, SkypeMorphing[23]直接使用Skype视频流量, 与Skype流量具有不可区分性, 同时由于视频流量具有高带宽低延迟的特性, 导致其可以充分利用信道, 具有较低的性能花销, 然而其缺乏动态性, 一旦Skype被封锁, 该方案便完全失效。而BuFLO通过固定带宽与延迟的方式, 保护其内部流量间的隐私性, 却会带来大量的额外花销以及显著的流量特征, 同样地, 由于其算法固定, 在攻击者能够将其分类后便完全丧失了可用性, 依旧缺乏动态性。TrafficMorphing通过矩阵运算方法将一种流量变形为另一种流量, 然而根据文献[2]的研究, TrafficMorphing能够被Hermann分类器以近80%的概率被分类成功, 这显示出其与正常流量的不可区分性较差, 容易被检测出来, 不具有良好的匿名性, 根据其选择的目标流量不同, 具有不同的带宽和延迟花销, 由于具备一定的动态性, 可以选择不同的目标流量, 但其转化算法过于固定, 依旧欠缺灵活性。

本文系统具备良好的与正常流量的不可区分性, 满足匿名网络的基本需求, 同时额外花销处于可接受范围, 而且具备强大的动态性, 有效地缓解了同类系统所面临的共同问题, 具有适应网络环境变化的能力。

5 结束语

为抵御流量分析攻击技术, 本文提出一种基于生成对抗网络的网络流量特征伪装技术。该技术能够动态地将源流量伪装为目标流量的原型系统, 以防止互联网服务提供商屏蔽任意特定流量。通过引入分类攻击下的不可区分性, 对目标流量和伪装流量间的不可区分性进行建模, 使用真实的网络数据对系统进行评价。实验结果表明, 与已有的解决方案相比, 本文系统能够灵活地适应网络环境的变化, 在被探测后仍具有规避能力。下一步将把本文系统应用到更大的匿名通信系统下以提升其在真实网络条件下的性能。

参考文献
[1]
VICTORS J, LI M, FU X. The onion name system[J]. Proceedings on Privacy Enhancing Technologies, 2017(1): 21-41.
[2]
DYER K P, COULL S E, RISTENPART T, et al. Peek-a-boo, i still see you: why efficient traffic analysis countermeasures fail[C]//Proceedings of IEEE Symposium on Security and Privacy. Washington D. C., USA: IEEE Press, 2012: 332-346.
[3]
LUO Xiapu, ZHOU Peng, CHAN E W W, et al. HTTPOS: sealing information leaks with browser-side obfuscation of encrypted flows[C]//Proceedings of IEEE Network and Distributed System Security Symposium. Washington D. C., USA: IEEE Press, 2011: 11-23.
[4]
CAI Xiang, NITHYANAND R, WANG Tao, et al. A systematic approach to developing and evaluating website fingerprinting defenses[C]//Proceedings of 2014 ACM SIGSAC Conference on Computer and Communications Security. New York, USA: ACM Press, 2014: 227-238.
[5]
WRIGHT C V, COULL S E, MONROSE F. Traffic morphing: an efficient defense against statistical traffic analysis[C]//Proceedings of IEEE Network and Distributed System Security Symposium. Washington D. C., USA: IEEE Press, 2009: 23-31.
[6]
LIU Yunzhong, ZHANG Rui, SHI Jing, et al. Traffic inference in anonymous manets[C]//Proceedings of the 7th Annual IEEE Communications Society Conference on Sensor Mesh and Ad Hoc Communications and Networks. Washington D. C., USA: IEEE Press, 2010: 1-9.
[7]
LI Huaxin, XU Zheyu, ZHU Haojin, et al. Demographics inference through Wi-Fi network traffic analysis[C]//Proceedings of the 35th Annual IEEE International Conference on Computer Communications. Washington D. C., USA: IEEE Press, 2016: 1-9.
[8]
PANCHENKO A, LANZE F, PENNEKAMP J, et al. Website fingerprinting at internet scale[C]//Proceedings of Network and Distributed System Security Symposium. San Diego, USA: [s.n.], 2016: 23-32.
[9]
WANG Dawei, ZHANG Luoshi, YUAN Zhenlong, et al. Characterizing application behaviors for classifying P2P traffic[C]//Proceedings of 2014 IEEE International Conference on Computing, Networking and Communications. Washington D. C., USA: IEEE Press, 2014: 21-25.
[10]
CHEN Yimin, JIN Xiaocong, SUN Jingchao, et al. POWERFUL: mobile App fingerprinting via power analysis[C]//Proceedings of IEEE Conference on Computer Communications. Washington D. C., USA: IEEE Press, 2017: 1-9.
[11]
CAI X, ZHANG X C, JOSHI B, et al. Touching from a distance: Website fingerprinting attacks and defenses[C]//Proceedings of 2012 ACM Conference on Computer and Communications Security. New York, USA: ACM Press, 2012: 605-616.
[12]
WANG Tao, CAI Xiang, NITHYANAND R, et al. Effective attacks and provable defenses for Website fingerprinting[C]//Proceedings of USENIX Security Symposium. Washington D. C., USA: IEEE Press, 2014: 143-157.
[13]
HAYES J, DANEZIS G. K-fingerprinting: a robust scalable Website fingerprinting technique[C]//Proceedings of USENIX Security Symposium. Washington D. C., USA: IEEE Press, 2016: 1187-1203.
[14]
CHENG Shuping, TAN Liang. Dynamic detection model in Botnet based on network traffic[J]. Computer Engineering, 2014, 40(11): 106-112. (in Chinese)
成淑萍, 谭良. 基于网络流量的僵尸网络动态检测模型[J]. 计算机工程, 2014, 40(11): 106-112. DOI:10.3969/j.issn.1000-3428.2014.11.021
[15]
HE Gaofeng, YANG Ming, LUO Junzhou, et al. Online identification of Tor anonymous communication traffic[J]. Journal of Software, 2013, 24(3): 540-556. (in Chinese)
何高峰, 杨明, 罗军舟, 等. Tor匿名通信流量在线识别方法[J]. 软件学报, 2013, 24(3): 540-556.
[16]
XIE Yi, LI Man, YAN Yafang. New features of HTTP traffic in Web2.0[J]. Data Communications, 2015, 4: 33-37. (in Chinese)
谢逸, 李曼, 颜雅芳. Web2.0下HTTP流量的新特征[J]. 数据通信, 2015, 4: 33-37.
[17]
JUAREZ M, IMANI M, PERRY M, et al. Toward an efficient Website fingerprinting defense[C]//Proceedings on European Symposium on Research in Computer Security. Berlin, Germany: Springer, 2016: 27-46.
[18]
WANG Tao, GOLDBERG I. Walkie-talkie: an efficient defense against passive Website fingerprinting attacks[C]//Proceedings of the 26th IEEE USENIX Security Symposium. Washington D. C., USA: IEEE Press, 2017: 1375-1390.
[19]
CHERUBIN G, HAYES J, JUAREZ M. Website fingerprinting defenses at the application layer[J]. Proceedings on Privacy Enhancing Technologies, 2017(2): 186-203.
[20]
CUI Weiqi, YU Jianmin, GONG Yanmin, et al. Realistic cover traffic to mitigate Website fingerprinting attacks[C]//Proceedings of the 38th IEEE International Conference on Distributed Computing Systems. Washington D. C., USA: IEEE Press, 2018: 1579-1584.
[21]
MOGHADDAM H M, LI B, DERAKHSHANI M, et al. Skypemorph: protocol obfuscation for tor bridges[C]//Proceedings of 2012 ACM Conference on Computer and Communications Security. New York, USA: ACM Press, 2012: 97-108.
[22]
WILEY B. Dust: a blocking-resistant internet transport protocol[EB/OL].[2018-05-21].http://blanu.net/Dust.pdf.
[23]
LING Zhen, LUO Junzhou, WU Kui, et al. TorWard: discovery of malicious traffic over tor[C]//Proceedings of Conference on Computer Communications. Washington D. C., USA: IEEE Press, 2014: 1402-1410.
[24]
BARRADAS D, SANTOS N, RODRIGUES L. Effective detection of multimedia protocol tunneling using machine learning[EB/OL].[2018-05-25].https://www.jianshu.com/p/ea289a3b73c9.
[25]
LI Li, WU Zhenqiang. Research and implementation of anonymous communication scheme with multicast network coding[J]. Computer Engineering, 2016, 42(12): 97-101. (in Chinese)
李立, 吴振强. 多播网络编码匿名通信方案研究与实现[J]. 计算机工程, 2016, 42(12): 97-101. DOI:10.3969/j.issn.1000-3428.2016.12.017
[26]
GOODFEOOW I, POUGET-ABADIE J, MIRZA M, et al. Generative adversarial nets[C]//Proceedings of Conference on Neural Information Processing Systems. Washington D. C., USA: IEEE Press, 2014: 2672-2680.
[27]
ARJOVSKI M, CHINTALA S, BOTTOU L. Wasserstein generative adversarial networks[C]//Proceedings of International Conference on Machine Learning. Washington D. C., USA: IEEE Press, 2017: 214-223.
[28]
GULRAJANI I, AHMED F, ARJOVSKY M, et al. Improved training of wasserstein gans[C]//Proceedings of International Conference on Neural Information Processing Systems. Washington D. C., USA: IEEE Press, 2017: 5767-5777.
[29]
TIELEMAN T, HINTON G. Lecture 6.5-rmsprop:divide the gradient by a running average of its recent magnitude[J]. Neural Networks, 2012, 4(2): 26-31.
[30]
KINGMA D P, BA J. Adam:a method for stochastic optimization[J]. Computer Science, 2014(115): 1125-1137.
[31]
HERRMANN D, WENDOLSKY R, FEDERRATH H. Website fingerprinting: attacking popular privacy enhancing technologies with the multinomial Naïve-Bayes classifier[C]//Proceedings of 2009 ACM Workshop on Cloud Computing Security. New York, USA: ACM Press, 2009: 31-42.
[32]
LIBERATORE M, LEVINE B N. Inferring the source of encrypted HTTP connections[C]//Proceedings of the 13th ACM Conference on Computer and Communications Security. New York, USA: ACM Press, 2006: 255-263.
[33]
SUN Qixiang, SIMON D R, WANG Y M, et al. Statistical identification of encrypted Web browsing traffic[C]//Proceedings of IEEE Symposium on Security and Privacy. Washington D. C., USA: IEEE Press, 2002: 124-136.