公共 Wi-Fi 的风险(即使 HTTPS 已经普及)
几年前,使用咖啡店网络的建议简单而严峻:假设有人正在读取你的流量。后来,HTTPS 几乎在所有地方都成为默认选项,浏览器开始对明文站点发出警告,很多人也因此悄悄放下了戒心。
后半部分才是问题所在。HTTPS 普及后,公共 Wi-Fi 的风险并没有消失——只是转移了。过去那种被动地嗅探你 Gmail 密码的窃听者已基本绝迹。剩下的威胁更具针对性、更难察觉,因为锁形图标让一切看起来都很正常。
本文将梳理 HTTPS 真正解决了什么、没有解决什么,以及能切实降低你在陌生网络上风险敞口的几个习惯。
HTTPS 究竟解决了什么
功劳要承认。HTTPS——网络协议的加密版本——确实修复了公共 Wi-Fi 问题中最大、最愚蠢的那个版本。
2014 年,与你在同一机场网络的人可以运行一个免费工具,监视你的浏览器加载 Facebook,然后带着你的 session cookie 离开。这类攻击基本上已经死亡。HTTPS 默认开启、HSTS(一种告诉浏览器「永远不要再通过明文 HTTP 加载此站点」的标志)以及更严格的 cookie 规则相互配合,使针对主流站点的被动嗅探几乎一无所获。
如果你的威胁模型是「我不想让三桌之外无聊的人读我的邮件」,HTTPS 已经帮你做到了。
再往上一级的威胁模型,才是真正需要诚实面对的地方。
HTTPS 无法覆盖的范围
HTTPS 加密的是你与特定服务器之间连接的内容。它不保护连接建立之前的步骤,也不保护你在面对某些看起来稍有异常的东西时的判断。公共 Wi-Fi 的风险依然藏在这些地方。
强制门户注入
连接酒店和机场 Wi-Fi 时弹出的「同意条款」页面称为强制门户(Captive Portal)。为了让它生效,网络必须拦截你的第一个网络请求并将其重定向到它选择的地方。这在设计上就是一种中间人行为——经过授权,但仍然是中间人。
运营良好的强制门户无害。运营不善(或蓄意恶意)的门户则可能向你投送 JavaScript、推送虚假软件更新,或悄悄为每一台接入设备建立档案。手机通常会在一个没有完整地址栏的简化浏览器中显示门户,这让你更难判断自己实际看到的是什么。
弱解析器上的 DNS 劫持
当你输入 bank.com 时,设备会向网络的 DNS 解析器询问「这个地址的 IP 是什么?」在公共网络上,该解析器由接入点的所有者运营。
配置错误或存在恶意的解析器可以撒谎。它可以把你引导到一台并非你银行的服务器,然后呈现自己的证书。现代浏览器会发出警告——但前提是证书有问题,而且你读了警告而不是直接点击跳过。
配置错误站点上的 SSL 剥离
SSL 剥离是一种古老的技巧,在特定情况下仍然有效。攻击者坐在你和目标站点之间。你输入example.com(没有 https:// 前缀),网络将其拦截,自己获取真正的 HTTPS 页面,然后向你提供一个明文 HTTP 副本。
使用 HSTS 预加载的站点不受影响。没有使用的(通常是较小的服务、内部工具,或你通过旧书签访问的任何内容)则不然。地址栏会悄悄显示 http:// 而不是锁形图标,而大多数人不会去看。
流氓接入点与邪恶双胞胎
这个值得好好理解,因为它绕过了上面提到的大部分防御措施。
你的手机会记住网络。当它看到一个与曾经连接过的 Wi-Fi 名称匹配的信标(一种广播 Wi-Fi 名称的小数据包)时,可以自动连接。拥有现成硬件的攻击者可以广播声称自己是 Starbucks WiFi 或 Hotel Guest 的信标,发送解除认证帧将你的手机踢离合法网络,然后看着你的设备在你毫不知情的情况下跳转到他们那边。
此后,攻击者就是那个网络。他们控制 DNS,运营强制门户,能看到你设备上哪些应用在尝试连接哪些服务器——即使内容是加密的。他们可以提供自己的强制门户页面,对未预加载的内容尝试 SSL 剥离,并在看起来正常的登录流程中索要凭据。
这种攻击的技术名称是「邪恶双胞胎」,而令人不安的地方在于:没有任何东西会警告你这正在发生。你的手机只会显示熟悉的 Wi-Fi 图标。
证书警告训练效应
浏览器在警告方面越来越好,用户在忽略警告方面也越来越娴熟。
当你看到全屏红色证书警告时,几乎总意味着连接有问题。有时是无害的(证书过期),有时则不然(正在进行的中间人攻击)。应对方法是不要点击跳过。但实际上,多年来配置糟糕的企业网络已经训练人们在不阅读内容的情况下直接按下「仍然继续」按钮。
在咖啡店网络上,那个按钮可能就是整个攻击的入口。
「邪恶双胞胎」攻击的实际原理
如果你想对这一切有一个清晰的认识,邪恶双胞胎攻击是最典型的例子。
攻击者带着一台笔记本或小型便携设备进入咖啡店,运行一段依次完成三件事的软件。
第一步,扫描周围的 Wi-Fi 网络,记录合法网络的名称(SSID)。假设是 Cafe Guest。然后开始广播同名信标帧,通常以更高功率发送,以便设备优先选择它。
第二步,向已连接到真实网络的客户端发送解除认证帧。解除认证帧是 Wi-Fi 正常工作的一部分——它们告诉设备「你已断开连接,请重新加入。」在大多数网络上,这些帧未经认证,意味着任何人都可以发送它们。真实网络上的手机被踢出后会寻找重新连接的地方。
第三步,攻击者呈现一个强制门户。它可能要求你输入邮箱和密码「以访问免费 Wi-Fi」,可能模仿酒店登录页面,也可能直接放你通过,悄悄通过自己的连接转发你的流量并记录一切。从你手机的角度看,你已上线;从攻击者的角度看,他们现在是你的 ISP。
防御方法不是去读数据包头部,而是让攻击变得无趣——不自动连接未知网络、通过本地网络无法窥视的渠道传输敏感流量,以及不在你没有主动导航到的页面输入凭据。
2026 年公共 Wi-Fi 安全吗?
诚实的答案:对大多数事情来说足够安全,对所有事情来说则不够安全。
阅读新闻、查食谱、刷社交媒体——没问题。流量出错的代价很低,现代浏览器的防护也是真实存在的。
登录银行、访问工作管理面板、批准转账,或者登录一个会向你发送恢复码短信的新服务——这些是更高价值的时刻,「大概没问题」和「肯定没问题」之间的差距在这里很重要。弥合这一差距最简单的方法,就是不在你无法控制的网络上做这些事。
五个实用步骤
这些都不需要你去思考数据包帧,它们只是习惯。
- 关闭对未知网络的自动连接。在 iPhone 上,这项设置在「设置」→「Wi-Fi」→「自动连接热点」,以及每个网络的「Wi-Fi」→(网络名称)→「自动连接」下。重点是让你的设备在连接到同名网络前先询问你。相关步骤另见我们的 iPhone VPN 设置指南。
- 尽可能优先使用蜂窝网络或个人热点。5G 连接并非完全私密,但它有一个明确的、可追责的运营商,陌生人无法轻易插入其中。外出时遇到敏感操作,手机热点通常比酒店网络更好的选择。
- 在关键时刻使用 VPN。VPN(即虚拟专用网络)将你的流量通过加密隧道路由到你信任的服务器,本地网络只能看到那一条连接,看不到它的去向。这能中和上面提到的大多数风险类别:强制门户仍然可以打扰你,但它看不到你的 DNS 查询,无法对你访问的站点进行 SSL 剥离,也无法分析你正在使用哪些应用。如果你对这个概念还不熟悉, 我们关于 VPN 是什么的入门介绍 涵盖了基础知识, 我们的旅行 VPN 使用指南 则深入介绍了具体情况。Snap 是围绕这一理念构建的一个选项,但更广泛的习惯比品牌本身更重要。
- 在公共网络上绝不点击跳过证书警告。如果你看到浏览器的全屏证书警告,关闭该标签页。在家庭网络上,这几乎总是站点配置错误;在咖啡店 Wi-Fi 上,可能是有人正在主动进行中间人攻击。出错的代价足够高,「稍后再试」是正确的默认做法。
- 将敏感登录和交易留到可信网络上进行。银行操作、密码重置、任何涉及恢复码或双因素验证流程的事情——这些都值得等到回到蜂窝网络或家庭 Wi-Fi 后再进行,那点小小的不便远小于在机场操作可能带来的风险不对称。
VPN 能修复什么,不能修复什么
这一点有很多噪音,值得说清楚。
VPN 能修复的:
- 本地网络查看你 DNS 查询记录的能力
- SSL 剥离(你的流量不会以明文形式穿越恶意网络)
- 通过强制门户后的门户分析行为
- 流氓接入点从你的活动中获取任何有用信息的能力
VPN 不能修复的:
- 你主动点击跳过的证书警告
- 你主动登录的钓鱼页面
- 已经在你设备上的恶意软件
- 你访问的网站仍然可以通过账户和 cookie 识别你这一事实
它是针对一类特定公共 Wi-Fi 风险的利器,而不是魔法盾牌——把它当作魔法盾牌来推销的产品都是夸大其词。我们关于 常见 VPN 误解 的汇总文章深入探讨了更多营销与现实之间的差距。
结论
HTTPS 解决了问题的简单版本。更难的版本——连接之下的那一层,DNS、强制门户和流氓接入点所在之处——在出问题之前几乎是隐形的。
你不需要成为网络工程师才能对此保持理性。关闭自动连接,对强制门户保持怀疑,不要点击跳过证书警告,在风险真实存在时使用蜂窝网络或 VPN。
如果你希望在 iOS 上以简洁的方式处理 VPN 部分—— 注册无需邮箱,不记录流量日志,订阅通过你的 Apple ID 悄悄完成扣款—— Snap 正是围绕这一理念构建的。macOS 版本也即将推出。但无论如何,最重要的事不是你安装了哪个应用,而是你不再把咖啡店网络当作自己的网络来对待。