Cookie 隔离与会话管理——Tor Browser 如何防止跨站追踪
Cookie 追踪的原理
普通浏览器的 Cookie 管理规则很简单:每个网站都可以在你的浏览器里存一份 Cookie,下次访问同一个网站时网站能读到它。但这不够——真正的追踪是这样的:
- 你访问 example.com,页面里嵌了一个第三方追踪脚本(比如 Facebook Pixel、Google Analytics)
- 这个脚本在浏览器里写了一个属于 Facebook 的 Cookie
- 你再访问 another-site.com,它也嵌了同一个 Facebook 追踪脚本
- Facebook 读回之前写的 Cookie,知道"这两个网站是同一个人访问的"
这就是第三方 Cookie 追踪——让广告网络跨站构建你的行为画像。
Tor Browser 怎么处理 Cookie
默认开启"第一方隔离"
Tor Browser 的核心 Cookie 策略是第一方隔离(First Party Isolation):
- 每个 Cookie 不仅归属于它自己的域名,还归属于当前访问的顶层网站域名
- 只有当你再次访问完全相同的组合(顶层域名 + Cookie 域名)时,Cookie 才会被发送
举个例子:
- 访问 example.com 时,Facebook Pixel 写了一个 Facebook Cookie,标记为"属于 example.com"
- 访问 another-site.com 时,Facebook Pixel 想读之前那个 Cookie,但因为顶层域名不同,读不到
这样 Facebook 无法用 Cookie 跨站关联你在 example.com 和 another-site.com 的行为。
会话结束自动清除
Tor Browser 的默认设置是:关闭浏览器后,所有 Cookie、LocalStorage、IndexedDB 全部清除。
这意味着:
- 每次打开 Tor Browser 都是一个全新的身份——没有历史 Cookie,没有缓存
- 任何追踪者试图在你的浏览器里持久化身份标识都会失败
- 登录任何网站都只能在当前会话有效——关掉浏览器就要重新登录
Cookie 设置的位置
菜单 → 偏好设置 → 隐私与安全性 → 隐私部分
这里有几个相关选项:
- ✅ 阻止跨网站追踪(默认开,不要关)
- ✅ 在 Tor 中启用第一方隔离(默认开,不要关)
- ✅ 关闭 Tor 时清除 Cookie 和网站数据(默认开,不要关)
为什么不要手动改 Cookie 设置
Tor Browser 的 Cookie 管理策略是经过 Tor 安全团队反复评估的最优解。手动修改容易踩坑:
- 关掉第一方隔离 → 第三方 Cookie 追踪立刻恢复
- 关闭会话清除 → 下次打开浏览器带上之前的追踪 Cookie
- 允许永久 Cookie → 给了追踪者一个持久化身份标识
NoScript 对 Cookie 的辅助作用
NoScript 和 Cookie 隔离是协同关系:
- NoScript 禁用了网站脚本 → 网站无法通过 JavaScript 写入追踪 Cookie
- Cookie 隔离即使在脚本开启时也生效 → 即使网站能写 Cookie,跨站读不到
- 两层保护叠加,追踪难度指数级提升
浏览器对比
| 浏览器 | 第一方隔离 | 会话清 Cookie | 第三方 Cookie 拦截 |
|---|---|---|---|
| Tor Browser | ✅ 默认开启 | ✅ 默认开启 | ✅ 内置 |
| Brave | ✅ 可选 | ⚠️ 可选 | ✅ 内置 |
| Firefox | ✅ 可选(需启用) | ⚠️ 可选 | ✅ 增强追踪保护 |
| Chrome | ❌ 无 | ❌ 无 | ❌ 即将禁用第三方 Cookie |
| Safari | ⚠️ ITP 策略(非严格隔离) | ❌ 无 | ✅ ITP |
日常使用影响
Tor Browser 的 Cookie 策略对日常使用的最大影响是:
需要频繁重新登录
每次关闭浏览器后,所有网站登录状态都没了。这是有意设计——但确实会带来不便。
应对方法:
- Tor Browser 里尽量不要登录任何账号(包括你的日常账号)
- 确需登录的(比如某个论坛),建议用专门为 Tor 创建的独立账号
- 不要指望"记住密码"功能——下次打开浏览器 Cookie 清了,密码可能也白存了
某些网站功能受限
需要跨域读取用户状态的网站功能(比如购物车、单点登录、跨应用同步)在 Cookie 隔离下会有问题。这是安全的代价,无法同时兼得。