iOS VPN应用程序的安全漏洞分析

更新时间

在2023年8月,一位安全研究人员发现了iOS VPN应用程序中的一个重大漏洞,而另一位研究人员现在已经展示了另一个主要问题。

漏洞一:未能关闭现有连接

当您激活VPN应用程序时,它应该立即关闭所有现有的(不安全的)数据连接,然后在安全的“隧道”内重新打开它们。这是任何VPN服务的标准功能。然而,Michael Horowitz发现,这一过程并不可靠,iOS甚至不允许VPN应用程序关闭所有现有的不安全连接。

漏洞二:许多Apple应用被排除在外

开发者和安全研究人员Tommy Mysk对我们的报道产生了兴趣。他进行了自己的测试,查看在VPN激活时访问了哪些IP地址,发现许多Apple的默认应用忽略了VPN隧道,而是直接与Apple服务器进行通信。

我们确认,iOS 16确实在活动VPN隧道之外与Apple服务进行通信。更糟糕的是,它还泄露了DNS请求。# 在VPN连接之外逃避的Apple服务包括健康、地图和钱包等。这意味着所有发送到这些服务器的数据都面临ISP或黑客通过中间人攻击进行窥探的风险,后者通常使用容易创建的假Wi-Fi热点。

泄露数据的应用包括:

  • Apple Store
  • Clips
  • Files
  • Find My
  • Health
  • Maps
  • Settings
  • Wallet

显然,这些应用处理的大部分或全部数据可能包括极其私密的信息,从健康状况到支付卡。尽管数据是加密的,但Apple无视用户使用VPN以增加安全性的决定,这仍然令人担忧。

您可以观看Mysk使用Wireshark捕获iPhone访问的IP地址的测试:

Mysk发现,Android在与Google服务的交互中表现相同。

Android的行为

我知道您在想什么,答案是:是的。Android在活动VPN连接之外与Google服务进行通信,即使在选择了“始终开启”和“阻止非VPN连接”的情况下。我使用的是运行Android 13的Pixel手机。

看似是故意行为

我问Mysk,他是否认为这两家公司是故意这样做的,可能是为了防止应用程序重定向流量,或者出于性能原因?

“是的,我认为这是故意的。但我们看到的流量远超预期。iPhone上有些服务需要频繁联系Apple服务器,例如Find My和推送通知。然而,我认为在VPN连接中隧道化这些流量并没有问题,反正流量是加密的。”

如果Apple对VPN应用程序有安全顾虑,他表示这很容易解决。“我认为VPN应用程序应该被视为浏览器,并需要Apple的特殊批准和授权。”

性能问题

至于Apple担心VPN服务会减慢流量,这似乎不是问题,因为推送通知使用了VPN隧道。在iOS 14时期,我们进行过类似的实验,发现推送通知绕过了VPN。在iOS 16中,这种情况不再存在。

结论

iOS VPN应用程序存在的安全漏洞令人担忧。用户在使用VPN时,应该清楚了解可能面临的风险,并选择能够提供更高安全性的VPN服务。确保您的VPN提供商能够有效保护您的数据,并且具备必要的隐私措施。

更新时间