本文来自“硅星人”,作者为光谱、杜晨,本文观点不代表智通财经观点。
Zoom(ZM.US),一家刚刚在纳斯达克上市的视频会议技术公司,正在遭遇新一轮安全风波。点一下链接,瞬间打开 app 进入视频会议。有了Zoom,远程开会就是这么简单。——太简单了,以至于一个最新发现的Zoom Mac 客户端漏洞有可能成为后门。黑客不但可以强制你加入视频会议,获取你的网络摄像头画面,甚至还能对你的Mac电脑进行 DoS(拒绝服务)攻击。
美国时间7月8日,Medium账号 InfoSec Write-ups 发布了Zoom的最新0day漏洞报告。Zoom一个备受欢迎的特性就是“一键进入会议”。该产品的用户都知道,在任何的场景下,比如在网页、Slack里,点击类似下面的链接,就可以立刻弹出 Mac客户端——没有对话框,不需要选择或任何额外的点击,就能直接加入视频会议。
最初在今年3月,有人爆出这一设置存在严重的安全隐患,要求Zoom认可该情况、提出解决方案并尽快打上补丁——然而当时正值Zoom上市的筹备期,该公司未能及时处理问题。安全研究员Jonathan Leitschuh发现,Zoom会在安装了Mac客户端的电脑上保持运行一个web server(一个软件层级的服务器),开启19421端口并通过该端口保持服务。简单来说,Zoom通过19421端口运行着一个 API(应用接口)。
让Leitschuh感到可疑的是,在Zoom的使用说明书以及其它任何文档中,都没有提到过这个端口以及相关的API;不仅如此,这个接口是完全暴露在互联网上的,任何其它网站/人都可以访问这台电脑的IP地址和这个端口。
Leitschuh在查看Zoom网站时发现了这段代码,引起了他的注意。Image Credit: Jonathan Leitschuh/Infosec Write-ups当Mac用户在网页上点击一个Zoom视频会议的加入链接时,该网页并不会发布一个常见的 AJAX 请求,而是直接加载了前述网络服务器里保存的一张极其微小的空白图片。
Leitschuh进一步发现,这个网络服务器的功能远不止纯粹的“打开客户端”和“加入会议”:那张空白图片的像素点,分别包含了下载、安装客户端、检查版本等操作的链接。(这种做法,像极了邮件营销领域常用的追踪像素)
每一个功能/提示都在图片上对应了一个像素点
研究员开始了自己的尝试,不久后就发现:只要加入激活该网络服务器的代码,任何网站都可以在用户访问时强制用户的Zoom客户端激活,并加入会议,完全不需要用户授权。比如,你可以在网页上用插入图片或视频 (iframe) 的方式来承载激活会议的代码:
更为夸张的是:1)会议的发起者(假定为黑客)可以设置参与者默认以视频的方式加入会议;2)前述的本地网络服务器是后台运行的,即便代码执行时用户没有打开 Zoom 客户端,也可以激活。也就是说,黑客可以强制打开受害者的摄像头并查看其画面。受害者可能会突如其来的视频会议吓一跳;如果当时没有在看屏幕的话,有可能完全不知情就暴露了自己的隐私。
Leitschuh制作了一个简单的概念证明。如果你安装过,或曾经安装但已经卸载了Zoom客户端,在Mac电脑上打开下面的两个链接(看起来只是正常的网页),就会突然被加入到一个电话/视频会议里:
为什么Zoom要这样做?原来,它是为了绕过Chrome、Safari等浏览器为了安全而屏蔽掉的一种静默访问方式。Chrome在2010年就拒绝了一个名为CORS的访问方式,而Safari在版本12当中要求用户必须点击同意才能授权浏览器启动视频会议。
如果严格按照浏览器厂家的规矩办,Zoom一键进入会议的核心卖点就无法实现,使用体验可能会“降低”。这个漏洞不需要你的电脑上已经安装Zoom客户端——即便你曾经使用过,但后来卸载了客户端,前述通过19421端口运行的网络服务器仍然存在,并且在后台持续运行。
这个网络服务器能自动下载客户端并执行安装操作。(受制于电脑上的安装策略,大部分人需要同意才能完成。)前面还提到,这个漏洞有可能会成为拒绝服务(DoS) 攻击的载体。因为,这一漏洞允许黑客向受害者持续大量发送加入会议的邀请。
Zoom倒是没有认为这个问题很严重。Zoom在其网站声明中表示,“我们认为这是解决不良用户体验问题的合理解决方案,使我们的用户能够更快地进行一键加入会议。我们并不是唯一使用这种解决方案的视频会议提供商。”
声明还提到,该公司将在7月9日周二午夜之前发布更新,移除承载这一漏洞的网络服务器。目前,Zoom的个人用户数量超过4000万,其中大约400万为Mac 使用者。