• 美文
  • 文章
  • 散文
  • 日记
  • 诗歌
  • 小说
  • 故事
  • 句子
  • 作文
  • 签名
  • 祝福语
  • 情书
  • 范文
  • 读后感
  • 文学百科
  • 当前位置: 柠檬阅读网 > 范文 > 正文

    基于动态浏览器指纹的链接检测技术研究

    时间:2023-01-17 17:25:22 来源:柠檬阅读网 本文已影响 柠檬阅读网手机站

    高凡,王健,刘吉强

    基于动态浏览器指纹的链接检测技术研究

    高凡,王健,刘吉强

    (北京交通大学智能交通数据安全与隐私保护技术北京市重点实验室,北京 100044)

    随着用户隐私泄露和网络欺诈问题的出现,传统检测机制已经不能阻挡愈演愈烈的攻击行为,需要新的技术手段辅助进行Web安全检测。作为沟通用户与网络数据的桥梁,浏览器广泛应用于用户与各种应用程序之间的交互,其中浏览器指纹包含用户浏览器及设备等多种特征信息,其独特性可以极大地提高用户识别的准确率。但是浏览器指纹随时间不断发生变动,基于静态指纹的研究方案难以满足动态指纹检测的要求。针对这一问题,为了提高动态浏览器指纹的识别和链接检测能力,从多维角度获取参数并进行筛选,得到细粒度和高区分度的特征进行指纹检测,防止过多不必要参数带来的运算代价,并将双向门控循环单元(BiGRU,bidirectional gating recurrent unit)引入指纹检测工作中,提出了基于堆叠BiGRU的动态浏览器指纹链接检测模型,解决了指纹检测过程中忽略前后向信息交互导致的检测精度不高的问题,在准确率和链接时长等指标上有了一定的提升。进而针对不同特征参数的重要性不同,赋予相同权重会造成检测误差的问题,结合注意力机制聚焦稳定性更强的指纹特征,提出了基于Att-BiGRU的动态浏览器指纹链接检测模型,较堆叠BiGRU有了检测能力上的优化,进一步提高了浏览器指纹的检测准确率,并在与基准模型的综合指标对比结果中表现出了良好的链接能力。

    浏览器指纹;
    动态链接;
    攻击检测;
    注意力机制;
    Web安全

    科学技术的发展促进着互联网的不断革新,网络为人类社会提供的便捷服务深刻改变了人们信息交互的方式。浏览器作为Web应用的入口,是安全防护的薄弱环节,尤其作为向用户提供服务的工具,攻击者通过浏览器采用恶意手段窃取用户隐私。例如,Cookie曾被用来解决用户频繁登录同一网站时加载速度过慢的问题,弥补了无状态HTTP(HyperText transfer protocol)的局限性,但也常被广告商用来获取用户的偏好信息[1-2]。Web开发者为了抵御各类安全威胁,通常根据用户IP(Internet protocol)地址拦截特定访问,但IP易被修改和伪造。因此,需要一个有效的安全检测方法,在提高互联网安全性的同时将认证过程对用户的影响降到最低,防止恶意用户访问。

    浏览器指纹主要取决于自身的软硬件参数进行识别,是每个用户独一无二的数据。将浏览器指纹作为识别手段可以极大地提高用户的识别率[3],增强在线账户的安全性,如可以应用到银行等网站中,通过在登录时验证用户的浏览器指纹,系统可以轻松地阻止来自未知设备的未授权访问。浏览器指纹也可以应用于反欺诈等风控场景,由于收集到的属性之间存在众多依赖关系,因此可用来检查指纹是否已被篡改,或者是否与指纹所属的设备相匹配,由此区分普通用户与欺诈用户。

    但是浏览器的不断更新、用户自行更改设备属性选项或者使用了一系列反跟踪软件,均会导致浏览器指纹不断发生变化,针对静态指纹信息的解决方案可能在一段时间后就丧失了研究价值,因此需要更有效的方法进行变动指纹的识别。

    综合上述现状及问题,本文的主要工作内容如下。

    1) 从多维角度获取浏览器指纹特征信息,减少特征单一造成的检测误差,并在分析后选取其中区分度高、细粒度和稳定性强的属性,防止过多不必要参数带来的运算代价。

    2) 将双向门控循环单元(BiGRU,bidirectional gating recurrent unit)引入指纹检测工作中,提出基于动态浏览器指纹的堆叠双向门控循环单元检测模型,通过前后序相互依赖提高检测的准确率,进而提升链接动态浏览器指纹的能力。

    3) 考虑特征权重问题,使用注意力机制调整模型关注点,聚焦阈值更高的特征属性,提出Att-BiGRU模型适用于浏览器指纹的链接工作,减少噪声污染,在综合表现上进一步提高浏览器指纹的检测能力。

    1.1 浏览器指纹

    浏览器指纹识别首先由电子前沿基金会(EFF,Electronic Frontier Foundation)提出,Eckersley等[4]在大量浏览器样本中收集了470 161个指纹,发现浏览器指纹可以更精确地显示设备的多样性。在浏览器指纹的概念出现之后,特征属性由原先的Cookie扩充到了User-Agent、Canvas等参数,浏览器指纹的部分特征示例如表1所示。

    浏览器指纹常被用于多种目的,Laperdrix等[5]将浏览器指纹的使用分为两大类。

    1) 负面应用:未知的第三方通过伪造浏览器指纹假冒用户获取隐私信息,或者通过识别已知漏洞攻击其设备。

    2) 正面应用:通过实时检测和更新进行用户身份识别,防止恶意用户欺诈,还可以通过验证设备为系统增强在线服务的安全性。

    现有的研究工作主要聚焦于更改浏览器属性特征以达到欺瞒跟踪者的目的,进而防止攻击[6]。对于浏览器指纹带来的恶意跟踪问题,Torres等[7]使用FP-Block的解决方案分离Web身份,浏览器连接不同站点时会呈现不同的指纹,从而防止跟踪;
    Fiore等[8]根据以往的数据创建相似指纹,呈现伪造的一致性指纹对抗恶意检测,但这两类研究的覆盖范围均不完整。Laperdrix等[9]将噪声引入Canvas、AudioContext API等特征中,并随机化JavaScript对象的枚举顺序以增加浏览器的不确定性;
    Wang等[10]将拉普拉斯噪声注入低秩矩阵进行指纹的隐私保护,减少指纹跟踪的影响,但这类方式的缺点是其他特征仍旧可以发挥作用,甚至特殊化参数在某种程度上使指纹更加突出。

    通过修改指纹特征、引入噪声或者使用Tor浏览器[11]的做法在某种程度上可以免受恶意跟踪的困扰,但只能提供有限的保护,难度较大且会增加用户操作的复杂度。因此,需要进行浏览器指纹的安全检测研究工作,并对浏览器指纹的识别验证现状做进一步介绍。

    1.2 指纹识别验证

    浏览器指纹是增强认证的一个有效手段,如Bursztein等[12]设计的基于画布指纹识别的名为Picasso的解决方案,不仅可以过滤非正常流量,还可以检测出设备的浏览器和操作系统系列,查看指纹与实际设备之间是否存在不匹配的现象。Faiz-rhademi等[13]提出的FPGuard方法,能够在运行时检测和预防浏览器指纹,通过收集并分析与指纹活动有关的细粒度数据,进而识别Web服务及在线行为。

    2019年,有两项相似的研究通过画布指纹识别增强身份验证。Rochet等[14]为每个设备创建个性化模型,并使用深度学习算法为用户建立二进制分类模型,在得分高于设置的特定阈值后才能验证。而Laperdrix等[15]在研究中要求当前浏览器必须能够渲染出与先前完全相同的Canvas,否则就会阻止当前设备匹配,用户只能使用其他方式进行识别。但这两项研究对特征的精度匹配要求很高,同时特征训练和提取不全面,识别不了变动指纹。

    如今一些从事在线安全检测的企业已经使用浏览器指纹来增强身份验证,如SecurAuth[16]作为自适应访问控制解决方案的提供商,成功地构建了通过设备指纹识别的基于启发式的身份验证系统,该系统也使用了浏览器指纹作为多因素身份验证过程的一部分。Lovation公司拥有名为ClearKey[17]的解决方案,该解决方案将设备信息的收集作为其多因素身份验证框架的一部分进行集成,提供了自己的方法来处理带有模糊逻辑算法的指纹检测。

    浏览器指纹技术能够辨别用户的访问设备,在不增加用户操作且不降低用户体验的情况下增强认证和访问的安全性。但需要注意的是,浏览器指纹的特征数据时常会发生变化,在一定的变化范围之内,为了能够判别出新的指纹与已知库中的指纹是否来源于同一浏览器,需要进一步研究动态浏览器指纹的链接工作。

    1.3 指纹动态链接

    指纹是用户设备和环境的直接反映,随着系统更新或配置更改,浏览器指纹会经常发生改变,因此需要具备了解这些变化并链接动态指纹的能力。

    指纹变化的原因主要分为以下几点。

    1) 自动变化:如浏览器或内置插件自动升级更新。

    2) 环境改变:如进入不同的时区。

    3) 用户自定义设置:用户更改某些选项,如清除Cookie、更换字体或禁用DNT等。

    4) 使用反跟踪操作:如使用某些扩展程序混淆指纹,或者给指纹的某些特征增加噪声(如FPRandom[9]中为Canvas和AudioContext引入了用户无法察觉的噪声),使指纹表现出了随机性。

    Eckersley[4]首次提出了指纹变动问题,使用算法将浏览器指纹特征进行直接比较,估算待测指纹和原先指纹的演变关系,但该研究方法人为干预因素过多,不稳定且准确率过低。2016年,Alaca等[19]使用设备指纹进行身份验证时,考虑稳定性研究了指纹的差异接受度,由登录系统决定是否接受版本更新或者字体被修改的设备,但只是简单地做了介绍,并没有进行深入探讨和研究。

    2018年,Vastel等[19]描述了浏览器指纹变化的频繁程度,引出静态规则与机器学习中的随机森林相结合的算法FPStalker,追踪浏览器指纹的演变过程。在此基础上,Li等[20]提出通过将新指纹链接到上一个指纹来提高浏览器指纹的稳定性,使用长短期记忆网络模型来学习浏览器指纹不断变动的潜在关系。Li等[21]在Gomez-Boix工作的基础上,首次对数百万个指纹数据进行了大规模的研究,分析了浏览器指纹的隐私和安全问题,并强调研究动态浏览器指纹的重要性。

    结合以上研究工作,考虑到指纹特征之间的依赖关系和动态指纹的链接问题,本文对动态浏览器指纹进行检测技术研究。

    2.1 特征筛选

    浏览器指纹属性繁多,在检测用户并链接浏览器实例的过程中,过多的特征参数会引入噪声,导致实验的鲁棒性偏低,同时会增加不必要的运算代价。因此,从设备、操作系统、浏览器和用户配置等多维角度获取浏览器指纹特征属性并分析,提取出符合以下要素的特征。

    (1)可区分度高

    尽量选择区分度比较高的特征,至少能从数千台设备中标识某一设备,即使指纹被仿冒也能够从中检测出来,增强安全性。因此引入信息熵[22]的概念来衡量指纹特征的区分度,信息熵可以作为参数信息的量化指标,特征参数越复杂,不同浏览器指纹之间出现相同情况的概率越小,信息熵越大。浏览器指纹特征熵值示例如表2所示。

    表2 浏览器指纹特征熵值示例

    (2)细粒度

    浏览器特征中包含一定的冗余信息,因此特征提取时需要对冗余信息进行过滤,对粗粒度信息进行分割,提取细粒度的数据作为特征参数。

    例如,GPU和navigator.vendor中均包含供应商等相关信息,需要在比较后筛除重复数据;
    User-Agent包含的信息量较大,需要使用User-Agent解析库对其进行分解,得到浏览器、操作系统和是否为PC端等信息;
    Canvas、WebGL等字符串表示复杂,需要使用哈希杂凑进行处理;
    Use of DNT等特征参数简单,可以直接数值化操作等。

    (3)稳定性

    在考虑浏览器指纹时常变化的情况下,需要保留一部分信息量低但稳定性较强的特征属性。针对浏览器指纹发生变化后产生的一系列问题,对指纹属性值中的变化进行分析,选取合理的特征。例如,Use of LocalStorage、Use of SeesionStorage等参数,用户基本不会对其改动,这些特征作为保留数据可以在检测初期帮助筛除不匹配的指纹数据。

    在考虑上述3种要素的基础上,最终提取出User-Agent、Accept、Cookies、Language、Canvas等25种特征进行后续实验。

    2.2 基于堆叠BiGRU的动态指纹链接检测

    考虑到浏览器指纹的动态链接中有时间序列关系,经过分析后选用双向循环神经网络进行浏览器指纹检测:通过前序影响后序判断特征的相似度从而将待测指纹链接到现有指纹链中,通过后序影响前序判断链接的合理性。考虑到过拟合及运算代价问题,使用双向门控循环单元进行算法的改进,提出基于堆叠BiGRU的动态浏览器指纹检测模型,提高模型的鲁棒性,减少特征顺序对模型的影响,引入Dropout算法提高模型的泛化能力。基于堆叠BiGRU的浏览器指纹链接流程如图1所示。

    2.2.1 指纹筛选

    一个用户的全部浏览器指纹应构成一条指纹链,但浏览器指纹会随配置更改不断发生变动,为了更好地链接浏览器指纹的动态变化过程,同一指纹链需存在多条指纹数据进行训练。因此,筛除指纹数据库中链长度小于6的浏览器指纹,并对指纹链接进行初步的规则限制:同一指纹链中的所有指纹数据需要保持操作系统和浏览器类型的稳定;
    对Use of LocalStorage、CookiesEnable、Use of DNT等特征的设置需相同;
    Canvas值保持一致;
    Fonts参数信息有交集;
    User-Agent、Vendor、Plugins、Language、Accept等特征变化在一定相似性范围内等。

    图1 基于堆叠BiGRU的浏览器指纹链接流程

    Figure 1 The flow of browser fingerprint link based on stacked BiGRU

    在以上规则的基础上,将待测指纹与指纹数据库中的已知指纹进行对比,如算法1所示。

    算法1 指纹匹配规则算法

    输入 原始指纹数据集

    输出 匹配的指纹id或者筛选后的指纹数据集sub

    开始

    Function:

    Rules={rule1,rule2,...}

    if verifyRules(f,f, Rules) then

    if NumberofDiff = 0 then

    pre←pre∪ <f>

    else

    sub←sub∪ <f>

    end if

    end if

    end for

    if|pre| > 0 and sameIds(pre) then

    returnpre[0].id

    else if |sub| > 0 then

    return Fuction_BiGRU

    else

    return generateNewId()

    end if

    end function

    其中,为原始指纹数据集,f为待测的未知指纹,f为指纹库中某个待比较的浏览器指纹,sub为粗略筛选后的数据集,pre为精确匹配的数据集合。

    在检验待测指纹f是否属于已知指纹库中的某条指纹链时,先在已有规则条件下遍历指纹库中的每条指纹数据。如果符合规则,则判断未知指纹f和已知指纹f的相似度,如果二者之间完全匹配,则将该指纹置于精确匹配的pre集合;
    否则将其置于候选指纹集合sub。倘若精确匹配的pre集合中仅存在1条指纹数据,则直接返回该指纹数据的id;
    如果pre集合中指纹数量大于1,则比较集合中所有指纹的id是否一致,相同时直接返回历史id,表明待测指纹f属于该浏览器实例,可以成功链接到指纹链上。但如果是候选集合sub中存在指纹数,则进入BiGRU模型中继续判断。如果待测指纹完全不符合现有的筛选规则,则说明指纹数据库中没有待测指纹的历史数据,需要生成一条新的指纹链,并赋予其新的指纹id。

    2.2.2 双向门控循环单元

    浏览器指纹数据特征繁多,且随时间和配置更改等因素变动较大,考虑到时间序列及单向网络会受到指纹数据顺序影响,采用可以减少过拟合风险的双向门控循环单元进行指纹检测。

    双向门控循环单元相较于单向门控循环单元增加了从后向前传输数据的隐藏层,每一次输入都包含正向时间步和逆向时间步的GRU,输出由两个方向的GRU同时决定。

    其中,WWW为权重系数,bb为某时刻隐藏状态对应的偏差。

    将BiGRU应用到动态浏览器指纹检测中,首先,进行规则筛选后的指纹链均含有至少6条浏览器指纹数据,将当前时间步时刻的指纹链以从后向前(即从新到旧)的顺序进行两两比较,设X为{1,2,...,x},指的是时刻的待测指纹f与已知指纹f之间各个特征属性值的相似性结果,设X−1指的是指纹f−1与指纹f2之间属性值的相似性结果,设X−2指的是指纹f2与指纹f−3之间属性值的相似性结果,将{X−2,X−1,X}作为特征输入向量。其次,引入堆叠BiGRU模型,在本文实验中3层效果比单层和双层BiGRU明显,超过3层难以训练。堆叠BiGRU的每一隐藏层包含不同的神经元,并对每一层细胞的记忆状态进行重置。将第一层时间步的隐藏输出作为第二层时间步的隐藏输入,以此类推,将最后一个隐藏层的输出作为输出向量。将经过指纹筛选之后得到的候选集合sub处理后放入堆叠BiGRU模型中进行训练,进而判断待测指纹f与sub集合中数据的相似度。

    2.2.3 Dropout算法

    为了进一步减少模型过拟合的发生,达到正则化的效果,本文使用Dropout算法,减轻神经元之间的共适应性。

    Dropout是通过随机忽略的方式来减少隐藏节点之间的相互作用,在前向传播的过程中使具有一定概率的神经元停止工作,从而在训练过程不会太依赖局部特征,使复杂神经网络在训练非大容量数据集时也能很好防止过拟合并提高模型的效率,Dropout算法示意如图2所示。

    图2 Dropout算法示意

    Figure 2 Schematic diagram of Dropout algorithm

    在模型的训练阶段,标准神经网络的计算公式如下:

    设置概率,则引入Dropout算法的神经网络计算式:

    其中,Bernoulli为伯努利随机分布函数,通过概率随机生成一个0-1概率向量r表示网络的权重参数,b为偏差。在模型测试阶段,每个神经元的权重参数均需乘以。

    Dropout算法提升了模型的精度,使神经网络稀疏化,减轻了部分特征的强依赖关系,学习更加鲁棒的特征。本文研究在进行指纹检测过程时,将Dropout的概率值设置为0.3,更好地提高模型的鲁棒性,有效防止过拟合。

    2.2.4 结果输出

    在全连接层使用Sigmoid激活函数激活,根据输出的概率与阈值比较,判断该待测指纹f是否属于已知的指纹链。高于阈值则为同一条指纹链,否则不属于已知的指纹链,需要创建新的浏览器实例。

    在算法2指纹匹配规则的基础上,后续伪代码描述如算法2所示。

    算法2 基于堆叠BiGRU的指纹链接算法

    输入 筛选后的指纹数据集sub

    输出 匹配的指纹id

    开始

    Function:

    <X−2,X−1,X>=featureVector(f,f)

    ← PBiGRU(f.id =f.id|<X−2,X−1,X>)

    candidates=candidates∪ <f,>

    else

    return gererateNewId()

    end if

    end for

    if |candidates| > 0 and sameIds(candidates) then

    return candidates[0].id

    else

    return gererateNewId()

    end if

    end function

    2.3 实验分析

    2.3.1 实验环境

    本实验在配置Tensorflow环境的Pycharm professional中进行,实现配置如表3所示。

    2.3.2 数据集

    本文实验数据集起初通过开源的Fingerprintjs2自行获取,但由于浏览器指纹的特征提取会侵犯用户的隐私,因此数据获取只能在周边小范围内进行。同时时间特征持续检测的周期要求比较长,持续时间不足会导致实验结果缺乏可行性,考虑到最终收集到的指纹数据量很小(仅有84个用户参与采集过程)、持续时间比较短的现实因素,结合开源数据集进行后续实验。

    表3 实验配置

    由于上述提到的隐私问题,关于浏览器指纹的开源数据集很少,最终本文选用Github上的开源数据,并对其进行相应处理。该数据集的收集时间长达两年,共有近2 000个志愿者参与,公开数据集共15 000条。同时,由于实验需要对浏览器实例进行检测,因此对数据集中的每条数据标注id序列,相同的id表明来源于同一指纹链,经过筛除不符合规则及指纹长度小于6的数据后,最终用于实验的数据集共4 803条浏览器指纹。

    2.3.3 实验结果分析

    本文的基准模型为首次提出动态指纹概念的Eckersley算法,结合随机森林的FPStalker算法以及改进的LSTM算法,由于需要检测动态浏览器指纹的链接情况,本实验首先从拆分链数量、链接时长和所有权比率指标进行评估。

    (1)拆分链数量

    期望将同一用户同一浏览器的所有指纹数据链接到同一链上,但现实会由于更改配置等,指纹差距过大被拆分为多个链,这种情况下,拆分链越少意味着链接检测效果越好,因此将拆分链数量作为评价指标之一。拆分链数量对比如图3所示。从图3可以看出,Eckersley算法将指纹链分裂成多条,甚至在初始能够达到14条左右,稳定性比较差;
    LSTM比Eckersley在初始值有所降低,但伴随时间的增长会反超Eckersley成为拆分数量最多的模型;
    FPStalker在对比实验中表现最好,数目基本稳定在两条;
    而本文提出的堆叠BiGRU模型产生的拆分链数量比Eckersley和LSTM少,多于FPStlaker,为4条左右。

    Figure 3 The comparison of the number of split chains

    (2)链接时长

    链接时长表明能够追踪到的指纹时间。链接时间越长表明指纹动态变化产生的副作用越小,能够持续追踪到指纹的变化过程,将变化后的浏览器指纹链接到原有指纹链上。

    在拆分链的基础上,同一条浏览器指纹链可能被拆分为多条子链,本文将最长拆分链的链接时间作为衡量数据进行对比。例如,用户A的第一条链A1-A2-A3为两个时间间隔(即2T),第二条链A4-A5-A6-A7为3个时间间隔(即3T),则最长链接时间为3T,以此类推。如图4所示,BiGRU模型的最长链接时间优于LSTM和Eckersley,但与FPStalker相比有所差距。

    Figure 4 The comparison of maximum linking time

    (3)所有权比率

    所有权意味着一条指纹链上是否只含有同一用户的指纹数据,如果掺杂其他用户的指纹,说明指纹链被污染,所有权比率将会下降,因此将其作为评价指标之一。即指纹链A中只有用户A的指纹数据,则A的所有权比率为1,但如果错误地将用户B的指纹数据链接到A指纹链上,则A的所有权比率会下降。例如,A指纹链中有100条指纹数据,但是其中只有90条是A自身的正确数据,其余10条来源于B或C等其他指纹链,那么A的所有权比率为90/100=0.90。

    所有权比率对比如图5所示,可以看出LSTM在所有权指标中表现最好,链接出错的概率最低;
    堆叠BiGRU的效果次之,但随时间的增加趋近于LSTM的概率走向;
    FPStalker对比LSTM和BiGRU的所有权比率有所下降,表明在检测过程中会将部分指纹数据错误匹配;
    Eckersley由于是最早提出应用于动态指纹检测的算法模型,结构比较简单,在链接过程中错误率最高。

    图5 所有权比率对比

    Figure 5 The comparison of ownership rate

    3.1 基于Att-BiGRU的动态指纹链接算法

    浏览器特征种类繁多,但不同特征参数对指纹检测工作的贡献程度不同,如Canvas及Accept等,由于这些特征参数的信息熵较高,不同指纹之间特征的相似度低,因此可以赋予更高的权重。而Use of LocalStorage及DNT等特征可以在检测初期进行筛选,但不能很好地进一步区分指纹信息,因此赋予较小的权重。本文进一步提出基于注意力机制的BiGRU模型适用于浏览器指纹的链接工作,聚焦区分度和阈值高的特征参数,赋予特征不同的概率偏重,提高模型检测的精确度。

    Att-BiGRU模型主要分为特征数据输入层、隐含层以及输出层。而隐含层包含BiGRU层、注意力机制(Attention)层及Dense层,基于Att-BiGRU模型的浏览器指纹链接流程如图6所示。

    首先,在模型的输入层对浏览器指纹数据进行筛选,指纹筛选流程如上文所示,将待测指纹f与指纹库中的数据f进行匹配,得到筛选后的指纹数据集sub,并将指纹数据处理为特征向量形式。其次,BiGRU由前向GRU和反向GRU构成,将上一时间步隐藏层状态h−1传输到下一隐藏层状态,将时间序列关联起来,并对输入特征向量进行更深层次的训练和提取。

    图6 基于Att-BiGRU模型的浏览器指纹链接流程

    Figure 6 The flow chart of browser fingerprint link based on Att-BiGRU model

    使用注意力机制专注于区分度更高和唯一性更强的指纹特征数据,对BiGRU产生的隐藏层输出赋予对应的概率权重进行后续的模型应用。调整模型的关注点,并对其进行加权平均,即得到每个时间步隐藏状态的隐含表示u,再将其与初始化注意力矩阵u相乘,通过softmax函数获取到归一化权重a,最后将隐藏状态值h与获取到的权重a求和得到注意力机制表示计算公式如下。

    其中,w为权重系数,b为误差偏置系数,tanh和softmax是采用的激活函数。

    Dense层将上层输出的指纹信息经过非线性变化提取特征之间的关联,并通过全连接层映射到输出空间。在Attention层和Dense层之间添加Dropout算法随机选取隐藏层神经元节点,进一步防止过拟合,增强指纹检测模型的鲁棒性,同时减少计算量。在全连接层使用adam优化器,利用softmax函数进行计算得到最终值,计算公式如下。

    3.2 实验分析

    本文实验对浏览器指纹在准确率和损失变化、拆分链数量、链接时长和所有权比率指标上进行模型对比。

    (1)准确率和损失变化

    Att-BiGRU指纹检测模型的训练集和测试集在准确率结果中随着训练次数的增加呈现出明显的上升趋势。如图7所示,该模型在前7轮次时的训练和测试效果不如堆叠BiGRU模型,但是随着轮次增加,测试集效果有了明显提高。Att-BiGRU模型训练集的准确率在该轮次内最高为0.983 1,测试集的准确率最高为0.996 0,相较BiGRU模型有所提升,训练效果良好。

    图7 Att-BiGRU模型准确率变化情况

    Figure 7 The change of the accuracy of Att_BiGRU model

    同时,在损失变化表现中呈现明显的下降趋势,如图8所示。其中Att-BiGRU模型训练集的损失变化最低为0.057 3,测试集的损失变化最低为0.026 0。

    图8 Att-BiGRU模型损失变化情况

    Figure 8 The loss change of Att-BiGRU model

    (2)拆分链数量

    在拆分链数量的比较中,图9显示引进注意力机制的Att-BiGRU模型比堆叠BiGRU模型效果更好,考虑到注意力机制能够关注更重要的特征参数,减少了噪声污染,能够将指纹链拆分为更少的数量,处于3~4条的状态区间。

    (3)链接时长

    最长链接时间即浏览器指纹拆分链中最长子链的持续时长。如图10所示,Att-BiGRU模型的最长链接时间优于堆叠BiGRU和LSTM,仅次于FPStalker。

    图9 拆分链数量对比

    Figure 9 The comparison of the number of split chains

    图10 最长链接时间对比

    Figure 10 The comparison of maximum linking time

    (4)所有权比率

    所有权比率代表指纹链的纯净程度,用来评估是否仅包含相同用户的指纹数据。如图11所示,Att-BiGRU模型的所有权比率相比BiGRU有一定提升,说明指纹链被污染的概率降低,识别变动指纹时出现混杂数据的情况有所改善,并随着时间的增长逐渐接近LSTM的比率。

    图11 所有权对比

    Figure 11 The comparison of ownership

    (5)运行时间

    在进行模型运算时,指纹链长度和模型本身的复杂程度等导致运行时间不断攀升,如图12所示。其中,FPStalker由于划分大量决策树导致运行时间最久,堆叠BiGRU检测模型由于深度网络计算,运行时间多于LSTM;
    由于复杂模型的应用,Att-BiGRU模型的运行时间比BiGRU稍久,但总体仍优于FPStalker。

    图12 运行时间对比

    Figure 12 The comparison of running time

    3.3 整体分析

    在引入注意力机制的Att-BiGRU模型中,准确率和损失变化较之前模型有所改善,同时能够将指纹链拆分为更少的数量,提高了追踪动态浏览器指纹的链接时间。虽然在拆分链数量和链接时长指标上没有FPStalker算法表现突出,但考虑到FPStalker将部分指纹数据链接到了不匹配的指纹链中,准确性相对较低。本文提出的堆叠BiGRU和Att-BiGRU模型在所有权指标中表现比较稳定,尽管稍低于LSTM,但LSTM在链接时长和拆分链数量的评估指标中表现不佳。综合衡量,本文提出的基于动态浏览器指纹的检测模型在各个指标中的整体表现最为优越,Att-BiGRU模型较BiGRU模型有一定提升,在模型训练和指纹检测实验中准确率更高。虽然本文实验尽所能地注意到运算代价的问题,但是为了提高链接时长及准确率,引入的BiGRU模型及注意力机制等算法会提升运算代价,因此运行时间有待改进。

    本文针对浏览器指纹在更改配置或受到外界干扰后会发生变动的问题,提出了基于堆叠BiGRU的动态浏览器指纹链接检测模型,通过前后序相互依赖识别不断变动的指纹数据,提升链接动态指纹的能力。并进一步使用注意力机制对指纹特征赋予不同权重,关注区分度和信息熵更高的参数,提出Att-BiGRU指纹链接检测模型。实验结果表明,Att-BiGRU模型较堆叠BiGRU模型更关注关键信息,减少了噪声污染,在综合表现上进一步提升检测能力。

    本文工作还有很多可以探讨和精进的空间。首先,本文实验过程中涉及的数据只包含PC端信息,后续可以引入移动端数据进行扩展研究。其次,本文工作并没有从真正意义上实现跨浏览器指纹识别,需要更多硬件设备上的辅助信息进行更深入的指纹检测。最后,在指纹检测过程中,可以考虑将指纹数据转化为图像进行链接。研究过程中做了一部分将csv(comma-separated values)中的指纹数据转化为图像的工作,但由于预处理过程中丢失了很多参数信息,不能很好地衡量链接能力,需要探讨其他方案。

    [1] PAPADOPOULOS P, KOURTELLIS N, MARKATOS E P. Cookie Synchronization: everything you always wanted to know but were afraid to ask[C]//World Wide Web Conference. 2019: 1432-1442.

    [2] XUEHUI H, NISHANTH S. Characterising third PARTY cookie usage in the EU after GDPR[C]//ACM Conference on Web Science. 2019: 137-141.

    [3] ANDRIAMILANTO N, ALLARD T, GUELVOUIT G L. “Guess who?” large-scale data-centric study of the adequacy of browser fingerprints for web authentication[J]. Innovative Mobile and Internet Services in Ubiquitous Computing (IMIS), 2021, 7: 161-172.

    [4] ECKERSLEY P. How unique is your web browser[C]//Proceedings of the 2010 Privacy Enhancing Technologies Symposium. 2010: 1-18.

    [5] LAPERDRIX P, NATALIIA B, BENOIT B, et al. Browser fingerprinting: a survey[J]. ACM Trans, 2020, 14(2): 1-33.

    [6] ANDRIAMILANTO N, ALLARD T, GUELVOUIT G L. FPSelect: low-cost browser fingerprints for mitigating dictionary attacks against web authentication mechanisms[C]//Annual Computer Security Applications Conference (ACSAC "20). 2020: 627-642.

    [7] TORRES C, HUGO J, SJOUKE M. FP-Block: usable Web privacy by controlling browser fingerprinting[C]//Proceedings of the 20th European Symposium on Research in Computer Security, 2015: 3-19.

    [8] FIORE U, ANIELLO C, ALFREDO D, et al. Countering browser fingerprinting techniques: constructing a fake profile with Google Chrome[C]//Proceedings of the 17th International Conference on Network-Based Information Systems. 2014: 355-360.

    [9] LAPERDRIX P, BENOIT B, VIKAS M. FPRandom: randomizing core browser objects to break advanced device fingerprinting techniques[C]//Proceedings of the 9th International Symposium on Engineering Secure Software and Systems. 2017: 97-114.

    [10] WANG C, DANI J, LI X, et al. Adaptive fingerprinting: website fingerprinting over few encrypted traffic[C]//Proceedings of the Eleventh ACM Conference on Data and Application Security and Privacy (CODASPY "21). 2021: 149-160.

    [11] Saito. Tor fingerprinting: Tor browser can mitigate browser fingerprinting?[C]//International Conference on Network-Based Information Systems, 2017:. 504-517.

    [12] BURSZTETN E, ARTEM M, TADEK P, et al. Picasso: lightweight device class fingerprinting for Web clients[C]//Proceedings of the 6th Workshop on Security and Privacy in Smartphones and Mobile Devices. 2016: 93-102.

    [13] FAIZ-RHADEMI A, MOHAMMAD Z, KOMMINIST W. FPGuard: detection and prevention of browser fingerprinting[C]//Proceedings of the 29th Data and Applications Security and Privacy Conference. 2015: 293-308.

    [14] ROCHET F, KYRIAKOS E, OLIVIER P. SWAT: Seamless Web authentication technology[C]//Proceedings of the World Wide Web Conference. 2019: 1579-1589.

    [15] LAPERDRIX P, GILDAS A, NICK N. Morellian analysis for browsers: making web authentication stronger with canvas fingerprinting[C]//Proceedings of the 16th International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment. 2019: 43-66.

    [16] SecurAuth. Device/Browser fingerprinting-heuristic-based authentication[EB]. 2018.

    [17] Iovation. ClearKey[EB]. 2018.

    [18] ALACA F, VAN O. Device fingerprinting for augmenting web authentication: Classification and analysis of methods[C]//Proeed- gs of the 32nd Annual Conference on Computer Security Applications. 2016: 289-301.

    [19] VASTEL A, PIERRE L, ROMAIN R. FP-STALKER: tracking browser fingerprint evolutions[C]//Proceedings of the 39th IEEE Symposium on Security and Privacy. 2018: 1-14.

    [20] LI X, CUI X, WANG X. Constructing browser fingerprint tracking chain based on lstm model[J]. IEEE. 2018, 7: 13-18.

    [21] LI S, CAO Y .Who touched my browser fingerprint? a large-scale measurement study and classification of fingerprint dynamics[C]//Proceedings of the ACM Internet Measurement Conference. 2020. 370-385.

    [22] ANTONIO E, FAJARDO A, MEDINA R. Tracking browser fingerprint using Rule Based Algorithm[C]//16th IEEE International Colloquium on Signal Processing & Its Applications (CSPA). 2020: 225-229.

    Research on link detection technology based on dynamic browser fingerprint

    GAO Fan, WANG Jian, LIU Jiqiang

    Key Laboratory of Security and Privacy in Intelligent Transportation, Beijing Jiaotong University, Beijing 100044, Chin

    With the emergence of user privacy leakage and online fraud, traditional detection mechanisms can no longer stop the intensified attacks and new methods are needed to assist in web security detection. As a bridge between users and network data, browsers are widely used in the interaction between users and various applications. The browser fingerprint contains various characteristic information of the user’s browser and device, and its uniqueness can greatly improve the accuracy of user identification. However, browser fingerprints may change over time, and solutions based on static fingerprints cannot meet the requirements of dynamic fingerprints detection. Motivated by this challenge, it’s necessary to improve the recognition and link detection capabilities of dynamic browser fingerprints. Besides, parameters from multi-dimensional perspective need to be obtained and screened to get fine-grained and high-discrimination features for model detecting, preventing the calculation cost caused by too many unnecessary parameters. Bidirectional Gating Recurrent Unit (BiGRU) was introduced into the fingerprint detection, and a stacked BiGRU detection model based on dynamic browser fingerprints was proposed. It solved the problem of low detection accuracy caused by ignoring the interaction of forward and backward information in the process of fingerprints detection, and it also had a certain improvement in indicators such as accuracy and linking time. Furthermore, in view of the different importance of different feature parameters, the same weight given to parameters will result in detection error. Combined with the attention mechanism to focus more stable fingerprint features, an Att-BiGRU fingerprint detection model based on dynamic browser fingerprints was proposed. It optimized the detection ability compared to BiGRU, further improved the detection accuracy of browser fingerprinting, and showed good linking ability on the comprehensive index under the benchmark model.

    browser fingerprint, dynamic linking, attack detection, attention mechanism, Web security

    The National Key R&D Program of China (2020YFB2103800)

    高凡, 王健, 刘吉强. 基于动态浏览器指纹的链接检测技术研究[J]. 网络与信息安全学报, 2022, 8(4): 144-156.

    TP393

    A

    10.11959/j.issn.2096−109x.2022049

    高凡(1996−),女,山东烟台人,北京交通大学硕士生,主要研究方向为网络安全及浏览器检测。

    王健(1975−),男,山东烟台人,博士,北京交通大学副教授、博士生导师,主要研究方向为密码应用及区块链、网络安全。

    刘吉强(1973−),男,山东烟台人,博士,北京交通大学教授、博士生导师,主要研究方向为可信计算、隐私保护、云计算安全。

    2021−11−25;

    2022−03−04

    王健,wangjian@bjtu.edu.cn

    国家重点研发计划(2020YFB2103800)

    GAO F, WANG J, LIU J Q. Research on link detection technology based on dynamic browser fingerprint[J]. Chinese Journal of Network and Information Security, 2022, 8(4): 144-156.

    猜你喜欢 浏览器指纹动态 国内动态卫星应用(2022年7期)2022-09-05国内动态卫星应用(2022年3期)2022-05-23国内动态卫星应用(2022年1期)2022-03-09像侦探一样提取指纹小哥白尼(趣味科学)(2021年11期)2021-02-28为什么每个人的指纹都不一样小天使·一年级语数英综合(2020年10期)2020-12-16动态环球慈善(2019年6期)2019-09-25微软发布新Edge浏览器预览版下载换装Chrome内核中国计算机报(2019年12期)2019-06-21反浏览器指纹追踪电子制作(2019年10期)2019-06-17唯一的指纹儿童时代·快乐苗苗(2016年2期)2016-10-22可疑的指纹青少年科技博览(中学版)(2015年7期)2015-08-12
    相关热词搜索: 指纹 技术研究 浏览器

    • 文学百科
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章