热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

利用“顺丰速运”下发GuLoader恶意软件的风险分析

 

 

0x01 背景介绍

GuLoader是一个使用VB语言编写的恶意软件下载器。它通常从Google Drive、Microsoft OneDrive、MediaFire等托管站点下载恶意代码执行。常见的后续恶意远控程序有:LokiBot、Remcos RAT和Agent Tesla等等。 GuLoader本身具有较为复杂的执行流程,较强的反调机制使得当前部分在线沙盒无法精确检测恶意行为,同时也给分析人员造成一定阻碍。

360-CERT监测到今年以来使用GuLoader恶意软件的网络攻击活动呈现不断增加的态势。我们在此发布该恶意软件风险分析,提示用户及时防范规避安全风险。

 

0x02 样本动态分析

攻击者使用伪装成“顺丰速运”的恶意钓鱼邮件下发钓鱼链接。

enter description here

该钓鱼链接指向MediaFire下载GuLoader恶意软件压缩包(链接信息部分隐藏)。

hxxps[:]//www[.]mediafire[.]com/file/ifu***empc/SF342012300120.7z/file

一旦用户下载该恶意软件压缩包,并且无意执行恶意程序,整个恶意流程被立即激活。

enter description here

恶意代码进入shellcode首先进行一系列的调试和虚拟化环境的检测,shellcode入口如下:

enter description here

加载DLL以及获取即将调用的函数地址(例如:ZwQueryVirtualMemory)

enter description here

调用ZwQueryVirtualMemory在内存0x10000 ~ 0x7FFFF000范围内通过校验HASH的方式比较字符串。

enter description here

例如查找字符串“vmtoolsdControlWndClass”

enter description here

一旦检测到虚拟机环境,将对以下字符串进行解密,并调用MessageBoxA进行输出。

enter description here

枚举顶层串口句柄,当句柄值小于0x0C时结束进程。

enter description here

调用ZwProtectVirtualMemory函数修改DbgBreakPoint和DbgUiRemoteBreakin所在内存地址的属性,并修改它们的函数实现。

修改DbgBreakPoint函数字节码。

enter description here

修改DbgUiRemoteBreakin函数字节码。

enter description here

调用ZwSetInformationThread函数,利用传入参数HideThreadFromDebugger(对应数值:0x11)隐藏进程。

enter description here

调用CreateFile函数,以GENERIC_READ(对应数值:0x80000000)方式打开指定路径(C:\ProgramData\qemu-ga\qga.state)文件,检测QEMU环境。

enter description here

利用cpuid指令检测虚拟机。

enter description here

调用ZwGetContextThread函数获取进程上下文并比较DR寄存器的值判断是否处于调试环境。

enter description here

enter description here

然后以挂起的方式开启傀儡进程。

enter description here

一边检测DR寄存器一边执行一系列操作将msvbvm60.dll映射到傀儡进程并注入shellcode然后恢复进程。

enter description here

恢复执行傀儡进程后,重新执行前文的所有检测,然后进行联网操作,下载RAT载荷解密执行。

enter description here

0x03 防护建议



  • 360安全卫士

360-CERT建议用户安装360安全卫士进行防护


  • 临时解决方案

用户可以在指定路径创建特定文件对该版本GuLoader恶意软件进行临时防护

C:\ProgramData\qemu-ga\qga.state

 

0x04 IOCs



  • MD5

4F97FF7B772E9C31D9620EC8110A3094

5FEEDDE4790C300C6CEBC20684F79987


  • URL

hxxps[:]//www[.]mediafire[.]com/file/ifuhhu63u37empc/SF342012300120[.]7z/file

hxxps[:]//www[.]mediafire[.]com/file/6mukpc6m24uifiu/fresh_rLANVHaEFt60[.]bin/file

 

0x05 参考链接



  1. GuLoader: A Popular New VB6 Downloader that Abuses Cloud Services

  2. GuLoader AntiVM Techniques



推荐阅读
  • 在《Cocos2d-x学习笔记:基础概念解析与内存管理机制深入探讨》中,详细介绍了Cocos2d-x的基础概念,并深入分析了其内存管理机制。特别是针对Boost库引入的智能指针管理方法进行了详细的讲解,例如在处理鱼的运动过程中,可以通过编写自定义函数来动态计算角度变化,利用CallFunc回调机制实现高效的游戏逻辑控制。此外,文章还探讨了如何通过智能指针优化资源管理和避免内存泄漏,为开发者提供了实用的编程技巧和最佳实践。 ... [详细]
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • 在Android平台中,播放音频的采样率通常固定为44.1kHz,而录音的采样率则固定为8kHz。为了确保音频设备的正常工作,底层驱动必须预先设定这些固定的采样率。当上层应用提供的采样率与这些预设值不匹配时,需要通过重采样(resample)技术来调整采样率,以保证音频数据的正确处理和传输。本文将详细探讨FFMpeg在音频处理中的基础理论及重采样技术的应用。 ... [详细]
  • Spring – Bean Life Cycle
    Spring – Bean Life Cycle ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
  • 本文详细介绍了MySQL数据库的基础语法与核心操作,涵盖从基础概念到具体应用的多个方面。首先,文章从基础知识入手,逐步深入到创建和修改数据表的操作。接着,详细讲解了如何进行数据的插入、更新与删除。在查询部分,不仅介绍了DISTINCT和LIMIT的使用方法,还探讨了排序、过滤和通配符的应用。此外,文章还涵盖了计算字段以及多种函数的使用,包括文本处理、日期和时间处理及数值处理等。通过这些内容,读者可以全面掌握MySQL数据库的核心操作技巧。 ... [详细]
  • 如何将Python与Excel高效结合:常用操作技巧解析
    本文深入探讨了如何将Python与Excel高效结合,涵盖了一系列实用的操作技巧。文章内容详尽,步骤清晰,注重细节处理,旨在帮助读者掌握Python与Excel之间的无缝对接方法,提升数据处理效率。 ... [详细]
  • 属性类 `Properties` 是 `Hashtable` 类的子类,用于存储键值对形式的数据。该类在 Java 中广泛应用于配置文件的读取与写入,支持字符串类型的键和值。通过 `Properties` 类,开发者可以方便地进行配置信息的管理,确保应用程序的灵活性和可维护性。此外,`Properties` 类还提供了加载和保存属性文件的方法,使其在实际开发中具有较高的实用价值。 ... [详细]
  • PTArchiver工作原理详解与应用分析
    PTArchiver工作原理及其应用分析本文详细解析了PTArchiver的工作机制,探讨了其在数据归档和管理中的应用。PTArchiver通过高效的压缩算法和灵活的存储策略,实现了对大规模数据的高效管理和长期保存。文章还介绍了其在企业级数据备份、历史数据迁移等场景中的实际应用案例,为用户提供了实用的操作建议和技术支持。 ... [详细]
  • 深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案
    深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案 ... [详细]
  • 微信小程序实现类似微博的无限回复功能,内置云开发数据库支持
    本文详细介绍了如何利用微信小程序实现类似于微博的无限回复功能,并充分利用了微信云开发的数据库支持。文中不仅提供了关键代码片段,还包含了完整的页面代码,方便开发者按需使用。此外,HTML页面中包含了一些示例图片,开发者可以根据个人喜好进行替换。文章还将展示详细的数据库结构设计,帮助读者更好地理解和实现这一功能。 ... [详细]
author-avatar
mobiledu2502911607
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有