73、探索网络Cookie世界:法规影响与自动检测交互研究

探索网络Cookie世界:法规影响与自动检测交互研究

1. 隐私法规背景

在当今数字化时代,网络隐私保护愈发重要,不同地区纷纷出台相关法规来保障用户的隐私权益。

  • GDPR :欧盟的《通用数据保护条例》(GDPR)要求网站在收集用户数据时必须简洁透明地获得用户同意。除了“严格必要”的用于网站运行的Cookie(如存储用户凭据)外,网站需通过Cookie横幅告知用户其自身及第三方收集的Cookie信息,有些横幅明确请求用户同意(如提供接受或拒绝按钮),有些则将用户继续使用网站视为默认同意。
  • CCPA :加利福尼亚州议会于2018年6月颁布的《加利福尼亚消费者隐私法案》(CCPA),旨在保护加州居民的隐私。它让加州居民了解个人数据(如IP地址)的收集情况、是否出售给第三方,以及拒绝分享数据的权利。年营收至少2500万美元且在加州运营的公司,无论总部是否在加州甚至美国,都需遵守该法律。
  • LGPD :巴西于2020年9月实施的《通用个人数据保护法》(LGPD),与GDPR类似,聚焦个人数据和用户权利,规定网站发布者在存储客户个人数据(以Cookie横幅形式)前必须获得同意。
2. 网络隐私测量平台

存在多种网络隐私测量平台,如OpenWPM、FPdetective、Chameleon和Common Crawl等。其中,OpenWPM基于Python构建,借助Selenium自动化工具和Firefox浏览器访问网站。它功能丰富,具备大规模测量的速度和可扩展性,被众多网络测量研究广泛使用。因此,本研究使用并扩展OpenWPM来收集、存储和分析测量数据。

3. 数据收集与方法
3.1 位置多样性与目标网站

为全面研究Cookie情况,选择了不同地理位置的AWS云实例作为观测点(VP):
- 德国法兰克福
- 瑞典斯德哥尔摩
- 美国东部阿什本
- 美国西部旧金山
- 印度孟买
- 巴西圣保罗
- 南非开普敦
- 澳大利亚悉尼

选择这些观测点是为了涵盖不同法规区域,包括两个GDPR国家(德国和瑞典)、两个美国观测点(其中一个在实施CCPA的加州)、一个有LGPD的巴西观测点,以及非洲、亚洲和澳大利亚的观测点。

目标网站选用全球Tranco排名前10000的网站,其受欢迎程度基于用户实际网络流量衡量。对于需要重复测量的实验(如一致性测试),使用Tranco前10000网站的子集,即Tranco前100、1001 - 1100和9901 - 10000的网站,代表不同层级的网站,称为“分层Tranco列表”。

以下是不同测量类型的概述:
| 测量类型 | 开始日期 | 持续时间 | 目标网站 |
| — | — | — | — |
| 横幅交互 | 2022年1月20日 | 20天 | Tranco前10000 |
| 一致性测试 | 2022年2月9日 | 10天 | 分层Tranco 300 |
| 着陆页与内页 | 2022年3月8日 | 4天 | 分层Tranco 300 |
| 桌面与移动 | 2022年2月27日 | 10小时 | 分层Tranco 300 |
| CCPA影响 | 2022年3月13日 | 10小时 | 分层Tranco 300 |

为确保结果可比,保证每个网站从所有观测点在相似时间进行爬取,若某个观测点失败则将该网站排除在最终结果之外。同时,以无状态模式运行OpenWPM,并确保浏览器在访问网站时不阻止跟踪。

3.2 自动横幅检测与交互

由于欧盟ePrivacy指令和GDPR,许多流行网站在欧盟内访问时会明确显示Cookie横幅,告知用户网站将收集的用户数据,并提供接受或拒绝Cookie的明确选择。

为测试网站是否尊重用户同意,开发了名为“BannerClick”的工具,实现以下步骤的自动化:
1. 检测横幅
- 手动检查Tranco前100域名中的50个随机网站,创建一个包含8个英文单词(cookies、privacy、policy、consent、accept、agree、personalized、legitimate interest)的语料库。
- 将这些单词翻译成11种不同语言(德语、瑞典语、西班牙语、意大利语、葡萄牙语、中文、俄语、日语、法语、土耳其语和波斯语),使语料库扩大到80个单词。
- 在网站HTML页面上,BannerClick首先搜索包含语料库中单词的所有元素。
- 向上遍历DOM层次结构,找到具有正z-index或固定位置属性的HTML元素,将其作为“锚”元素。若未找到,则将

元素作为锚元素。
- 从锚元素开始向下遍历DOM,根据启发式规则找到最具体的包含横幅的元素。
- 若在常规DOM中未找到横幅,会遍历所有可见的iframe并重复上述步骤。
在Tranco前1000个网站上测试该检测方法,手动确认518个网站显示横幅,BannerClick能正确检测513个,仅5个未检测到,4个误检测,检测准确率达99%以上,误报率(FPR)为0.008,漏报率(FNR)为0.009。
  1. 与横幅交互

    • 成功检测横幅后,BannerClick可自动“接受”和“拒绝”Cookie。它依赖一个包含表示接受、拒绝和设置的三类单词的语料库。
    • 检测到横幅并识别这些单词后,自动点击相应按钮。实验使用三种交互模式:“无交互”、“接受”和“拒绝”。
    • 优先选择
    • 若未找到拒绝相关单词,尝试使用Never - Consent浏览器扩展拒绝横幅政策;若仍失败,搜索“设置”相关单词,打开设置对话框后再次搜索拒绝相关单词。

    在Tranco前1000个网站中,444个网站提供明确接受选项,BannerClick成功点击430个,准确率超97%。对于拒绝操作,BannerClick在524个网站中成功拒绝377个,81个网站无拒绝选项,准确率为87.4%。

3.3 Cookie分类
  • 第一方和第三方Cookie分类 :使用公共后缀列表识别网站和Cookie的域名,将Cookie域名与网站域名匹配,匹配则为第一方Cookie,否则为第三方Cookie。
  • 跟踪Cookie识别 :使用justdomains黑名单识别跟踪Cookie,该名单包含多个流行跟踪列表的条目。为确保分类正确,对发送最多跟踪Cookie的前100个网站进行小规模验证,确认知名跟踪域名确实发送这些Cookie。
3.4 OpenWPM测量设置

使用八个不同地理位置的亚马逊EC2实例,每个实例有4个CPU核心和16GB RAM。OpenWPM v0.18.0以无状态模式运行Firefox,配置如下:
- 每次运行执行7个无头浏览器实例,Selenium超时时间为60秒。
- 睡眠时长设置为30秒,确保页面加载完成后仍停留一段时间以收集所有Cookie。
- OpenWPM超时时间为360秒。
- BannerClick在睡眠开始后的0、10和20秒进行三次尝试检测横幅,超94%的横幅在第一次尝试时被检测到。
- 为便于手动验证,BannerClick在交互前后对网站、检测到的横幅和点击的按钮进行截图。

在德国观测点的150000次单独爬取中,138018次可访问,946次和455次分别超过Selenium和OpenWPM的超时时间,10175次域名不可访问,406次触发异常。最终分析考虑了所有8个观测点的135307次成功完成的测量。

3.5 伦理考虑

在使用OpenWPM进行网络测量前,遵循最佳测量实践,AWS节点仅用于测量目的,设置信息丰富的rDNS名称,托管包含测量信息的网站,并为网络管理员提供加入黑名单的选项。测量期间未收到任何投诉。

以下是BannerClick检测和交互流程的mermaid流程图:

graph TD;
    A[开始] --> B[检测横幅];
    B --> C{是否检测到横幅};
    C -- 是 --> D[与横幅交互];
    C -- 否 --> E[结束];
    D --> F{交互模式};
    F -- 接受 --> G[点击接受按钮];
    F -- 拒绝 --> H[尝试拒绝操作];
    F -- 无交互 --> E;
    G --> E;
    H --> I{是否成功拒绝};
    I -- 是 --> E;
    I -- 否 --> J[尝试设置选项];
    J --> K{是否找到拒绝选项};
    K -- 是 --> L[点击拒绝];
    K -- 否 --> E;
    L --> E;
4. Cookie横幅的影响

大多数涉及GDPR的研究未考虑横幅交互(即点击接受/拒绝按钮),因此开发了BannerClick工具来自动与横幅交互,以分析Cookie横幅的影响。

4.1 横幅检测与交互的网站比例

从德国观测点来看,在所有可访问的网站中,约47%的网站能成功检测到横幅。BannerClick能分别为约40%和30%的网站点击横幅的接受和拒绝按钮。

4.2 横幅交互对Cookie数量的影响

BannerClick在Tranco前10000个网站上运行时,发现横幅交互对Cookie数量有很大影响,具体如下表所示:
| 交互情况 | 第一方Cookie变化 | 第三方Cookie变化 | 跟踪Cookie变化 |
| — | — | — | — |
| 接受横幅 | 平均增加超1倍 | 平均增加5.5倍 | 从0平均增加到7 |
| 拒绝横幅 | 第一方Cookie略有增加 | 第三方Cookie无明显趋势 | 跟踪Cookie数量接近0 |

从上述数据可以看出,接受横幅后,第三方Cookie和跟踪Cookie的增加较为显著,而拒绝横幅时,跟踪Cookie数量很低,这表明GDPR在减少跟踪方面具有一定的有效性。第一方Cookie在拒绝横幅时略有增加,可能是为了记录拒绝状态以便后续访问。

以下是不同交互情况下Cookie数量变化的mermaid流程图:

graph LR;
    A[无交互] --> B[第一方Cookie少量]
    A --> C[第三方Cookie少量]
    A --> D[跟踪Cookie接近0]
    E[接受横幅] --> F[第一方Cookie增加超1倍]
    E --> G[第三方Cookie增加5.5倍]
    E --> H[跟踪Cookie从0到7]
    I[拒绝横幅] --> J[第一方Cookie略有增加]
    I --> K[第三方Cookie无明显趋势]
    I --> L[跟踪Cookie接近0]
4.3 同意管理提供商(CMPs)的分布

在使用BannerClick访问网站时,还分析了同意管理提供商(CMPs)的分布。CMPs是提供Cookie同意处理服务的平台,网站可使用其现成且可配置的横幅。IAB欧洲透明度和同意框架(TCF)规定CMPs需实现__tcfapi()函数,以便第三方访问用户选择的偏好。

然而,实际情况中并非所有带有CMP横幅的网站都实现了该函数。为了更全面地了解CMPs的分布,还结合了Never - Consent浏览器扩展的结果。

从德国观测点来看,Tranco排名前10000的网站中CMPs的分布情况如下:
- 在前1000个网站中,约13%的网站使用CMPs。
- 随着排名上升,CMP的部署基本保持不变,表明在排名2000 - 10000的网站中CMP部署较为一致。
- CMP生态系统主要由四家公司(OneTrust、Quantcast、Sourcepoint和Google)主导。

以下是CMP分布根据Tranco排名的示意图:

graph LR;
    classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
    A(Tranco排名):::process --> B(前1000):::process
    A --> C(1001 - 2000):::process
    A --> D(2001 - 10000):::process
    B --> E(13%使用CMPs):::process
    C --> F(稳定部署):::process
    D --> F
    F --> G(OneTrust等四家主导):::process

综上所述,网络隐私法规(如GDPR、CCPA和LGPD)对网站Cookie的收集和管理产生了重要影响。通过开发的BannerClick工具进行自动横幅检测和交互,能够更准确地评估这些法规的实施效果。横幅交互对Cookie数量有显著影响,并且CMPs在网站中的分布也呈现出一定的特点。在未来的网络隐私保护中,这些研究结果有助于更好地理解用户隐私与网站Cookie管理之间的关系,为进一步优化隐私保护措施提供参考。

基于分布式模型预测控制的多个固定翼无人机一致性控制(Matlab代码实现)内容概要:本文围绕“基于分布式模型预测控制的多个固定翼无人机一致性控制”展开,采用Matlab代码实现相关算法,属于顶级EI期刊的复现研究成果。文中重点研究了分布式模型预测控制(DMPC)在多无人机系统中的一致性控制问题,通过构建固定翼无人机的动力学模型,结合分布式协同控制策略,实现多无人机在复杂环境下的轨迹一致性和稳定协同飞行。研究涵盖了控制算法设计、系统建模、优化求解及仿真验证全过程,并提供了完整的Matlab代码支持,便于读者复现实验结果。; 适合人群:具备自动控制、无人机系统或优化算法基础,从事科研或工程应用的研究生、科研人员及自动化、航空航天领域的研发工程师;熟悉Matlab编程和基本控制理论者更佳; 使用场景及目标:①用于多无人机协同控制系统的算法研究仿真验证;②支撑科研论文复现、毕业设计或项目开发;③掌握分布式模型预测控制在实际系统中的应用方法,提升对多智能体协同控制的理解实践能力; 阅读建议:建议结合提供的Matlab代码逐模块分析,重点关注DMPC算法的构建流程、约束处理方式及一致性协议的设计逻辑,同时可拓展学习文中提及的路径规划、编队控制等相关技术,以深化对无人机集群控制的整体认知。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值