论文阅读:Deep Fingerprinting: Undermining Website Fingerprinting Defenses with Deep Learning

 论文github:https://github.com/deep-fingerprinting/df

论文数据:https://drive.google.com/drive/folders/1kxjqlaWWJbMW56E3kbXlttqcKJFkeCy6?usp=sharing

摘要

网站指纹识别可以让攻击者确定用户通过加密方式访问过哪些网站,并且网站指纹攻击是有效的。作者提出了深度指纹(Deep Fingerprinting),是一种针对Tor的网站指纹攻击,利用CNN设计了复杂架构。DF在没有防御的Tor流量达到了98%以上的准确率,对有防御的流量准确率仍然超过90%。

1. 介绍

Tor已经成为匿名浏览互联网的工具,然而Tor很容易受到流量分析的攻击。WF允许攻击者通过分析网络流量中的模式来识别加密连接中的网页。

WF的原理:网站内容的差异(例如,不同的图像、脚本、样式)可以从网络流量中推断出来,即使流量已被加密。从机器学习的角度来看,WF是一个分类问题:在一组网站上训练一个分类器,提取每个网站独有的网络流量特征。

针对这些攻击,提出了一些防御措施。WF防御在流量中添加虚拟报文,并在真实报文中添加延迟,目的是隐藏WF攻击所利用的流量突发和报文长度等特征。其次,提出了WTF-PAD,并证明它能够以合理的开销有效防御WF攻击。最近,提出了另一种防御方法,称为walkkie - talkie (W-T)。文章主要解决的问题是,是否可以改进攻击以破坏新防御的有效性。

文章的主要贡献如下:

  1. 提出了深度指纹(DF),一种基于CNN的新型WF攻击,使用简单的输入格式,不需要手工制作分类特征。

  2. 数据集为95个分类,每个类别1000个样本。

  3. 在使用WTF-PAD和W-T防御的Tor流量进行了验证。针对WTF-PAD,攻击准确率达到90%。针对W-T,攻击准确率达到49.7%。

2. 威胁模型

Tor的目标是保护用户免受窃听者的攻击,然而,WF攻击可以破坏Tor的保护。研究表明,攻击者可以通过利用网络流量中的模式来识别Tor用户访问的页面。

攻击者通过数据包序列中提取出每个网站独有的特征。常用的特征有:数据包大小频率,两个方向的总传输时间和体积,编辑距离得分,以及每个方向的流量突发数量等。攻击者利用这些特征向量用于训练一个监督分类器,该分类器可以学习到网站访问的特征。

文章假设网络攻击者是本地的,他只能访问用户和Tor网络入口节点之间的链接,并且是被动的,即他可以记录网络数据包,但不能修改、延迟、丢弃或解密它们。

图1描述了攻击场景:客户端通过Tor匿名浏览Web,攻击者拦截客户端与Tor之间的流量。我们假设攻击者知道客户的身份,只是为了识别网站。只要攻击者能够访问用户和入口节点之间的TLS连接,他就可以获得客户端的IP地址。在入口节点之外,Tor已经剥离了一层加密,客户端的IP不再出现在网络数据包的报头中。

3. 背景和相关工作

这一部分请各位读者自行阅读吧,主要介绍了WF攻击、WF防御、基于DL的WF攻击和深度学习等知识。

4. 数据收集

共三个数据集,主要训练的数据集为NoDef,这个数据集共有95个类别,每个类别1000条样本。

数据集描述:

X_<type of data>_<type of evaluation>.pkl : Packet's directions sequence
y_<type of data>_<type of evaluation>.pkl : Corresponding website's classes sequece

<type of data> --Three different data sets used for training, validation, and testing 

<type_of_evaluation> --Three different evaluations: 
                       NoDef: Tor's trafic traces without defense
                       WTFPAD: Tor's trafic traces with WTF-PAD defense
                       WalkieTalkie: WTFPAD: Tor's trafic traces with Walkie-Talkie defense

数据集格式:

X_<type of data>_<type of evaluation>.pkl --Array of network traffic sequences.
    The dimension of X's dataset is [n x 5000] in which 
    n -- Total number of network traffic sequences instances
    5000 -- Fixed length of each network traffic sequence instance.
y_<type of data>_<type of evaluation>.pkl --Array of the websites' labels
    The dimension of y's dataset is [n] in which
    n --Total number of network traffic sequences instances

E.g.

X_<type of data>_<type of evaluation>.pkl = [[+1,-1, ..., -1], ... ,[+1, +1, ..., -1]]
y_<type of data>_<type of evaluation>.pkl = [45, ... , 12]
In this case:
   - the 1st packet sequence [+1,-1, ..., -1] belongs to website number 45
   - the last packet sequence [+1, +1, ..., -1] belongs to website number 12

5. 实验评估

5.1 环境

我们对DF模型的实现使用Python深度学习库Keras作为前端,Tensorflow作为后端,Tensorflow版本为1.15。

对于流量数据的特征,本篇文章只考虑数据包的方向。

5.2 DF超参数调优

搜索空间以及最终选择的值如表1所示。

使用Dropout和Batch Normalization (BN)来防止过拟合。

5.3 DF与AWF的差异

5.4 非防御数据集的封闭世界评价

我们在非防御数据集上评估了封闭世界场景中DF攻击的性能,该数据集包括来自没有WF防御的封闭世界数据集的网站跟踪。我们将DF模型与最先进的WF攻击进行了比较:k-NN, CUMUL, k-FP, AWF和SDAE。我们在我们的非防御数据集上重新评估这些攻击,并应用k-fold交叉验证来训练它们的分类器并测试它们的性能。

5.5 硬件性能

使用NVIDIA GTX 1070和8gb GPU内存的GPU加速,SDAE需要16分钟的训练(13分钟的预训练和3分钟的微调过程),DF需要64分钟的30 epoch训练。AWF模型需要4分钟进行30 epoch的训练。如果没有GPU, SDAE需要96分钟,DF需要大约10小时,AWF需要1小时。对于训练其他攻击,k-NN需要12.5小时,CUMUL需要57小时(并行4个进程),k-FP需要1小时。

5.6 防御数据集的封闭世界评估

5.7 开放世界评估

6. 讨论

我们的研究结果表明,深度学习,特别是DF方法,是针对Tor的WF攻击的强大工具。此外,我们针对防御流量的结果表明,即使在开放世界环境中,WTF-PAD也可能容易受到基于深度学习的WF的攻击,精度很高。

7. 结论

提出了一种WF攻击,称为深度指纹(DF),使用基于CNN的复杂设计来提取特征和分类。封闭世界结果表明,DF攻击优于其他最先进的WF攻击,包括对WTF-PAD防御的流量的准确率超过90%。还进行了开放世界实验,包括首次使用深度学习对防御流量进行WF攻击的开放世界评估。在无防御的流量中,DF攻击达到了0.99的精度和0.94的召回率,而对WTF-PAD,它达到了0.96的精度和0.68的召回率。

  • 18
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值