基于深度学习的网站指纹

Tor通过对内容的加密和重重随机代理,为互联网用户提供了匿名服务,能有效对抗监察者的审查。然而,研究人员发现,由于Tor的流量中仍有一些特征可以进行识别,通过对Tor的WF(Website Fingerprinting,网站指纹)攻击,可以判断出用户正在访问的网站。近年来,研究人员先后提出使用包括k-NN[1]、SVM[2]和随机森林(Random Forest,RF)[3]等不同机器学习算法进行网站指纹的方法,并在测试集上取得了90%以上的准确率。

不过这些方法注重于特征选择,从而对流量的特征变化较为敏感,而且只在封闭环境(Closed world)下进行测试,在实际使用中仍有局限性。为此,作者提出了基于深度学习的自动化网站指纹方法,分别采用堆栈去噪自编码器(Stacked Denoising Autoencoder,SDAE)、卷积神经网络(Convolutional Neural Network,CNN)和长短期记忆(Long-Short Term Memory,LSTM)网络,通过学习原始流量进行特征提取构建指纹,进而对网站进行识别。

图1 SDAE分类器
图2 CNN分类器
图3 LSTM网络和LSTM单元

自编码器(Autoencoder,AE)是一种前馈网络,专门用于通过降维来进行特征学习。将多个AE堆积形成深层模型,可以对输入数据的最显着特征进行分层提取,并根据派生特征进行分类,使得SDAE模型能够用于WF。CNN由一系列卷积层构成。卷积层也用于特征提取,从第一层的低级特征开始,逐级抽象。卷积层学习多种过滤器,这些过滤器可以显示出输入数据中包含特定特征的区域,然后对这些输入实例进行降采样,并保留特殊区域。这样,CNN可以检索最重要的特征来进行分类。SDAE需要逐块进行预训练,而CNN不需要大量的预处理。LSTM分类器是特殊类型的循环神经网络(Recurrent Neural Network),具有增强记忆能力。LSTM的设计允许学习数据中的长期依赖关系,使分类器能够解释时间序列。此处输入的流量轨迹基本上是Tor单元的时间序列,这些动态时间序列很可能包含网站指纹。

作者通过Tor和Tor浏览器收集了360万个对Alexa Top 1200的访问数据,并经过筛选,形成了4个主要的数据集CW100CW200CW500CW900,分别包含了筛选后的100个、200个、500个和900个网站的各2500次访问数据,作为封闭环境(Closed world)的训练集和测试集。作者对Alexa Top 400, 000的网站进行访问,收集400, 000条数据,对CW200中的网站分别进行了2000次访问,收集400, 000条数据,这800, 000条数据构成开放环境(Open world)的数据集。

作者的测试结果如图4和图5。由于随着时间的变化,网站内容会发生变化,使用先前收集的数据训练出来的模型会造成准确率下降,因此作者又进行了时间上的对比实验,如图6。综合上述实验,可以看出,整体上SDAE模型表现较好,且最为稳定。由于CNN需要更少的参数,它的训练是最快的,但也更容易过拟合。LSTM执行速度最慢,但由于其结构特性,它具备最佳的泛化能力,而其反向传播的特性会造成处理长时间的数据时的性能下降。

图4 封闭环境下的测试(经过调参后,对 CW100 进行测试,获取的随单个网站访问次数(trace)增加而变化的准确率(Accuracy)和损失(Loss),其中由于LSTM在时间限制下的反向传播,LSTM的训练输入数据量是最小的,且保持不变)
图5 开放环境下的测试(CW200的2000次访问数据和Alexa Top 400 000的访问数据)
图6 时间的增加对准确率的影响(数据集为CW200,CUMUL为[2]中提出的方法,作为对比)

世界上没有绝对的安全,使用Tor也不能带来完全的匿名。随着时间和技术的发展,针对深度学习的对抗也终将运用于Tor网络中。攻防是场长期的博弈战,此起彼伏,此消彼长。而在攻防的对抗中,技术将始终是核心,并得以不断升华。

参考文献:

[1] T. Wang, X. Cai, R. Nithyanand, R. Johnson, and I. Goldberg, “Effective Attacks and Provable Defenses for Website Fingerprinting,” in USENIX Security Symposium. USENIX Association, 2014, pp. 143–157.

[2] A. Panchenko, F. Lanze, A. Zinnen, M. Henze, J. Pennekamp, K.Wehrle, T. Engel, “Website fingerprinting at internet scale,” in Network & Distributed System Security Symposium (NDSS). IEEE Computer Society, 2016, pp. 1–15.

[3] J. Hayes and G. Danezis, “k-fingerprinting: a Robust Scalable Website Fingerprinting Technique,” in USENIX Security Symposium. USENIX Association, 2016, pp. 1–17.

(论文原文:Vera Rimmer、Davy Preuveneers、Marc Juarezx、Tom Van Goethem、Wouter Joosen. Automated Website Fingerprinting through Deep Learning. NDSS 2018. https://www.ndss-symposium.org/ndss2018/programme/#03A)

(本文完成于2018年4月26日,2018年4月27日首发于ArkTeam

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据