欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

更难以检测的逃避机制——Gootkit银行木马新变体分析

来源:本站整理 作者:佚名 时间:2019-03-07 TAG: 我要投稿

为了揭开恶意软件的神秘面纱、让每个人都能更好的了解日常网络威胁,网络安全公司certego决定做一档名为Malware tales的专栏,作为该档专栏开篇文章的介绍对象——Gootkit,certego将对其最近出现的新变体、从代码级别做深入分析。
简介:
1、威胁
2、payload交付
3、Gootkit可执行文件
4、第一阶段:加壳的Gootkit
5、第二阶段:站稳脚跟
6、第三阶段:检入阶段
7、最后阶段
8、额外发现
9、总结
威胁
自2014年夏天问世以来,GootKit木马就被人们广泛认为是现今活跃的最复杂的银行木马之一,它的目标是窃取受害者的可用信息,通过劫持银行账户来执行交易,主要在意大利及欧洲其他地区活动。关于GootKit银行木马之前的威胁报告可在此阅读。而今天我们将深入分析上周新出现的一类变体。
payload交付
此次检测到的样本中,GootKit采用了常见的钓鱼邮件的方式。下图是一封用意大利语写的电子邮件正文,内容是让用户点击红色字体确认订单信息,用户一旦点击后将下载恶意附件。

下载的文件是一个名为“GLS_Notifica.js”的严重混淆的Javascript文件。如果用户打开它,默认情况下本机Javascript解释器wscript.exe将被执行,并执行以下HTTP请求:
hxxp://redok.com[.]mx/tmp/337.php
之后将下载了一个文件夹文件,该文件是一个可以由Windows本机提取的存档文件。里面有一个可移植的可执行文件,它将保存在%TEMP%文件夹(“C:\ Users \  \ AppData \ Local \ Temp”)中并执行。
Javascripts下载器是常见的交付payload的方式,因为对其稍微混淆可能就会使它们很难被防毒引擎检测到。

Gootkit可执行文件
在自动化环境中首次运行样本后,我们发现此版本中多了一些新的内容——恶意软件作者为恶意代理加了新的一层保护。如下图所示,第一张表示的是在2018年12月期间于意大利发现的Gootkit变体,第二张则是当前测试样本。(图片来自AnyRun)


这意味着,为了拖延分析师们对逆向解析的速度,原始程序是加壳的,并且也能让像Yara规则这样效率低下的静态分析工具失去了发挥空间。
第一阶段:加壳的Gootkit
在这种情况下,恶意软件分析人员知道,他必须在不浪费时间的情况下尽可能快地提取原始payload,以尝试理解这一阶段的内部工作。
有一个很好的开源工具可以在几秒钟内解决这个问题。它叫做PE-Sieve (Github地址)。尽管它并不总是有效,但在这种情况下,它可以转储原始可执行文件的未映射版本,因为该样本使用一种称为Process Hollowing的技术,也叫RunPE,技术手段包括:启动处于挂起状态的新进程、“掏空”进程内容、用恶意代码替换它,最后恢复线程。
在下图中我们可以看到,“CreateProcessW”的第6个参数被设置为“4”,表示进程将以挂起状态启动。

这是一种众所周知的技术,它可以通过监视执行注入所需的Windows API调用轻松检测出来,但这里也有些出人意料的地方:我们无法找到按照执行流程所需的API调用。虽然能检测出NtCreateProcess、NtGetContextThread、NtReadVirtualMemory和NtSetContextThread,但最重要的一些地方似乎被遗漏了:
· NtUnmapViewOfSection,用于“掏空”目标进程
· NtWriteVirtualMemory,写入目标进程
· NtResumeThread,恢复挂起的线程
让我们看看发生了什么!
在其内存空间中进行一些shellcode注入之后,进程执行对IsWow64Process API的调用,应用程序使用该API来检查该进程是否要在WOW64环境下运行,WOW64是Windows操作系统的子系统,能够让此类32位应用程序在64位操作系统上运行。

检查的结果会被用于两个不同的代码路径,但殊途同归,其目的都是在内核模式下运行上述缺失的API调用之一。这意味着,以这种方式,传统的用户级监视工具将无法捕捉这些调用,而RunPE技术则不会被注意到。
具体来说,如果进程在32位环境中运行,它将使用SYSENTER命令切换到内核模式,如果是64位的环境,它将使用SYSCALL命令执行相同的操作。


更复杂的是,32位应用程序的上下文中是无法调用SYSCALL命令的,这意味着可执行文件需要利用“套中套”(trick-into-the-trick)的技巧才能执行此操作,此种技术手段是一种被称为天堂之门(The Heaven’s Gate)的技术。实际上,由于RETF指令,可以将代码段(CS)从0x23更改为0x33,从而在运行的进程上实际启用64位模式。

[1] [2] [3] [4]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载