跳转到主要内容
Zeus Desktop 提供全面的浏览器指纹管理功能,允许每个分身呈现独特且一致的浏览器身份。这可以防止网站通过指纹关联来识别多个分身属于同一用户。

什么是浏览器指纹?

浏览器指纹是网站通过收集浏览器和设备的独特特征来识别和追踪用户的技术——即使不使用 Cookie 也能实现。这些特征包括:
  • User-Agent 字符串
  • 屏幕分辨率
  • 已安装的字体
  • WebGL 渲染器信息
  • Canvas 渲染模式
  • AudioContext 输出
  • 硬件规格(CPU 核心数、内存)
  • 时区和语言
当两个浏览器会话共享相同的指纹时,网站可以判断它们很可能属于同一用户——这会使独立分身失去意义。

指纹配置

可配置属性

分类属性描述示例
基础User-Agent浏览器标识字符串Mozilla/5.0 ... Chrome/120.0.0.0
基础操作系统操作系统标识符Win32MacIntelLinux x86_64
基础语言浏览器语言偏好en-US,en;q=0.9
基础时区地理时区America/New_York
屏幕分辨率屏幕尺寸1920x10802560x1440
屏幕颜色深度显示器颜色深度24
屏幕像素比设备像素比12(Retina 屏幕)
高级WebGL 厂商GPU 厂商字符串Intel Inc.NVIDIA Corporation
高级WebGL 渲染器GPU 渲染器字符串Intel Iris OpenGL Engine
高级Canvas 噪声确定性 Canvas 噪声种子随机整数
高级Audio 噪声确定性音频噪声种子随机整数
硬件CPU 核心数navigator.hardwareConcurrency481216
硬件设备内存navigator.deviceMemory(GB)4816

随机指纹生成

点击**“随机生成指纹”**按钮,可以一键填充所有字段,生成一个真实且内部一致的配置。 生成器确保内部一致性:
  • Windows 的 User-Agent 会自动匹配 Win32 平台和 Windows 字体
  • macOS 的 User-Agent 会自动匹配 MacIntel 平台、devicePixelRatio: 2 和 macOS 字体
  • WebGL 厂商/渲染器组合与所选操作系统匹配
  • 所有值都来自真实常见配置的数据池

工作原理

Zeus 在两个层面应用指纹覆盖:

第一层:Chrome 启动参数

在 Chrome 启动前应用:
--user-agent="Mozilla/5.0 ... Chrome/120.0.0.0 Safari/537.36"
--lang=en-US

第二层:CDP(Chrome DevTools Protocol)注入

Chrome 启动后立即通过 WebSocket 连接到 CDP 调试端口进行注入:

反检测脚本详解

注入的脚本会在每个新文档(包括 iframe)中,在任何页面 JavaScript 执行之前运行。以下是每项保护的作用:
Object.defineProperty(navigator, 'webdriver', { get: () => undefined });
delete Object.getPrototypeOf(navigator).webdriver;
网站通过检查 navigator.webdriver 来检测自动化工具。此操作完全移除该标志。

Canvas 指纹噪声

向 Canvas API 输出添加确定性噪声。该噪声具有以下特点:
  • 确定性 — 相同的种子始终产生相同的噪声(跨页面刷新保持一致)
  • 不可感知 — 极微小的像素级变化,肉眼不可见
  • 唯一性 — 不同的种子 = 不同的指纹
这通过让每个分身产生不同但一致的 Canvas 输出来防止 Canvas 指纹追踪。

WebGL 伪装

覆盖 WEBGL_debug_renderer_info 以报告自定义的 GPU 厂商和渲染器字符串。这是最强的指纹信号之一,因为 GPU 信息是高度设备特异的。

AudioContext 噪声

AudioContext.createAnalyser() 输出注入确定性噪声。音频指纹利用音频处理中的细微差异来识别设备。

字体检测保护

拦截字体测量查询并添加一致的变化,防止网站枚举你已安装的字体。

一致性准则

为了最大化反检测效果,确保分身配置内部一致:
如果你设置了…那么也应该设置…原因
Windows UAWin32 平台UA/平台不匹配是一个明显的红旗
macOS UAMacIntel 平台,devicePixelRatio: 2大多数 Mac 有 Retina 显示屏
en-US 语言America/New_York 时区(或类似的美国时区)语言与时区不匹配看起来很可疑
1920x1080 分辨率devicePixelRatio: 11080p 显示器通常是 1x 像素比
Intel GPUIntel WebGL 渲染器GPU 品牌不匹配是可以被检测的
随机生成按钮会自动处理所有一致性规则。建议先使用随机生成,然后根据需要微调特定值。

Canvas 和 Audio 保护开关

UI 提供两个便捷开关:
  • Canvas 保护 — 启用后,会向 Canvas 操作注入确定性噪声。这使你的 Canvas 指纹对每个分身唯一,同时在不同会话间保持一致。
  • Audio 保护 — 启用后,会向 AudioContext 操作注入确定性噪声。类似于 Canvas 保护,但针对基于音频的指纹追踪。
生成随机指纹时,两者默认开启

验证你的指纹

启动分身后,可以使用以下网站验证指纹效果:
工具网址检查内容
BrowserLeaksbrowserleaks.com全面的指纹分析
CreepJSabrahamjuliot.github.io/creepjs高级反检测分析
AmIUniqueamiunique.org指纹唯一性评分
Pixelscanpixelscan.net机器人检测和一致性检查

故障排除

指纹未生效

  1. 确保分身已配置指纹设置(检查配置对话框)
  2. 确认 Chrome 使用了正确的调试端口启动(查看日志)
  3. CDP 注入仅在 Chrome 正确启动时才能工作——检查 Chrome 启动错误

网站仍然检测到自动化

  1. 确认 navigator.webdriver 已被移除(在 DevTools 控制台中检查:navigator.webdriver 应为 undefined
  2. 验证 window.chrome 存在(某些网站检查其是否缺失)
  3. 确保所有指纹值内部一致(参见上方一致性准则)
  4. 某些高级检测可能检查时序异常——指纹伪装有帮助但无法完美对抗所有检测方法

Canvas/WebGL 测试显示相同指纹

  1. 确保不同分身的 canvasNoiseSeed 不同
  2. 验证分身设置中已启用 Canvas 保护
  3. 关闭并重新启动浏览器——指纹注入在启动时进行