Zoom 0Day跟进:获取RCE

本文详述了一次针对Zoom macOS客户端的0Day漏洞研究过程,揭示了如何通过ZoomOpener二进制文件中的逻辑缺陷,触发远程代码执行。研究人员通过操纵Zoom的更新机制,利用white-listed域的子域接管或恶意安装包,实现了RCE。最终,通过创建特定的.terminal配置文件并利用ZoomOpener的installPkg:函数,成功触发了远程代码执行。
摘要由CSDN通过智能技术生成

寻找初始向量

我们的方法在很大程度上依赖于外部攻击面的侦察,但是由于空中3万英尺的低速wifi网络,我们发现这有点不切实际。急于破解,我们决定在macOS上查看Zoom的桌面客户端。

我们注意到的第一件事是与Zoom macOS客户端打包在一起的名为ZoomOpener的二进制文件。二进制文件注册了URL处理程序。zoomopener://,并在端口19421上运行本地网络服务器作为守护程序。

对Web服务器的用途/功能感到好奇,我们在拆装器中加载了ZoomOpener并开始四处浏览。很快,我们就能找到名为的端点/launch,经过一番摸索后发现这可能会触发macOS安装程序包的下载和安装。

这听起来像是远程执行代码错误的先兆,我们认为值得进一步研究。我们花了其余的时间来尝试构建概念验证,但运气不佳,发现此功能比我们最初想象的要复杂。

Shubs和Sean在理解Zoom客户端编写的Objective-C方面也遇到了困难,因此他们离开了它,直到我们与团队合作就概念证明进行进一步合作。

幸运的是,降落后我们处于良好的状态。我们对iOS骇客做了很多研究,并且对Objective-C很有经验。

逻辑缺陷

第二天,开始在我们查看ZoomOpener二进制文件。跳水进入反编译,我们发现,当软件更新被触发以正确的端点功能downloadZoomClientForDomain:的ZMLauncherMgr类被称为传递提供给该域launch的端点上的本地Web服务器。

此函数首先检查用户计算机上是否已下载了安装程序包,以及是否存在该包,请使用该类中的installPkg:函数继续进行安装ZMLauncherMgr。

如果未下载任何软件包,则该函数将触发下载,并以提供

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知柯信安

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值