工具介绍
在这篇文章中,我将介绍一种名为PowerStager的工具,该工具自2017年4月起一直处于我的观察之下。它引起我的注意的主要原因是由于它在PowerShell段采用了相当独特的混淆技术,至今为止我还没有看到在其他工具中有使用这一技术。 在跟踪这项技术时,我发现在2017年12月左右,PowerStager在野外攻击的使用率有所上升。
下面我将详细介绍该工具是如何工作的,然后介绍一些可以观察到的攻击和该工具的部件。
PowerStager的核心是一个Python脚本,它使用C源代码生成Windows可执行文件,然后利用多层模糊处理启动PowerShell脚本,最终目标是执行shellcode有效负载。 PowerStager有很多配置选项,使其具有相当大的灵活性。 以下是代码中列出的一些配置选项:
能够选择目标平台(x86或x64)
能够在默认值之上使用额外的模糊处理
能够显示社交工程的自定义错误消息/可执行图标
能够使用Meterpreter或其他内置的shellcode有效载荷
能够获取远程负载或将其嵌入到可执行文件中
能够使用UAC升级权限
对于我将要覆盖的样本,总体流程如下图所示。

1515983135883955.png

1515983135883955.png

在深入分析迄今为止所观察到的所有样本之前,我将会对以上每一部分内容进行解析。
PE分析
应该指出的是,大部分分析是在实际发现源代码之前进行的。 看了大量的样本后,很明显,它们是以编程方式生成的,所以我着手尝试确定来源。
每个可执行文件中都有一个嵌入的字符串,用于创建文件。
在深入分析迄今为止所观察到的所有样本之前,我将会涵盖每一部分内容。
"004015BC|.C744240805F04>MOVDWORDPTRSS:[ESP+8],75809731.0040>;ASCII"%sA62q1gMHhRWy"
文件名称在样本之间是随机的,这是一个关于创建者的主要线索。 该值稍后在多层PowerShell脚本中会再次被引用,并进一步证实了这一理论,因为这些随机文件名通常是随机生成的,并且不会嵌入其中。
由PowerStager创建的最初的可执行文件非常简单。 它获取%TMP%环境路径并使用嵌入的文件名创建文件。 之后,它会对可执行文件的.data部分中找到的数据执行两次memcpy()调用,并将它们移动到新的内存页面中。 对于在这个分析中看到的示例,第一个memcpy()从.data部分的偏移量0x20获取数据,而第二个memcpy()从偏移量0x67E0获取相同大小的数据。 最后,在最终将其保存到文件之前,它会对其执行解码功能。
0040164E|>/8D95D8C6FFFF/LEAEDX,[LOCAL.3658]
00401654|.|8B45F4|MOVEAX,[LOCAL.3]
00401657|.|01D0|ADDEAX,EDX;75809731.004067E0
00401659|.|0FB618|MOVZXEBX,BYTEPTRDS:[EAX]
0040165C|.|8B4DF4|MOVECX,[LOCAL.3]
0040165F|.|89C8|MOVEAX,ECX
00401661|.|C1E806|SHREAX,6
00401664|.|BA9D889704|MOVEDX,497889D
00401669|.|F7E2|MULEDX;75809731.004067E0
0040166B|.|89D0|MOVEAX,EDX;75809731.004067E0
0040166D|.|C1E802|SHREAX,2
00401670|.|69C0C0370000|IMULEAX,EAX,37C0
00401676|.|29C1|SUBECX,EAX
00401678|.|89C8|MOVEAX,ECX
0040167A|.|0FB68405188FFF>|MOVZXEAX,BYTEPTRSS:[EBP+EAX+FFFF8F18]
00401682|.|31C3|XOREBX,EAX
00401684|.|89D9|MOVECX,EBX
00401686|.|8D95D8C6FFFF|LEAEDX,[LOCAL.3658]
0040168C|.|8B45F4|MOVEAX,[LOCAL.3]
0040168F|.|01D0|ADDEAX,EDX;75809731.004067E0
00401691|.|8808|MOVBYTEPTRDS:[EAX],CL
00401693|.|8345F401|ADD[LOCAL.3],1
00401697|>|8B45F4MOVEAX,[LOCAL.3];
回复

使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Powered by shiliapp.com   © 2019-2020