首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >macOS红队攻击链(四):利用AppleScript实现初始访问

macOS红队攻击链(四):利用AppleScript实现初始访问

原创
作者头像
qife122
发布2026-02-28 11:24:11
发布2026-02-28 11:24:11
1140
举报

macOS 通常被认为受到良好保护,这在很大程度上要归功于 Gatekeeper。然而,一些执行向量仍然在不同的信任模型下运作。基于 AppleScript 的 payload 就是其中之一,尽管需要用户交互,它们在实际的恶意软件活动中仍然非常有效。

技术现状

有一个向量非常有趣,且特别受到恶意作者的青睐:.scpt 文件,它可以是 AppleScript 或 JavaScript (JXA)。它们是编译后的文件(可以认为是 osacompile 的产物,生成的文件只能使用 osacompile 或“脚本编辑器”进行解释和执行)。

这是一个 stage-0 加载器,它根据 macOS 版本的不同,从 URL 获取 payload 并执行。

.scpt 文件可以使用“脚本编辑器”通过点击“播放”按钮来执行。诚然,这需要受害者多执行一个操作,但它的优势在于能够绕过 macOS 最强大的安全机制之一。

为什么它如此强大?

在大多数情况下,恶意软件与其执行之间最大的障碍是什么?是 Gatekeeper。正如我刚才提到的,执行依赖于机器上已安装的 Apple 二进制文件。即使 Gatekeeper 仍然应用了隔离标志,“脚本编辑器”在执行时也不会考虑它。

即使处于隔离状态(MOTW,标记为来自互联网),该脚本仍然非常强大,没有任何提示,也不需要密码。

谁会下载并执行来自互联网的脚本?

是的,它很强大,但谁会下载并执行来自互联网的脚本呢?谁告诉你它看起来必须像一个 .scpt 文件?这才是它真正变得危险的地方;

扩展名被隐藏了,图标被伪造了,文件名也被精心设计成看起来像一个 .pptx 文件。

我们甚至可以添加一个头部信息,使其看起来更可信;其目的是说服用户点击“播放”按钮或按下 Cmd + R

请注意,此方法目前在 macOS 窃密软件活动中被积极使用,例如 starger0,其中的脚本会下载并执行另一个二进制文件。

一个小提示: 要使文件保持 hide-extension 属性和自定义图标,它必须被放在一个 ZIP 压缩包内。如果直接发送,邮件存储服务器不会保留文件属性,文件将失去其钓鱼元素。

另一种解决方案可以帮助缓解文件相关问题:可以通过链接来实现这一点,使用 AppleScript 深度链接

这样做并非没有后果;它会增加一个额外的步骤:

这是在 Safari 中输入 URL 后发生的情况。

从 AppleScript 深度链接开始的完整攻击链:

如何使用 DarwinOps 生成这些 payload

代码语言:bash
复制
./darwin_ops -G "Investor Profile Presentation (EN).scpt" -t CALC --scpt-phising-header --obfuscate --icon "PODP.icns" --hide-extension

如果你想要相同的 payload 但作为深度链接,只需添加 --output-as-urlscheme 参数;这将在与 payload 相同的位置添加一个额外的文件。

与另一个 payload 完全相同,但以可发送的链接形式存在。

.urlscheme 文件的内容

后续步骤

你将继承“脚本编辑器”的 TCC 权限,因此要感染系统并收集敏感文件和目录,你还需要做更多工作。

你也可以看看这篇文章,它在某些点上更精确地讨论了同一个主题。FINISHED

CSD0tFqvECLokhw9aBeRqiAtBdroPKrTJORmTzK0GBjK10IzR+IUGtSeCvUBHNueJfE4wLVg2HhG4OenM6hYN0egy4r4ILOHmB954r36ctNDeylOtLReGlkcn3llwPvT

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 技术现状
  • 为什么它如此强大?
  • 谁会下载并执行来自互联网的脚本?
  • 如何使用 DarwinOps 生成这些 payload
  • 后续步骤
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档