苹果公司新推出的iCloud私人中继系统中被发现一个缺陷,在满足某些条件时暴露了用户的IP地址,从而破坏了该功能的基础价值。正如研究人员和开发人员SergeyMostsevenko在本周的一篇博文中所详述的那样,私人中继在处理WebRTC方面的一个缺陷会""泄露""用户的真实IP地址,其在FingerprintJS网站提供了一个概念证明。
在6月的全球开发者大会上宣布的PrivateRelay承诺通过将互联网请求路由到由两个不同实体运营的两个单独的中继站,来防止第三方对IP地址、用户位置和其他细节的跟踪。苹果公司说,配置为通过私人中继的互联网连接使用匿名的IP地址,映射到用户所在地区,但不透露他们的确切位置或身份。
理论上,网站应该只看到出口代理的IP地址,但用户的真实IP在某些WebRTC通信场景中会被保留,可以通过一些巧妙的代码来发现。
正如Mostsevenko所解释的,WebRTCAPI是用来促进网络上的直接通信,而不需要中间服务器。在大多数浏览器中部署,WebRTC依靠互动连接建立(ICE)框架来连接两个用户。一个浏览器收集ICE候选者,并使用潜在的连接方法来寻找并与第二个浏览器建立链接。
漏洞出现在服务器反射性候选,这是一个由NAT(STUN)服务器会话穿越工具使用的候选,用于连接到位于NAT后面的设备。网络地址转换(NAT)是一个协议,使多个设备能够通过一个IP地址访问互联网。重要的是,STUN服务器共享一个用户的公共IP地址和端口号。