加入收藏 | 设为首页 | 会员中心 | 我要投稿 厦门网 (https://www.xiamenwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

借助macOS Dock实现攻击持久化

发布时间:2021-06-10 08:39:09 所属栏目:站长百科 来源:互联网
导读:一、背景 近期,我一直专注于macOS持久化领域,特别选择了一些较低级别用户可以修改的文件,而这些文件可能会影响用户交互。我发现,终端用户经常进行交互的一个

近期,我一直专注于macOS持久化领域,特别选择了一些较低级别用户可以修改的文件,而这些文件可能会影响用户交互。我发现,终端用户经常进行交互的一个位置是Dock。

通过研究,我发现有一个plist负责控制Apple Dock应用程序的可视化呈现。在这里没有太多突破性内容,因为终端用户经常会通过图形化界面(GUI)来修改这一plist。在查看了plist中的值之后,我想探究是否可以更改这些值,从而使用运行自定义代码的恶意应用程序来替换合法的应用程序。

这项研究中的一个突破是DockPersist.js,我将其纳入到PersistentJXA项目之中。在我的实现中,将使用恶意应用程序替换Safari或Chrome。我主要研究Safari和Chrome,因为二者很可能会出现在用户的Dock中。但是,这一理论实际上适用于任何应用程序。终端用户在单击Safari或Chrome图标后,就会运行我们的恶意应用程序。这种持久化方式类似于Windows上的快捷方式(.LNK)文件持久化,因为在macOS中,Dock图标通常会作为实际应用程序的快捷方式。

这种持久化方法需要将我们的恶意应用程序上传到目标计算机。我倾向于在Mythic代理中使用上传功能,将应用程序保存到目标上。

在修改plist之后,我们就可以立即重新加载Dock。但是,这会导致终端用户的屏幕出现短暂的闪烁。或者,我们也可以等待用户重新启动后,再让虚假的应用程序出现在Dock中,因为修改后的plist会在重新启动后保持不变。

二、攻击方式

2.1 部署

前面已经说过,这种持久化方式需要将恶意应用程序上传到目标。在此过程中,有多种方法可以绕过Gatekeeper保护,允许我们将恶意应用程序上传到目标。这些方法包括:

1、压缩应用程序包,在Mythic代理(Apfell或Poseidon)中使用上传命令,然后在目标计算机中解压缩。

2、压缩应用程序包,在某个位置托管,使用curl下载到目标,然后在目标计算机中解压缩。

3、压缩应用程序包,进行Base64编码,在进行Base64解码后保存到目标上,然后在目标计算机中解压缩。

作为概念验证(PoC),我仅仅是在“自动操作”(Automator)中创建了一个应用程序。PoC应用程序会打开Safari浏览器,这样就避免了终端用户没有感知的情况。然后,它将运行我们的Apfell Payload。

(编辑:厦门网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读