1.看我如何利用Mac官方AppStore中的劫劫持应用程序获取root权限
看我如何利用Mac官方AppStore中的应用程序获取root权限
在本篇文章中,演讲者 Csaba Fitzl 介绍了如何通过官方 Mac AppStore 中的持源应用程序来获取 root 权限的有趣方法。他的源码研究始于 Objective by the Sea v2.0,详细的生成发卡源码对接hack PPT 可以在这里找到。
这篇文章主要讲述的劫劫持是研究过程,作者试图在特定应用程序中寻找 dylib 劫持漏洞。持源在大多数其他应用程序中发现了这类漏洞,源码但未能在特定程序中发现。生成作者解释了 dylib 劫持的劫劫持两种类型:dylib 弱加载和运行路径依赖(rpath)dylib。弱加载情况下,持源应用程序在找不到 dylib 时仍能运行;而 rpath dylib 会在安装后寻找 dylib 的源码登录表格源码位置。研究过程中,生成使用了 Dylib Hijack Scanner(DHS)工具进行扫描,劫劫持并展示了在 Tresorit 应用程序中发现的持源漏洞示例。
在实现漏洞利用方面,源码作者编写了一个 PoC,openpose源码下载通过在加载 dylib 时调用构造函数,打印日志信息并启动终端,从而获得 root 访问权限。对于其他易受攻击的应用程序,作者仅报告了少数几个问题,eclipse paho 源码并指出厂商通常承诺修复这些漏洞。
文章还提到,绕过 App Store 安装的应用程序中的根文件夹权限的方法。通过记录文件夹结构、删除应用程序、unicode转换源码创建文件夹结构并创建符号链接,可以在没有 root 权限的情况下将文件放入需要的位置。此外,作者还讨论了如何将 AppStore 文件投放到任意位置的方法,以及利用这一点进行权限提升的思路。
在高 Sierra 系统上实现权限提升的过程中,作者发现可以将名为“root”的文件作为 cronjob 示例插入应用程序,然后通过 cronjob 每分钟运行终端,从而在几分钟内获得 root 访问权限。
文章最后,作者向 Apple 报告了权限提升问题,并尝试详细解释该问题的存在及其可能的滥用。Apple 认为这是一个增强功能,而没有将其视为安全漏洞。在 Mojave ..5 上实现了修复,包括删除应用程序文件夹中的文件,并在页面上提到了作者的名字。