千家信息网

如何通过macOS的磁盘管理工具实现系统提权

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这期内容当中小编将会给大家带来有关如何通过macOS的磁盘管理工具实现系统提权,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。ZDI的研究人员"ccpwd"在一个名叫
千家信息网最后更新 2026年10月31日如何通过macOS的磁盘管理工具实现系统提权

这期内容当中小编将会给大家带来有关如何通过macOS的磁盘管理工具实现系统提权,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

ZDI的研究人员"ccpwd"在一个名叫"diskmanagementd"的macOS守护进程中,发现了一个基于堆的缓冲区溢出漏洞。diskmanagementd这个服务主要负责对磁盘驱动器进行管理和分区,用户可以通过磁盘实用工具(Disk Utility)来与该服务进行交互。该服务将会运行一个Mach服务器,并允许客户端使用Mach IPC接口来与服务器端通信(发送和接收信息)。通过这种RPC机制,客户端可以在Mach服务器中执行各种通过MIG(Mach接口生成器)生成的功能函数。

漏洞分析

所有的通信数据都需要经过launchd,即macOS的init初始化实现。关于该进程的更多细节可以通过查看其信息属性列表文件来了解,文件路径如下:

/System/Library/LaunchDaemons/com.apple.diskmanagementd.plist

一开始,守护进程会分配一个调用函数,在之后发送和接收Mach消息时,内部进程通信将需要调用这个函数。

在这里,CFMachPortCreateWithPort会分配一个函数sub_10000C241来作为负责处理Mach消息的回调函数,接收Mach消息的地址为0x10000BE1F。根据msgh_id,Mach消息中的某个值会传送一条操作指令或函数ID,sub_10000C241会间接使用这个ID来作为两个远程函数的调度表索引。sub_100001DA2和sub_100002005分别负责启动和移除后续的通信会话。

Mach端口是单向通信的,这也就意味着每个发送、接收请求都需要使用单独的端口,苹果称之为:

"端口是请求服务的客户端和提供服务的服务器之间单向通信通道的端点。如果要对此类服务请求提供答复,则必须使用第二个端口,这与Unix中的(单向)管道类似。"

函数sub_10000CCA9是可以通过sub_100001DA2访问到的,另一个Mach端口通过回调函数sub_10000DACC来创建,端口会保存在一个字典里,键名为"Comms-F2TPort"。缓冲区0x1000字节处用于处理Mach消息的响应,并且信息保存在字典中键名为"Comms-F2T-replyarea"的位置。

其中,setObject:forKey用于向字典中添加键值对:

当客户端发送一条消息时,sub_10000DACC将会被触发,然后根据msgh_id来访问MIG远程程序调用。接下来,我们将注意力主要放在函数sub_1000087C9的身上:

缓冲区溢出发生在sub_1000087C9函数中,当用户输入数据长度经过计算后偏移量超过0x1000时,便会发生缓冲区溢出。

0x1000响应缓冲区基本上为r14,用户输入从偏移量0x38处开始,所以剩下的0xfc8

字节即为用户输入区域,当输入数据填充至0xfc8处时,strlen将会返回相同的值。经过计算之后,最终的值为 0xfcc [ ((0xfc8 + 1) + 3) & 0xfffffffc]。在地址0x100008ABD处,偏移量将会变成0x1004 [0xfcc+0x38],这里允许泄露4个字节,并写入4个字节数据,因此攻击者就可以利用这种特性来实现攻击了。但是这里的数据泄露效果不是很显著,因为大小仅为0x1000,而写入操作需要在0x1004处完成,这也就意味着程序只能从后续数据块中读取4个字节的数据。

这里有几个限制,首先是输入数据中不能包含空字符,因为这将导致strlen在空字符处停止。另一个限制是在缓冲区结束后写入的数据将始终是var_dc的内容,这部分内容就是sub b30返回的错误代码。

上述就是小编为大家分享的如何通过macOS的磁盘管理工具实现系统提权了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

函数 服务 数据 消息 端口 缓冲区 缓冲 通信 字节 输入 磁盘 内容 客户 客户端 服务器 用户 进程 工具 管理 信息 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技工作委员会主任 重生之互联网科技帝国 高科技与互联网 南京欣网互联网科技 互联网科技类展会 镁科技互联网资讯平台 湖南洣水互联网科技有限公司扣款 青岛中康互联网医疗科技有限公司 汽车互联网创新科技园 消费医药和互联网科技 中国互联网十大科技股排名 互联网金融科技展 本届互联网博览会上的黑科技 华夏恒生互联网科技013171 互联网第三次科技革命特征 互联网科技资金流入 陕西云淼互联网科技公司 互联网科技包装股份有限公司上市 宁波跨境商互联网科技有限公司 西安有哪些互联网高科技企业 百单网互联网科技有限公司怎么样 与互联网科技公司 奇酷互联网科技公司 亿人帮互联网科技 互联网科技公司做什么 保险科技服务互联网营销体系 上海科技产业互联网平台 城市宝互联网科技有限公司 云鲸互联网络科技有限公司 唐山双旺合互联网科技产业园
0