Home/ Blog/什么是时区伪造?如何实现伪造浏览器时区

什么是时区伪造?如何实现伪造浏览器时区

logo Hidemyacc circle

你已经将代理更改为美国 IP,但时区仍设置为 GMT+7,并且不明白为什么你的账户一直被标记。这是许多人在设置浏览器配置文件时容易忽略的常见错误。网站只需一行 JavaScript 即可读取你的时区,如果它与你的 IP 不匹配,平台会立即将其视为异常。本文将解释什么是伪造时区,为什么它是指纹识别中不可或缺的一部分,以及如何正确地伪造时区以避免系统检测到不一致。

1. 网站如何在浏览器指纹中使用时区?

时区不是机密信息。它是浏览器始终提供给网站的基本参数之一,用于支持根据用户的地理区域显示时间、日历或内容。然而,在浏览器指纹中,时区不仅服务于用户体验,还成为帮助网站评估整个浏览器配置文件一致性的信号。

为什么反欺诈系统总是会检查时区:

1.1 网站可以非常轻松地检查时区

与 Cookie 或登录历史记录不同,网站不需要用户权限即可读取浏览器的时区。只需几行 JavaScript,网站就可以通过 Intl.DateTimeFormat().resolvedOptions().timeZone 或 new Date().getTimezoneOffset() 等 API 获取浏览器报告的时区信息。

此过程在网页加载时立即发生,完全不需要用户登录或执行任何操作。因此,在网站构建浏览器指纹时,时区通常是首批收集的参数之一。

时区伪造
网站可以通过 JavaScript 读取浏览器的时区,而无需用户登录。

1.2 时区与代理不匹配是异常的标志

最常见的配置错误之一是时区不匹配 (timezone mismatch),即浏览器的时区与 IP 地址指示的地理位置不符。

例如:

  • IP 地址被识别为位于纽约。
  • 浏览器报告的时区为 Asia/Ho_Chi_Minh (亚洲/胡志明市)。

对于网站来说,这是一个非常容易识别的异常。系统只需将 IP 的位置与浏览器返回的时区进行比较,无需使用复杂的分析算法或长期跟踪用户行为。

为了缓解此问题,我们使用伪造时区 (spoof timezone) 技术来更改 JavaScript 返回给网站的时区值,而不是更改操作系统的时区。当浏览器时区与代理的位置同步时,浏览器指纹将变得更加一致,从而降低时区不匹配的风险。

需要注意的是,伪造时区不会改变 IP 位置。这项技术的目的是确保网站从浏览器看到的内容与 IP 地址代表的地理位置相符。

1.3 VPN 会更改 IP,但不会更改浏览器时区

许多人认为只需更改代理或开启 VPN 来保护信息就完成了位置伪造过程。实际上,VPN 主要改变网络流量的路由和网站看到的 IP 地址,而浏览器的时区通常仍然来自当前操作系统或浏览器的配置。

这会导致一种常见情况:IP 路由经过美国,但浏览器仍报告越南时区。尽管代理功能正常,浏览器指纹仍然会暴露出 IP 位置与时区之间的不一致。

1.4 夏令时 (DST) 是许多工具忽略的复杂层

提到时区,许多人只想到 UTC 偏移量,例如 UTC+7 或 UTC-5。然而实际上,许多国家还实行夏令时 (DST)——一种根据季节调整时钟的机制,即在夏季增加一小时,在冬季恢复标准时间。这是许多简单的时区伪造工具容易忽略的一层。

为什么仅伪造 UTC 偏移量是不够的:

  • UTC 偏移量是一个固定数字(例如 UTC-5),无法反映该国家是否遵守 DST。
  • 在过渡季节,实际的偏移量会发生变化(UTC-5 变为 UTC-4),但仅伪造固定偏移量的工具将报告错误的时间。

如果无论一年中的什么时候浏览器都报告 UTC-5,网站就能检测到时区与该地区实际时间规则之间的不一致。

时区伪造
DST 导致 UTC 偏移量随季节变化,这就是为什么仅仅伪造 UTC 偏移量通常是不够的。

为了更准确地处理这个问题,现代浏览器和许多专业工具使用 IANA 时区,而不是仅仅保存一个 UTC 偏移量值。

IANA 时区是基于地理区域命名时区的标准,例如 America/New_York (美洲/纽约)、Europe/London (欧洲/伦敦) 或 Asia/Ho_Chi_Minh (亚洲/胡志明市)。与仅代表单一时间点时差的 UTC 偏移量不同,IANA 时区还包含有关特定区域随时间推移的夏令时规则和时区变化。

因此,浏览器可以返回与一年中实际时间相匹配的时区信息,帮助浏览器指纹更准确地反映网站期望的环境。这也是为什么当前许多工具优先伪造 IANA 时区,而不是仅仅改变 UTC 偏移量的原因。

2. IP 到时区映射如何工作?为什么“正确”的代理有时会给出错误的时区?

代理位于正确的国家并不保证网站看到的时区始终准确。实际上,网站不会直接从代理确定时区,而是通过一个称为 IP 到时区映射 (IP-to-timezone mapping) 的中间步骤。

网站不会自动从 IP 地址确定时区,通常是通过 GeoIP 数据库(如 MaxMind 或类似服务)进行查找。这些数据库将 IP 映射到其对应的国家、城市和时区。此过程完全自动,并且独立于你声明的时区。

时区伪造
网站通常使用 GeoIP 数据库将 IP 地址映射到其各自的区域和时区。

当用户访问时,网站会将从 GeoIP 推断出的时区与浏览器报告的时区进行比较。如果这两个值不匹配,则浏览器指纹可能被视为不一致。

然而,正确的国家/地区代理并不一定意味着时区始终准确。某些 GeoIP 数据库可能未及时更新,或包含不准确的信息。

一些常见的情况包括:

  • 移动代理:运营商的 IP 地址通常注册在网络中心或公司总部的位置,而不是设备的实际位置。例如,在俄罗斯运行的 SIM 卡仍可能使用 GeoIP 数据库分配给美国或其他区域的 IP。
  • 数据中心代理:IP 地址可能注册在一个州或城市,而物理服务器在其他地方运行。根据网站使用的 GeoIP 数据源,从 IP 推断出的时区可能无法准确反映服务器的实际位置。
  • 数据库更新缓慢:当新的 IP 段被分配或转移给不同的提供商时,GeoIP 数据库通常需要时间来更新。在此期间,网站可能仍根据其旧位置识别 IP,导致时区结果不准确。

因此,即使使用正确国家的代理,也建议仔细检查网站看到的时区,而不是仅仅依赖代理提供商提供的信息。

了解更多:

3. 什么时候需要伪造时区?

并非总是需要伪造时区。但是,如果网站或平台检查浏览器指纹,将时区与代理同步将有助于使浏览器配置文件更加一致,并减少不必要的配置错误。以下是建议伪造浏览器时区的常见情况。

3.1 管理多个账户

当管理多个浏览器配置文件时,每个配置文件通常会分配一个单独的代理。在这种情况下,时区也必须匹配各个代理的位置。

如果 10 个配置文件使用 10 个不同的 IP,但都报告 GMT+7 时区,平台就能检测到异常并将这些配置文件关联起来。除了时区,区域设置和语言也应进行适当配置,以确保每个配置文件准确反映其模拟的地理区域。

3.2 模拟其他区域的用户

当需要模拟特定国家或地区的用户时,伪造时区也非常有用。

一些常见场景包括:

  • 测试跨不同市场的网站界面或体验。
  • 验证仅在某些国家/地区可见的登陆页面、优惠或内容。
  • 检查按地区个性化的搜索结果或内容。

在这些情况下,仅仅更改 IP 是不够的。网站仍然可以将时区与代理的位置进行交叉对比,以评估浏览器指纹的一致性。

3.3 投放广告、联盟营销和自动化

Facebook、Google 或 TikTok 等平台不仅检查 IP 地址;它们还会评估浏览器指纹中的众多信号。除了时区之外,系统还会收集代理、区域设置、语言、WebRTC、Canvas 指纹等众多信号,以评估浏览器环境的自然程度。

这也适用于 Selenium、Playwright 或 Puppeteer 等自动化工具。如果时区未与代理同步,浏览器环境可能会显得不够自然,并且极易导致时区不匹配。

需要注意的是,伪造时区并不仅仅是帮助你“逃避检测”。它只是构建一致的、与浏览器配置文件所模拟的位置相匹配的浏览器指纹过程中的一个步骤。

4. 为什么 Puppeteer、Playwright 和 Selenium 容易泄露时区?

自动化框架(如 Puppeteer、Playwright 和 Selenium)有助于自动化浏览器操作,但在默认情况下,它们不会自动将时区与代理同步。

启动浏览器时,时区通常继承自运行自动化的环境,例如计算机或服务器 (VPS/服务器) 上的操作系统。这意味着,即使代理被分配到另一个国家,浏览器仍可能报告服务器的时区。

例如,如果你使用位于纽约的代理,但在位于德国的 VPS 上运行自动化,或者使用 UTC 时区,网站可能会看到:

  • IP:纽约
  • 时区:Europe/Berlin (欧洲/柏林) 或 UTC

这种差异极易导致时区不匹配,即使代理本身运作完全正常。

这就是为什么许多人会遇到代理在正确的国家、IP 也是干净的,但在 Browserleaks 上检查时却发现时区不匹配的原因。原因不在于代理,而在于自动化环境仍在使用操作系统或服务器的默认时区。

要解决此问题,你需要专门为浏览器配置时区,而不是让框架继承默认设置。一些框架支持通过 API 进行时区伪造,而防关联浏览器允许你为每个浏览器配置文件分配时区,并可以与代理同步,从而在处理多个配置文件时节省手动配置的时间。

5. 常见的时区伪造方法

目前,有多种方法可以伪造浏览器时区,从开发者工具到专用的防关联浏览器不等。每种方法都有其自身的运作机制、应用范围和适用程度。选择哪种解决方案取决于预期用途和需要管理的配置文件数量。

5.1 Chrome DevTools

Chrome DevTools 提供时区模拟功能以协助网站测试。你可以打开 DevTools → More tools → Sensors 并选择你要模拟的时区。此设置仅在当前打开的标签页或 DevTools 会话中有效,不会更改操作系统时区,并且在关闭浏览器后失效。

时区伪造
Chrome DevTools

优点

Chrome DevTools 适用于在网站开发过程中进行快速检查或测试。

  • 免费并内置于 Chrome。
  • 设置快速,无需安装额外软件。
  • 非常适合测试跨不同时区的 UI 或功能。

缺点

相反,此方法仅服务于测试目的,不适合长期使用。

  • 每次使用都必须重新配置。
  • 不会与代理自动同步。
  • 不适合管理多个浏览器配置文件或长期使用。

最适合:开发者、测试人员和 QA。

5.2 浏览器扩展 (Browser extension)

某些 Chrome 扩展可以通过干扰返回的 JavaScript 值来更改浏览器向网站报告的时区。此解决方案很简单,不需要更改操作系统配置,并且安装后即可立即使用。

优点

当你只需要在一个浏览器中更改时区而不想修改操作系统配置时,浏览器扩展非常适用。

  • 易于安装和使用。
  • 不影响整台计算机。
  • 适用于测试或基本使用场景。

缺点

因为它只处理网站收集的一小部分信息,所以在处理采用复杂指纹检测机制的平台时,扩展仍然存在许多局限性。

  • 不会将时区与代理自动同步。
  • 可能不完全支持 IANA 时区或 DST。
  • 如果区域设置、语言或其他参数不匹配,网站仍然可以检测到异常。

最适合:个人用户或简单的测试需求。

5.3 更改系统时区 (OS)

这涉及直接更改 Windows 或 macOS 的时区。更改后,机器上的浏览器和大多数应用程序都将使用新时区。

时区伪造
更改操作系统时区将影响机器上的所有应用程序。

优点

如果整台设备专用于固定的地理区域,此方法是合适的。

  • 应用于机器上的所有浏览器和应用。
  • 无需安装额外的扩展或软件。
  • 设置一次并保持不变,直到用户再次更改。

缺点

作为代价,系统上的所有应用都会受到影响,这使得该方法在处理多个不同区域时缺乏灵活性。

  • 改变使用系统时间的时钟、日历和应用程序。
  • 不能同时使用多个时区。
  • 如果频繁在多个代理或市场之间切换,会很不方便。

最适合:一次只专门在一个地理区域工作的用户。

5.4 防关联浏览器 (Antidetect browser)

防关联浏览器允许为每个独立的浏览器配置文件配置时区,而不是将其应用于整个操作系统。根据软件的不同,可以手动设置时区,也可以根据代理的位置自动更新时区。

时区伪造
在防关联浏览器中配置时区

除了时区之外,许多防关联浏览器还支持在同一个浏览器配置文件中进行 IANA 时区配置、DST 处理和区域/语言设置。这有助于减少配置时间并限制网站收集的参数之间的不一致。

优点

当需要管理多个浏览器配置文件或经常在不同区域处理多个代理时,这是理想的选择。

  • 每个浏览器配置文件可以使用其自己独立的时区。
  • 支持同时管理多个配置文件。
  • 减少使用众多代理时的手动配置错误。
  • 轻松维护适合每个配置文件地理位置的参数。

注意

不同防关联浏览器的时区处理能力各不相同。在使用前,你应该验证软件是否支持与代理、IANA 时区和 DST 自动同步。

最适合:管理多个账户、投放广告、联盟营销或运行自动化的用户。

对比表

标准 Chrome DevTools 浏览器扩展 更改操作系统时区 防关联浏览器
应用范围 当前 DevTools 会话 安装了扩展的浏览器 整个操作系统 单个浏览器配置文件
与代理同步 手动设置 手动设置 不支持 自动或手动(取决于软件)
支持 IANA 时区和 DST 有限 取决于扩展 基于操作系统 基于软件功能
同时管理多个时区 否 否 否 是
影响整个系统 否 否 是 否
最适合 网站测试 基本需求 单一、固定的工作环境 管理多个账户和配置文件

没有一种方法能满足所有需求。如果你只需测试网站,Chrome DevTools 或浏览器扩展就能完美胜任。同时,当管理多个浏览器配置文件或处理多个代理时,支持按单个配置文件进行配置的解决方案将有助于减少设置时间并限制手动配置错误。

6. 伪造时区时的重要注意事项

伪造时区并非只是简单地更改浏览器向网站报告的时区。如果相关参数设置不当,浏览器配置文件仍可能显示出异常迹象。以下是在使用账户或运行自动化之前需要检查的一些要点。

6.1 时区必须与其他指纹参数同步

时区并非网站用来评估浏览器环境的唯一参数。如果只更改时区而其他数据点反映的是不同的地理位置,配置文件仍可能表现出异常。

配置配置文件时,你应同时检查以下参数:

  • 代理或 IP 地址。
  • 区域设置 (Locale)。
  • 浏览器语言 (Language)。
  • WebRTC。
  • User-Agent(如果修改过)。

目标并不是更改尽可能多的参数,而是确保网站收集的数据之间不会相互矛盾。

时区伪造
同步指纹参数是必要因素。

了解更多:什么是 WebRTC 泄露?为什么使用 VPN/代理仍会泄露你的 IP

6.2 每次更改配置后重新检查

时区可能会在更换代理、导入或克隆浏览器配置文件、更新软件或编辑指纹设置后发生变化。因此,在投入使用账户之前,你应该重新验证一切,而不是假定所有参数保持不变。

你可以使用 Browserleaks 或类似工具来确认参数。此项检查只需几分钟,但有助于在配置文件投入使用前尽早发现配置错误。

6.3 避免创建不一致的浏览器指纹

大多数时区不匹配的情况并非源于代理质量,而是设置过程不完整导致的。

一些常见的错误包括:

  • 只更改时区,却忘记更新代理、区域设置或语言。
  • 以为 VPN 或代理会自动更改浏览器的时区。
  • 在工具提供 IANA 时区支持的情况下,仅使用 UTC 偏移量。
  • 在更改代理、克隆配置文件或更新软件后未能重新检查。
  • 将同一个浏览器配置文件与不同区域的多个代理结合使用,而未重新调整时区和相关参数。

只需避免上述错误,即可显著降低网站用来评估你浏览器的数据中出现不一致的风险。

7. 结论

时区是一个小信号,但容易被忽视且极易被检测到。正确的做法是不将时区视为孤立的设置,而是作为一个统一指纹的一部分:你的代理、时区、区域设置和语言必须全部指向同一个地理区域。行动建议:立即检查你当前的配置文件,看时区是否与代理相符。

如果你正在管理多个浏览器配置文件,请立即检查每个配置文件中的时区是否与其代理相匹配。手动设置很容易出错,尤其是当配置文件数量增加时。使用 Hidemyacc 防关联浏览器,时区会在配置文件内直接根据代理进行同步,同时同步的还有区域设置和语言,从而保持浏览器指纹一致,无需单独配置每个参数。下载 Hidemyacc 并在使用真实账户之前检查你的浏览器配置文件,确保所有参数设置正确。

8. FAQ

1. 伪造时区足以逃避检测吗?

不够。时区只是其中一部分;它需要与代理 IP、区域设置、语言和 WebRTC 同步。缺少任何一个信号都会产生矛盾。

2. VPN 会自动更改时区吗?

某些 VPN 会自动更改时区,但许多 VPN 仅更改 IP。开启 VPN 后,你必须使用 browserleaks.com 等工具手动检查。

3. UTC 偏移量和 IANA 时区有什么区别?

UTC 偏移量仅仅是时差(例如 UTC-5)。IANA 时区提供全称(例如 America/New_York)以及 DST 规则。使用 IANA 更准确,因为平台会检查 DST。

4. 为什么我使用扩展伪造时区仍然被检测到?

扩展仅更改返回的 JavaScript 值,但无法处理 DST,不同步区域设置/语言,并且在应对大型平台时缺乏稳定性。

5. 我可以在哪里检查我的时区是否与代理相匹配?

使用 browserleaks.com 查看网站看到的时区,并将其与你正在使用的代理位置进行比较。

6. Chrome 支持伪造时区吗?

支持。Chrome DevTools 允许进行时区模拟来测试网站,但此设置仅在当前 DevTools 会话中有效,不适合管理多个浏览器配置文件。

Ads

Read more

无封锁浏览器对比防关联浏览器:有哪些区别?

无封锁浏览器对比防关联浏览器:有哪些区别?

初学者经常混淆无封锁浏览器与防关联浏览器,因为两者都能用于解决网站访问相关的问题。实际上,这两种工具用于解决完全不同的需求:前者专注于突破网络限制以访问受限内容,而后者则侧重于管理浏览器指纹与身份。本文将为您详细梳理 无封锁浏览器对比防关联浏览器 的核心差异,助您根据实际需求选择最合适的工具。

logo Hidemyacc circle
什么是 DataDome CAPTCHA ?为何您频繁触发验证

什么是 DataDome CAPTCHA ?为何您频繁触发验证

您正在正常浏览网页,屏幕上突然弹出了验证要求。本以为完成验证就没事了,但几分钟后却再次碰到 CAPTCHA,甚至越试越容易被拦截。问题通常不在于 CAPTCHA 本身,而在于底层引发风控怀疑的访问信号。本文将为您详细解析 DataDome CAPTCHA 背后的运作机制、导致您频繁遭遇验证的原因、为何真实用户也会被拦截,以及针对不同情况的解决方法。

logo Hidemyacc circle
iPhey 测试:指纹检测与优化指南

iPhey 测试:指纹检测与优化指南

在管理多账号或访问带有风控系统的平台时,仅隐藏 IP 地址是远远不够的,因为网站仍能从您的浏览器和设备中收集大量信息以生成浏览器指纹。iPhey 测试是一款能帮您准确查看有哪些信息正在泄露的工具。本文将详细解释什么是 iPhey 测试、它涵盖哪些检测项目、如何解读测试结果、常见错误排查,以及如何通过 Hidemyacc 打造一致的浏览器环境以提升指纹测试结果。

logo Hidemyacc circle
Chrome 远程调试:开启方法与高效使用指南

Chrome 远程调试:开启方法与高效使用指南

当需要通过代码控制浏览器时,许多人还停留在打开 Chrome 随后模拟鼠标操作的阶段。这种方式慢、易出错且难以扩展。而 Chrome 远程调试 提供了全新途径:让您能够通过 DevTools 协议直接与浏览器内核交互,从而实现读取 DOM、拦截请求、执行脚本并同时管理多个会话。本文将带您了解其运行机制、开启与连接方法、常见错误,以及最重要的一点——如何在使用时不向风控系统暴露自动化特征。

logo Hidemyacc circle
什么是 JA3 指纹?网站如何识别用户身份

什么是 JA3 指纹?网站如何识别用户身份

许多人即使更换了代理、修改了 User-Agent,却依然会被 Cloudflare 频繁拦截或遭遇账号风控,且百思不得其解。原因可能隐藏在更底层的网络连接中:JA3 指纹 是一种在浏览器刚刚建立 HTTPS 加密连接时就生成的独特特征,它完全不依赖于 Cookie 或 JavaScript。本文将为您揭秘 JA3 的工作原理、网站如何利用它进行识别,以及为什么一些常规的多账号操作极易被该系统精准捕获。

logo Hidemyacc circle