新2手机网址

www.22223388.com)实时更新发布最新最快的新2手机网址、新2手机网址线路、新2手机网址登录网址、新2手机网址管理端、新2手机网址手机版登录网址、新2手机皇冠登录网址。

,

研究职员最近观察了一个存在于用户启动文件夹中的可疑链接文件。该文件名为“sy *** on.lnk”,看起来有点可疑。经由一番开端骤查后,研究职员发现该链接正在执行恶意 Python 剧本,该剧本被用来向系统注入一个远程接见木马(RAT)。

剖析时代,研究职员总共遇到了六个延续的有用载荷和一些异常有趣的新型攻击工具。最后,研究职员还实验了一些自界说剧本,用于从最终的RAT中获得没混淆过的数据并提取设置。

剖析历程如下:

研究职员有时发现了一个可疑文件 (sy *** on.lnk),它似乎位于用户的启动目录中。启动目录的本质是保留用户登录盘算机时自动运行的文件。由于它看起来就像一个通俗的文件夹,你所需要做的就是复制并粘贴一个文件到这个文件夹中,然后你就可以在重新启动之间继续保留。

这为正当程序提供了一种简朴的方式,使其能够继续运行。由于它的简朴性和隐藏性,它是攻击者放置恶意软件和恶意文件的常见场所。

如上所述,这是一个 .lnk 文件(也称为快捷方式文件),它重定向到系统上的另一个文件或下令。检查 .lnk 文件可以告诉研究职员它指向那里。

当研究职员检查 sy *** on.lnk 时,研究职员发现它正在重定向到一个可疑的“ctfmon.exe”,并将“update.py”作为参数发送。两者都泛起在一个可疑的目录中:

因此,研究职员检索了文件并举行了一些剖析。

文件剖析

首先,研究职员注重到 ctfmon.exe 的哈希在 VirusTotal 上竟然没有被检测到,研究职员一最先以为这很有趣,但在查看文件信息后发现事情并没有那么简朴。

该信息解释 ctfmon.exe 是一个重命名的 Python 注释器,确切地说,是一个IronPython注释器,它行使 Python 的一个分支来接见 .NET 库。这允许 Python 代码接见通常为 .NET 或 PowerShell 保留的深层 Windows 操作系统功效。这很有趣,并提供了足够的信息来进入 Python 文件。

研究职员可以看到原始文件ctfmon.exe在VirusTotal上没有检测到,由于从手艺上讲,它是一个正当的注释器,而不是恶意文件。

下面,研究职员可以看到文件形貌,这解释它是一个重命名的 IronPython 注释器,或者,研究职员也可以使用 PeStudio 或类似工具发现此信息。

这些信息足以确定 ctfmon.exe 文件的用途,因此研究职员转到 Update.py 文件,研究职员将其称为 stage1.py。

Stage1.py

研究职员首先将 Python 文件移动到虚拟机内的文本编辑器中,以防它是恶意程序。

这样研究职员就会获得一个相对较小的剧本,其中包罗一个大的混淆字符串和一些混淆的变量名称。我们可以在此屏幕截图中看到完整的剧本:

这些剧本看起来异常杂乱,以是研究职员整理了一下并添加了注释:

若是仔细检查,研究职员可以看到该剧本实现了四个主要功效:

Base64 解码混淆的字符串;

它将 Base64 解码的字符串转换为十六进制值的字节数组;

然后,它将每个字节的值削减 12(十进制);

最后,它执行效果数据;

通过复制混淆的字符串并在 CyberChef 中重新确立逻辑,研究职员能够检索另一个 Python 剧本,研究职员将其保留并命名为 stage2.py。解码逻辑如下:

Stage2.py

研究职员从 CyberChef 中复制了天生的剧本,并在文本编辑器中打开了 stage2,但他们很快注重到另一个混淆的字符串,以及一些与反射相关的导入库。 反射是一种常用手艺,用于从内存执行代码而无需将其保留到磁盘。

凭证这些信息,研究职员假设剧本正在解码字符串并将效果加载到内存中以供执行。

在上面的截图中央,我们可以看到用于解码字符串的两个主要操作:

替换所有“!”带有字母“A”的叹息号;

Base64解码效果;

这看起来并不太庞大,以是研究职员返回到 CyberChef 并重新确立解码逻辑。这导致泛起 一个MZ 标头,解释研究职员已乐成解码数据并检索到一个可执行文件。研究职员保留了这个文件并将其命名为 stage3.bin。

stage3.bin

将 stage3 保留为可执行文件,这样就能够使用 PeStudio 和 Detect-It-Easy (DIE) 举行一些基本检查。综合剖析,这是一个 .NET 文件,很可能是另一个阶段(基于存在引用 injector.pdb 的路径)。

下面,研究职员可以看到 DIE 将文件识别为 .NET 可执行文件,这意味着研究职员可以使用 Dnspy 或 ILspy 举行剖析。

下面,研究职员还可以看到引用“injector.pdb”的 PDB 路径,这解释这可能是另一个举行某种注入的阶段:

由于研究职员现在知道这是一个 .NET 文件,因此将其转移到 Dnspy,此时研究职员可以查看文件的源代码。这可以在下面看到。

仅查看函数名称,研究职员就清晰地知道文件将要做什么。研究职员可以看到指示注入(VirtualAlloc、WriteProcessMemory 等)、动态库/函数加载(GetProcAddress、LoadLibrary)息争码(compress, decompress, base64_encode)的函数。在不详细查看代码的情形下,研究职员已经可以假设一个焦点函数:一个混淆的有用载荷将被解码并注入到历程中。

浏览主函数,研究职员很快就找到了编码的有用载荷。连系前面的函数挪用(Load、Decompress、Base64),研究职员可以假设数据是Base64解码然后解压加载到内存中的。

下面,研究职员可以看到编码后的字符串和相关的函数挪用:

在编码数据的末尾,研究职员还考察到对 m *** uild.exe 的引用。这很主要,由于它是发送给 Mandark.Load 方式的第二个参数。

接下来,研究职员浏览了 Mandark.Load 方式找到的内容,并确定 m *** uild.exe 参数的主要性。

研究职员以为,发送给 load 方式的第二个参数成为注入的目的历程。研究职员还注重到ZwUnmapViewOfSection的使用,这解释这种类型的注入接纳的是process hollowing手艺。

研究职员以为 MSBuild 很可能是目的,由于它经常被允许执行默认的应用程序白名单工具,包罗微软自己的Applocker。

此时,研究职员决议回到主函数并实验解码注入的有用载荷。研究职员已经注重到使用了 Base64 编码和压缩。

研究职员迅速检查领会压缩方式以确认压缩类型,在本例中,它是 Gzip。

综合以上信息,研究职员能够使用 CyberChef 解码下一个有用载荷。这导致了可执行文件的另一个 MZ 标头。研究职员保留了这个文件并将其命名为 stage4.bin。请注重,此有用载荷可能已被注入到 m *** uild.exe 历程中。

stage4.bin

在加载stage4.bin时,研究职员执行了一些基本的静态剖析并确定它不是另一个 .NET 文件,因此研究职员无法使用 Dnspy。

下面,研究职员可以看到使用 DIE 检测到的编译器,这解释它是用 C++/C 而不是 .NET 编写的。

使用PeStudio时,研究职员注重到这个导出的函数,它对研究职员来说很主要,由于它解释这可能是另一个加载程序(通过术语“ReflectiveLoader”得出)。

通过进一步剖析,研究职员在文件的调试部门注重到了这个引用。这包罗另一个 PDB 路径和一个异常类似于 git 的文件夹结构。

usdt支付接口

菜宝钱包(www.caibao.it)是使用TRC-20协议的Usdt第三方支付平台,Usdt收款平台、Usdt自动充提平台、usdt跑分平台。免费提供入金通道、Usdt钱包支付接口、Usdt自动充值接口、Usdt无需实名寄售回收。菜宝Usdt钱包一键生成Usdt钱包、一键调用API接口、一键无实名出售Usdt。

对 PDB 路径中的一些要害字举行搜索后,研究职员信托该文件可能是一个执行程序集加载程序,它是 Cobalt Strike 执行程序集模块的开源重新实现:

在 GitHub 存储库文档的其余部门中,有一个特其余地方异常引人注目。示意嵌入的有用载荷结构,花样为“0|0|0|0|1|sizeofpayload.b64_encoded_compressed_payload”。有用载荷接纳了Gzip 压缩和 Base64 编码花样。

这异常有趣,由于文件中有一个异常大的字符串,巨细为 64983 字节,足够容纳另一个有用载荷的空间。

研究职员将该字符串复制到 CyberChef 中并重新实现领会码例程(Base64 和 Gzip 解压缩),从而天生了另一个可执行文件。

研究职员保留了这个文件并将其命名为 stage5.bin。

stage5.bin

在对最新的文件举行通例静态剖析时,研究职员很如意识到它是另一个 .NET。幸运的是,研究职员可以跳回 Dnspy 并查看源代码。

进入 Dnspy,研究职员注重到这次的函数并不多,总共只有六个:

导航到主函数,研究职员注重到两个大的混淆字符串:

第一个只是 Base64 编码,效果证实这是一个反恶意软件扫描接口 (AMSI) 修补剧本。 AMSI 由 Microsoft 实行,为平安工具提供了一个框架来监控 PowerShell 剧本流动。 AMSI 补丁的目的是绕过此框架并降低防病毒或 EDR 检测到任何恶意 PowerShell 流动的时机。稍后,研究职员将看到恶意软件确实使用了 PowerShell 剧本,因此此补丁可能允许它们在不被检测到的情形下执行。

下面,研究职员可以看到完整的 AMSI 补丁剧本,它被稍微混淆了。

研究职员能够解码剧本,大致翻译如下:

第二个字符串更有趣,由于它连系了自界说编码例程以及研究职员迄今为止已经习惯的 Base64 和压缩。这解释研究职员需要的不仅仅是 CyberChef 来解码研究职员的下一个有用载荷。

为了更好地明白混淆,研究职员检查了 Cipher 方式并找到了编码例程。它看起来并不尺度,而且很显著,它是定制的。像这样的例程通常被用来逃避自动剖析,由于非尺度性子阻碍了一些自动化工具,通常需要手动干预和剖析才气准确解码。

下面,研究职员可以看到完整的自界说例程,它接纳编码字符串、密钥和加密标志。

通过查看主函数,研究职员很快找到了密钥“avyhk”和设置为 false 的加密标志。

经由一些仔细的检查和剖析,研究职员能够使用下面包罗的等效 Python 代码重新实现该例程。

使用新的Python剧本,研究职员为密码函数编写了一个包装程序,它能够将解码的内容转储到一个新文件中。使用它,研究职员最终获得了另一个可执行文件:stage6.bin。

stage6.bin

研究职员将 stage6.bin 文件保留并加载到 PeStudio 和 DIE 中举行一些静态剖析,并看到研究职员有另一个 .NET 文件。

总的来说,研究职员在 PeStudio 中没有发现任何稀奇有用的器械,以是研究职员最先剖析Dnspy。研究职员能够确定该文件是远程接见木马 (RAT),可能来自 URSU恶意软件家族。

该恶意软件具有 RAT 的所有典型功效,包罗网络和枚举系统信息的能力,以及从远程下令和控制服务器下载文件和下令的能力。

恶意功效剖析

下面,研究职员可以看到最终 RAT 有用载荷功效的概述。

解密设置

在确定此恶意软件很可能是 RAT 之后,研究职员决议寻找 C2 服务器的指标以及研究职员可以用作攻击指标的任何设置设置,剖析 Dnspy 中的 RAT 代码,研究职员发现了一种“InitializeSettings”方式,该方式从使用 AES256 加密的值加载设置数据,然后使用 Base64 举行编码。

这是在 InitializeSettings 方式中解密设置数据的代码:

下面,研究职员可以看到加载了经由AES256加密和base64编码的值。

在使用领会密代码之后,研究职员能够解密设置并提取包罗端口号、互斥锁名称、版本和分组号,以及 C2 服务器的三个域。

枚举

通过对操作系统的查询组合,主要是通过 WMI 查询,恶意软件网络了以下信息发送到 C2 服务器:

现在正在运行防病毒和平安产物;

用户权限;

受害者是否毗邻到某个域;

当前装备的外部IP;

打开的窗口和流动历程的名称;

反剖析检查

在枚举系统信息后,恶意软件会执行一些反剖析检查,以查看它是否在虚拟机或剖析环境中运行。

该恶意软件包罗多种检测方式和功效。这些检查相对简朴,包罗五个主要检查:

DetectManufacturer:在硬件形貌中查找 VMware 或 VirtualBox;

DetectDebugger:检查“Debugger.IsAttached”标志,还会检查 %appdata% 目录中是否存在 dnspy.xml 文件;

DetectSandboxie:查找 Sandboxie 驱动程序 ( *** iedll.dll);

IsSmallDisk:检查磁盘巨细是否小于 61GB;

IsXP:检查当前操作系统是否为 Windows XP;

若是上述检查中的任何一项为真,则恶意软件会使用“failFast”方式举行整理并自我终止。

实现持久化:运行密钥和设计义务

完成反剖析检查后,恶意软件会凭证当前权限级别通过设计义务和运行密钥确立进一步的持久性。

若是治理员权限可用,则会确立提升的设计义务。这将允许恶意软件在重新启动时保持治理员级其余权限,而无需每次都发出 UAC 提醒。

若是只有尺度用户权限可用,则会将 .bat 剧本放入当前用户的运行密钥中,这将提供尺度用户权限的持久性。

使用这些指标,研究职员能够找到恶意软件留下的其他工件,并开发可用于对类似流动发出警报的检测。

研究职员可以通过定期查看以下运行密钥和设计义务位置,通过设计义务和运行密钥检查类似的持久性:

C2 下令和功效

一旦确立持久性,恶意软件就会联系下令和控制服务器以获取进一步的下令,好比通过 PowerShell 下载新的恶意软件,启动它,然后终止当前历程。

本文翻译自:https://www.huntress.com/blog/snakes-on-a-domain-an- *** ysis-of-a-python-malware-loader Allbet声明:该文看法仅代表作者自己,与www.allbetgame.us无关。转载请注明:usdt支付接口:一款基于Python 实现的恶意软件加载程序
发布评论

分享到:

2022世界杯8强(www.9cx.net):办戏曲中央首个盛行曲骚 黄凯芹提歌迷「着靓啲」
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。