mm木马分析

xiaoeryu Lv5

0x00 样本信息

  • 文件名称:mm.exe

  • MD5:37eec1a29d316ed1e5e766b599dc32a1

  • SHA-1:75f098d6b3f217aba4c068b12896c332216fc6b3

  • Authentihash:1b17d4d13c65fed36321aec54f2dc9b214308bbc82821659f83e445b93d1962e

  • Imphash:9e932de2e1e9ccfc4eacc3a16a8c9ab4

  • 文件类型:Win32 EXE

  • 文件大小:63.08 KB

  • 哈勃扫描结果:https://habo.qq.com/file/showdetail?pk=ADIGYV1qB2IIOls1

0x01 主要行为:

  1. 劫持系统进程msiexec.exe创建远程线程(将url读入缓冲区修复为一个可以使用的PE文件)

  2. 修复改文件夹属性

  3. 将自身复制到系统目录下,自删除

  4. 设置注册表启动项

0x02 具体分析

  • 获取自身文件路径
  • 获取系统时间
  • 将自身复制到系统目录下,自删除
  • 进这个函数
  • loadlibrary加载msi.dll后动态解密出来一个jmp继续走
  • 拼接路径名创建文件
  • 读取完关闭文件仅需进这个新创建的局部变量执行,这块其实是要再进行解密的
  • 循环解密后继续跟进
  • 继续跟进,有些时候并不能确定这些函数都是干什么的,这时候就需要一次一次的试错试出来了,不要害怕尝试
  • 内层有个函数继续跟进 -上面这一块发现是在分区段的修复一个新建的PE文件
  • 继续跟进去
  • 创建文件
  • 往这个地址再考一份PE文件,这个地址不固定每次重新打开都会变(总共拷贝了三份PE文件)
  • 继续跟进
  • 继续跟进(看到可疑的都进去看一下)
  • 创建url文件
  • 发现创建了这个系统进程
    重要
  • 接下来的操作要注入这个进程,在这里面创建线程执行
  • 再往下找一下发现有创建远程线程的地方
  • 另开一个OD附加一下msiexec.exe这个进程
  • 这里需要修改一下调试设置,接下来调试用(因为接下来createremotethread要在这个进程里面创建新的线程)
  • 运行到创建远程线程结束
  • 因为我们刚才设置了中断于新线程,所以直接运行(F9)就会断在创建新线程的地方
  • 发现这个地方似曾相识
  • 没错,这个地方循环解密后就是这个函数入口了,和刚才的入口是一样的
  • 继续跟进
  • 这里同样是在修复各个区段
  • 上面一个函数出来之后继续跟进下一个
    发现这里传进去了一个PE文件进去看一下 这里可以用loadPE(以管理员权限打开)从10000000将这整个文件dump出来,用IDA辅助分析
  • 用loadPEdump这样直接从内存中dump出来它的对齐粒度是1000所以要修改一下,改为内存对齐.
  • 跟进这里面看一下
  • 创建目录>拼接路径
  • 设置注册表键值
  • 打开网络链接 -跟进函数看一下
  • 这里面有上传和下载的函数但是网站已经废了,我们进去就崩溃了
  • 我们需要在会崩溃的地方改跳转不去执行
  • 跟了一下发现获取主机名的时候会崩溃(所以就改跳转不去执行了)
  • 获取电脑名和用户名
  • 有些地方实在没办法过去就修改eip直接跳过这个函数
  • 建立连接从网站上读取文件
  • 给网站发送消息并查看是否返回错误信息
  • 检索当前用的磁盘驱动器
  • 获取进程信息
  • 上传,下载内容
  • 写文件
  • 关闭其它进程和线程与服务器断开连接
  • 标题: mm木马分析
  • 作者: xiaoeryu
  • 创建于 : 2021-05-19 22:54:26
  • 更新于 : 2022-11-14 22:15:30
  • 链接: https://github.com/xiaoeryu/2021/05/19/mm木马分析/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论