Zoom漏洞分析

zoom 0day 应对措施

https://medium.com/@jonathan.leitschuh/zoom-zero-day-4-million-webcams-maybe-an-rce-just-get-them-to-visit-your-website-ac75c83f4ef5

漏洞原因:
zoom在本地自建了一个含有漏洞的web 服务 为了妥协 CORS-RFC
在这里插入图片描述
端口在:19421
在这里插入图片描述

修复方案:

关闭视频

# For just your local account
defaults write ~/Library/Preferences/us.zoom.config.plist ZDisableVideo 1
# For all users on the machine
sudo defaults write /Library/Preferences/us.zoom.config.plist ZDisableVideo 1
# To prevent the vulnerable server from running on your machine
# (this does not impact Zoom functionality), run these two lines in your Terminal.

pkill "ZoomOpener"; rm -rf ~/.zoomus; touch ~/.zoomus && chmod 000 ~/.zoomus;

pkill "RingCentralOpener";  rm -rf ~/.ringcentralopener; touch ~/.ringcentralopener && chmod 000 ~/.ringcentralopener;

# (You may need to run these lines for each user on your machine.)

如何不开灯的情况下开启启摄像头

https://speakerdeck.com/patrickwardle/virusbulletin-2016-getting-duped-piggybacking-on-webcam-streams-for-surreptitious-recordings?slide=27

在这里插入图片描述

如何使用xpc来监控访问摄像头的程序。

https://objective-see.com/products/oversight.html

https://objective-see.com/blog/blog_0x56.html

20200418补充

0x00 分析背景

   鉴于全球疫情爆发,居家视频会议需求的暴增,云视频软件Zoom顺势爆红,市值暴涨130%,峰值在线人一度高达2亿人次。与此同时Zoom也成为全球黑客组织发起攻击的“重磅轰炸区”,最近几周Zoom各种负面新闻层出不穷,引发信任危机。

     平台的安全性,私密性和安全性受到前所未有的挑战。遂CEO迅速发话宣布:【Zoom将在90天冻结功能更新,全力解决隐私和安全问题.】

   当然,冰冻三尺非一日之寒。Zoom自身的安全性一直就被人诟病。早在19年7月安全研究员 @JLLeitschuh 就曝光过Zoom的Mac客户端中一个使受害者进入会议并打开摄像头的0day漏洞。而Zoom在知晓此漏洞的100天里都没有进行修复。

在这里插入图片描述

SO,本文将简单的列举一下Zoom近一年在macOS上出现的一些安全漏洞,常见的几大类型漏洞都有,刚好能借此学习一下macOS上的安全姿势。

CVE编号 漏洞类型及危害 影响版本
CVE-2019–13449 远程拒绝服务 < v4.4.2
CVE-2019–13450 信息泄露,强制进入会议并打开摄像头 < v4.4.5
CVE-2019-13567 1-click 远程RCE < v4.4.5
本地权限提升#1 Privilege Escalation to Root < v4.6.9
本地权限提升#2 Code Injection for Mic & Camera Access < v4.6.9
漏洞测试环境

macOS 10.12
zoom v4.6.8
由于目前找到靠谱低版本mac软件的下载渠道,所以简单分析通过zoom v4.6.8的安装包,来简单分析下最近修复的两个提权漏洞。

0x01 Zoom本地权限提升#1:权限提升

0.macOS应用权限背景:

Mac上不常见有ring0,ring3的概念。所以我简单把Mac上应用分为沙盒应用,普通应用,System应用。

在这里插入图片描述

沙盒应用:在macOS上,Appstore中的程序是处在沙盒中的只能读写自己~Library/Containers/
/目录下的文件。
普通应用:从开发人员网站直接下载DMG镜像中的程序,PKG包程序或者xcode编写的关闭APP Sanbox程序。
System应用:系统应用或者申请System授权的程序。
普通应用能利用此漏洞劫持文件来做权限提升到ROOT。

1.提权漏洞原理如下:

原因就是Zoom在通过PKG软件安装时,一般会申请System的弹窗权限。而Zoom在申请到System权限后调用AuthorizationExecuteWithPrivileges的API以root权限来执行一个落在磁盘可读可写临时目录上的runwithroot文件,此API没有验证将要执行的二进制文件,低权限的应用程序或者恶意软件可以暗中篡改、替换它,从而将利用此文来来讲自身的权限升级到root:

在这里插入图片描述

2.漏洞的攻击方式:

所以普通程序利用此漏洞的攻击方式为,监控PKGS解压的临时文件目录。劫持并改写runwithroot文件从而以root权限来执行自己的脚本。
临时文件的目录一般在/private/var/folders/*/T/

tester@users-Mac T % pwd
/private/var/folders/v5/s530008n11dbm2n2pgzxkk700000gp/T
tester@users-Mac T % ls -lart com.apple.install.v43Mcm4r
total 27224
-rwxr-xr-x 1 tester staff 70896 Mar 23 02:25 zoomAutenticationTool
-rw-r–r-- 1 tester staff 513 Mar 23 02:25 zoom.entitlements
-rw-r–r-- 1 tester staff 12008512 Mar 23 02:25 zm.7z
-rwxr-xr-x 1 tester staff 448 Mar 23 02:25 runwithroot
3.漏洞验证如下:

POC: 在执行的runwithroot追加如下代码

cp /bin/ksh /tmp
chown root:wheel /tmp/ksh
chmod u+s /tmp/ksh
open /tmp/ksh
在这里插入图片描述

可以看到利用此漏洞普通的程序提权成root,了解到此漏洞的原理后,此提权攻击场景还是比较受限的。只有在安装时刻才能做到劫持。

0x02 Zoom本地权限提升#2:获取麦克风与摄像头权限的代码注入

0.macOS摄像头及麦克风权限:

在macOS的新版系统上,应用使用麦克风和摄像头等权限会有一个权限的申请弹窗。
在这里插入图片描述

一般情况下正常使用的zoom都会拥有麦克风和摄像头权限。没有这两项权限的应用只要注入到zoom中就可以获得这两项权限。

1.漏洞的攻击方式:

此种利用的攻击方式与环境变量注入有相似之处。通过使用代理的模式替换了目标(即Zoom)所依赖的合法库文件libcrypto.1.0.0.dylib,注入我们要执行的代码,执行完毕后将请求代理回原始库文件,以确保程序功能正常使用。

验证依赖库:重命名动态运行库libcrypto.1.0.0.dylib,运行Zoom会出现崩溃。

在这里插入图片描述

2.漏洞的攻击方式:

使用xcode新建一个Libray库,libssl.1.0.0.dylib。
在这里插入图片描述

其中核心注入代码如下:

#import <sys/proc_info.h>#import <libproc.h>#import <Foundation/Foundation.h>attribute((constructor))static void constructor(void)
{ char path[2000];
proc_pidpath (getpid(), path, sizeof(path)-1);

NSLog(@"zoom zoom: loaded in %d: %s", getpid(), path);    return;

}
将原本目录下的/Applications/zoom.us.app/Contents/Frameworks/libcrypto.1.0.0.dylib重命名为_libssl.1.0.0.dylib.并放入我们刚编译的libcrypto.1.0.0.dylib。运行zoom,成功注入了代码。
在这里插入图片描述

3.漏洞修复方式如下:

程序的修复的方式是,对预加载的libcrypto.1.0.0.dylib进行一次校验。检验不成功程序就退出。
在这里插入图片描述

0x03 一些总结及想法:

0.安全是一个特性,当产品发展到差异化极小的阶段时,安全有可能会成为产品的一种核心竞争力,成为拉开产品与竞争对手之间差距的秘密武器。只有安全也做得好的产品,才能成为真正的好产品。

1.以黑灰产跟炒热点的尿性,近期各种Zoom盗版,仿冒欺诈软件必会层出不穷。建议大家从官方渠道下载Zoom,且及时更新到最新版。案例见:黑客利用Zoom的流行来传播恶意软件

2.同时从各项漏洞的分析中,也学习到了审计macOS应用的一些思路(文件劫持,dylib注入提权)。相信聪明的你也已经get到了~

3.假设此时正有APT组织利用Zoom的0day或者Nday的RCE来全网扫含有漏洞的机器,我们又如何编写蜜罐去捕获到这些在野的攻击呢?

0x04 参考:

The ‘S’ in Zoom, Stands for Security
Zoom Zero Day: 4+ Million Webcams & maybe an RCE? Just get them to visit your website!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值