自COVID-19大流行开始以来,变焦已经成为必备的工具远程工作者家人和朋友几乎是面对面的见面。在黑帽在拉斯维加斯召开的一次安全会议上,一位安全研究人员演示了他如何使用Zoom和其他应用程序的基础技术来完全控制目标的计算机。
谷歌Project Zero的安全研究员Ivan Fratric开始了他的演讲,他问听众谁对XML感到兴奋,并得到了记者解释为温和的热情。“XML还很年轻的时候,我还是一个年轻的计算机科学学生,那时我对它也不感兴趣,”Fratric说。
“快进二十年后,我终于因为所有错误的原因对XML感到兴奋。”
这是因为Fratric能够追踪到几个bug,当这些bug被利用时,他可以对XMPP做各种可怕的事情。XMPP是什么?Fratric解释说:“本质上是一种基于XML的即时消息传递协议。“当一个东西建立在20多年前的技术上时,你就知道它是安全研究的好目标。”
节走私
Fratric发现,他可以将称为节的XMPP代码块嵌入到其他XMPP节中。然后,他可以使用客户端在合法消息中发送一个偷运的节,让中间服务器接受并转发它,但被目标的即时消息客户端解释为两个节。
Fratric解释说,这一切都是可能的,因为“XML很复杂,XML解析器有一些怪癖”。这些怪癖是两个XML解析器可以以不同的方式解释相同的代码,有时两个解析器都不能正确地解释相同的代码。他的一些攻击需要两个特定的XML解析器,它们在一起使用时非常糟糕,而另一些攻击只影响一个解析器的所有使用。
通过他的攻击,Fratric能够欺骗信息,这意味着目标将收到来自其他人的信息。他还可以将XMPP通信重定向到另一个服务器,这样他就可以看到来往于目标服务器的所有消息。这已经很令人苦恼了,但Fratric对利用这些漏洞在目标机器上远程执行代码很感兴趣。
攻击放大
Fratric以Zoom为例,展示了他如何能够从一个Zoom客户端向另一个客户端发送即时消息。目标的客户端收到了偷运来的XMPP代码,该代码将Zoom的自动更新机制重定向为使用Fratric的服务器,而不是官方的Zoom服务器。
Zoom通过两个步骤验证更新的有效性,但Fratric发现,一个较老版本的Zoom客户端(v.4.4)得到了Zoom的正式签名,但跳过了验证的第二步。这意味着Fratric可以传递4.4客户端的修改版本,并将其安装在目标计算机上,并与他的恶意负载一起运行。
有几点需要注意。主要是,目标需要两次重新启动Zoom客户机才能进行攻击——一次是触发自动更新机制,另一次是触发安装受感染的更新。Fratric说,他仍然认为这是一个“零点击“攻击,因为每个人都必须在某个时候重启自己的电脑。“如果你不这么做,你会遇到比Zoom漏洞更大的问题,”Fratric说。
别担心,极速可能是安全的
幸运的是,Fratric向Zoom报告了他的发现,并且已经发布了补丁。他赞扬该公司认真对待他的调查结果,并发布了全面的修复措施。
Zoom的一位发言人告诉PCMag:“正如我们Zoom安全公告页面上所述,我们已经解决了这些安全问题。一如既往,我们建议用户及时更新Zoom的最新版本,以充分利用Zoom的最新功能和安全更新。Zoom还提供自动更新功能,帮助用户使用最新版本。”
尽管如此,他还是指出XMPP被用于从在线游戏到工业控制的无数其他上下文中。他发现的一些影响极速的bug也会影响其他目标。
弗拉特里克说:“我认为这些走私诗歌的袭击是一个相当缺乏研究的攻击表面。”“我能够在不同的目标中找到许多不同的错误,不幸的是,XMPP协议的设计方式使引入和发现这样的错误变得很容易。”
他还暗示这次谈话并没有涵盖他所有的发现。Fratric在展示一张概述他报告的bug的幻灯片时打趣道:“我既不能确认也不能否认这张幻灯片上没有列出其他bug。”
继续阅读PCMag的最新黑帽.
编者注:本文根据Zoom的评论进行了更新