首页
社区
课程
招聘
[翻译]CVE-2018–8412: Office 2016 for Mac通过旧版程序包进行权限升级
发表于: 2018-9-11 22:17 5489

[翻译]CVE-2018–8412: Office 2016 for Mac通过旧版程序包进行权限升级

2018-9-11 22:17
5489

补丁已发布,请将您的MAU (Microsoft AutoUpdate)升级到18081201

img

微软自动更新助手 (Microsoft Autoupdate Helper) 3.18(180410) + 旧版不安全SilverLight安装包权限升级漏洞(EoP)

此问题波及Microsoft Office for Mac 2016和SkypeForBusiness(16.17.0.65)

本报告涵盖两个主要缺陷:

/Library/PrivilegedHelperTools/com.microsoft.autoupdate.helper 中有一个 XPC服务com.microsoft.autoupdate.helper

(XPC是OSX下的一种跨进程通信技术。 它定义了两个运行进程可以相互通信的方式。)

它基于NSXPCConnection,仅导出以下两个XPC接口:

仅允许白名单上的有效Microsoft签名二进制文件通过:

以下是两种可能的绕过方式。

首先, 它使用pid(进程ID), 这是不可信任的, 因为 exec* 函数可以将本身进程替换成另一个, 同时保持pid不变。详细内容请见 MacOS/iOS用户空间权利指派检查非常宽松 and 别信任进程ID!

实际上这种方式是不可行的。 当调用者尝试替换自身时,将调用失效处理程序,这会导致[MAUHelperTool shouldExit]方法返回true。

然后主事件循环将终止该进程。 所以这是不可行的。
但另一种方法是使用DYLD_ * 环境变量生成一个有效的进程,以启用动态代码注入。
由于以下文件不受保护,因此可以滥用它们来绕过签名检查。

/Library/Application Support/Microsoft/MAU2.0/Microsoft AutoUpdate.app/Contents/MacOS/Microsoft AutoUpdate

/Library/Application Support/Microsoft/MAU2.0/Microsoft AutoUpdate.app/Contents/MacOS/Microsoft AU Daemon.app/Contents/MacOS/Microsoft AU Daemon

可以使用下面任一方法来保护这些二进制文件:

所以现在我可以与XPC通信。

弄乱log(日志)是没用的。 - [MAUHelperTool installUpdateWithPackage:withXMLPath:withReply:]接受来自XPC客户端的路径并安装它。 但它会锁定程序包并在包上执行数字签名验证!

我无法绕过pkg文件上的签名验证,这个问题似乎无法解决。
我做出了决定:不要绕过。

在检查了一些有效的包之后,我找到了旧版的SilverLight的安装包:https://www.microsoft.com/getsilverlight/Get-Started/Install/Default

这个安装包当然是被信任的:

post-install脚本引起了我的注意。

设置全局写入权限:

有意思的命令:

(在之前的chmod命令后,它是可写入的)

所以它们起到什么作用呢?

rundylib, 就如它名字所示

那么PlayReadyGetIBXVersionTool呢?

它在特权进程中从“Cache”加载并执行共享库,只是为了获得版本信息。

/Library/Internet Plug-Ins/Silverlight.plugin/Contents/MacOS/SLMSPRBootstrap.dylib/Library/Application Support/Microsoft/PlayReady/Cache 均可由非特权用户写入。但前者需要条件竞争,我更喜欢稳定的漏洞。

因此,这个漏洞利用非常简单。

演示 (注意此为Youtube视频,考虑翻墙观看):

https://youtu.be/EmVmLuX6TS4

原文链接:https://medium.com/0xcc/cve-2018-8412-ms-office-2016-for-mac-privilege-escalation-via-a-legacy-package-7fccdbf71d9b

翻译: 看雪翻译小组 一壶葱茜

校对: 看雪翻译小组 Nxe# hello

 
 
 

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2018-9-11 23:49 被一壶葱茜编辑 ,原因:
收藏
免费 2
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//