mm木马分析
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 主要行为:
劫持系统进程msiexec.exe创建远程线程(将url读入缓冲区修复为一个可以使用的PE文件)
修复改文件夹属性
将自身复制到系统目录下,自删除
设置注册表启动项
0x02 具体分析
- 获取自身文件路径

- 获取系统时间

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

- 进这个函数

- loadlibrary加载msi.dll后动态解密出来一个jmp继续走

- 拼接路径名创建文件

- 读取完关闭文件仅需进这个新创建的局部变量执行,这块其实是要再进行解密的

- 循环解密后继续跟进

- 继续跟进,有些时候并不能确定这些函数都是干什么的,这时候就需要一次一次的试错试出来了,不要害怕尝试

- 内层有个函数继续跟进
-上面这一块发现是在分区段的修复一个新建的PE文件
- 继续跟进去

- 创建文件

- 往这个地址再考一份PE文件,这个地址不固定每次重新打开都会变(总共拷贝了三份PE文件)

- 继续跟进

- 继续跟进(看到可疑的都进去看一下)

- 创建url文件

- 发现创建了这个系统进程
重要 - 接下来的操作要注入这个进程,在这里面创建线程执行

- 再往下找一下发现有创建远程线程的地方

- 另开一个OD附加一下msiexec.exe这个进程

- 这里需要修改一下调试设置,接下来调试用(因为接下来createremotethread要在这个进程里面创建新的线程)

- 运行到创建远程线程结束

- 因为我们刚才设置了中断于新线程,所以直接运行(F9)就会断在创建新线程的地方
- 发现这个地方似曾相识

- 没错,这个地方循环解密后就是这个函数入口了,和刚才的入口是一样的

- 继续跟进

- 这里同样是在修复各个区段

- 上面一个函数出来之后继续跟进下一个
发现这里传进去了一个PE文件进去看一下
这里可以用loadPE(以管理员权限打开)从10000000将这整个文件dump出来,用IDA辅助分析 - 用loadPEdump这样直接从内存中dump出来它的对齐粒度是1000所以要修改一下,改为内存对齐.

- 跟进这里面看一下

- 创建目录>拼接路径

- 设置注册表键值

- 打开网络链接
-跟进函数看一下
- 这里面有上传和下载的函数但是网站已经废了,我们进去就崩溃了

- 我们需要在会崩溃的地方改跳转不去执行

- 跟了一下发现获取主机名的时候会崩溃(所以就改跳转不去执行了)

- 获取电脑名和用户名

- 有些地方实在没办法过去就修改eip直接跳过这个函数

- 建立连接从网站上读取文件

- 给网站发送消息并查看是否返回错误信息

- 检索当前用的磁盘驱动器

- 获取进程信息

- 上传,下载内容

- 写文件

- 关闭其它进程和线程与服务器断开连接

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 xiaoeryu!
评论
