事件概述
GuLoader是一个使用VB语言编写的恶意软件下载器,并且常常将最终交付的恶意文件托管到共享网盘上,例如谷歌的Google Drive、微软的OneDrive和MediaFire等。它们常常交付的恶意软件包括LokiBot、Formbook和Agent Tesla等。GuLoader程序本身具有很复杂的流程和对抗功能,以便阻止安全人员进行分析。今年3月份,在国内新冠肺炎严峻的时期,马莲曾经发布过利用“新冠疫情”话题钓鱼邮件传播此恶意软件的文章,另外Gorgon APT组织也利用GuLoader恶意软件下载器下发Formbook窃密木马,并且就两者还做了相关的对比分析,详细见参考信息处链接。
本次样本在较早时间已经获取,由于杂七杂八的事情一直没有写相关的文章报道。关于此样本的分析已经有其他安全厂商进行分析发布,之所以自己还要码一下,马莲认为此事件仍值得大家关注,此恶意程序仍然在处在活跃阶段并且检测率也相对较低。另外该版本的GuLoader恶意软件下载器较之前版本新增了一些对抗功能。
事件分析
本次分析的GuLoader恶意软件下载器是通过包含有“顺丰速运”的钓鱼邮件进行传播的,攻击对象主要面向我国用户。在之前获取的“新冠肺炎”话题相关的钓鱼邮件都是英文版,主要还是面向英语地区的国家,本次的钓鱼邮件使用中文语言并且有明显的地区性攻击。
该样本仍然是使用与之前同样图标的可执行文件,使用VB语言。具体信息如下:
动态分配内存,将shellcode复制到相关区域,然后跳转执行。
新增对抗功能
1. 利用ZwQueryVirtualMemory函数对虚拟内存进行查询,内存查询的区域为0x00001000~0x7FFFF000。如果在该内存中查找到和虚拟化环境相关的字符串时,则会终止进程。
在查询过程中以内存对齐0x1000进行依次查询。
如果找到则说明在虚拟机环境中,则会解密一段字符串,提供给后续的弹窗提示使用。
然后调用MessageBox函数弹窗提示程序运行在虚拟机环境,最后结束进程。
2. 枚举顶层窗口句柄值,如果该值小于0x0C,则会终止进程。
3. 检测Qemu环境,通过CreateFile的方式进行检查是否存在相关文件。
其他对抗分析(具体详细技术说明可参考之前的分析文章,见参考信息处)
1. 修改调试相关函数代码,以便阻止进行附加分析。
2. 设置ZwSetInformationThread函数的参数为0x11。
3. 多次检测是否存在硬件断点。
最后这些检测都过去之后,将会进行注入操作,然后从托管站点下载恶意软件,如远控木马和窃密木马等,这与之前版本的GuLoader功能是一样的。
解决方案
1.请勿点击不明确、不知发件人的邮件中的链接和附件,如快递单、订货单或者信息确认单等尤其值得注意。
2.及时升级安全产品病毒码版本,以便可以及时查杀相关的恶意软件。
3.定时修改和增强自己网盘密码,以防止自己的网盘被黑客利用。