返回博客
指纹

BotBrowser 网络信息保护:控制连接指纹

BotBrowser 如何控制 navigator.connection 值,防止网络信息成为追踪信号。

隐私风险

Network Information API (navigator.connection) 暴露连接类型、带宽估计和往返时间值。这些属性可以作为追踪信号,特别是当与地理位置或代理配置关联时。BotBrowser 通过指纹配置文件控制所有网络信息值。

基于配置文件的网络信息

加载指纹配置文件时,网络信息值会自动设置为匹配:

chrome --bot-profile="/path/to/profile.enc" \
       --user-data-dir="$(mktemp -d)"

配置文件包含内部一致的 rttdownlinkeffectiveTypetype 值。

显式覆盖

手动控制网络信息:

chrome --bot-profile="/path/to/profile.enc" \
       --bot-network-info-override \
       --user-data-dir="$(mktemp -d)"

这确保浏览器报告配置文件中的网络信息值,而不是测量实际网络连接。

代理一致性

使用代理时,BotBrowser 保持 navigator.connection 值与预期网络特征一致:

chrome --bot-profile="/path/to/profile.enc" \
       --proxy-server="http://us-proxy:8080" \
       --bot-network-info-override \
       --user-data-dir="$(mktemp -d)"

Change 事件控制

BotBrowser 管理 navigator.connection 上的 change 事件,防止在会话期间泄露真实网络状态变化。

验证

启动后,在控制台中确认值:

const conn = navigator.connection;
console.log('effectiveType:', conn.effectiveType);
console.log('downlink:', conn.downlink);
console.log('rtt:', conn.rtt);
console.log('type:', conn.type);
console.log('saveData:', conn.saveData);

值应与加载的配置文件匹配,并在整个会话期间保持稳定。

开始使用

  1. GitHub 下载 BotBrowser
  2. 使用 --bot-profile 加载指纹配置文件
  3. 使用 --bot-network-info-override 启用网络信息覆盖
  4. 验证 navigator.connection 值与配置身份匹配
#network-info#connection#rtt#fingerprinting#privacy