HEUR.Trojan.Win32.Generic木马分析
本帖最后由 Cherishao 于 2018-2-7 14:34 编辑### 0x00概述
早上得到了个HEUR的木马样本,一开始以为是病毒,傻傻的我也不知道用杀软检测下,就直接扔虚拟机兴冲冲的分析去了,于是写了篇帖子,记录下思路,才发出来,Poner大佬留言说:“你这分析没有恶意行为分析,就是简单的修改下注册表”,纳尼,仔细想了下,把这茬给漏了,之后Himily大佬说“看到了木马安装的过程,但木马的实际作用还待补充”,吾爱真是一个充满'爱'的家庭,在此感谢吾爱,感谢Poner大佬,Himily大佬的指导,感谢 mortalboold等热心坛友的帮助。
###0x10 样本分析
**文件名称:**HEUR.Trojan
**文件大小:**21kb
**木马名称:**HEUR.Trojan.Win32.Generic
**MD5:**949ea65730aef6b36222dc4c8104b295
**Sha-1:**a4b88d6f840c0189b1aa4d24b69e4e4104c2a356
**CRC32:**149F7137
###0x20 样本行为
#### 0x21 UPX查壳
先查壳,发现是UPX压缩壳,因为这个壳特征很简单,不用脱壳,直接载入OD。
![](http://oy3mfxixl.bkt.clouddn.com/201802061340_789.png)
#### 0x22 找入口点
根据堆栈平衡的原理,现在直接来到程序入口点。
![](http://oy3mfxixl.bkt.clouddn.com/201802061342_94.png)
#### 0x23 程序路径获取
找到入口点后我们一步一步往下走, 到这里后发现获取了程序的当前路径,下面有一个循环,把该路径一个字符一个字符的存入堆ss寄存器。
![](http://oy3mfxixl.bkt.clouddn.com/201802061344_603.png)
### 0x30 函数调用
继续往下,这里开始进入了关键函数,call进去之后,紧接着在调用函数。
![](http://oy3mfxixl.bkt.clouddn.com/201802061346_589.png)
![](http://oy3mfxixl.bkt.clouddn.com/201802061346_840.png)
#### 0x31 获取函数地址
现在我们开始看到它获取了关闭注册表函数的地址,下边rep stos对堆栈段进行了一段初始化。
![](http://oy3mfxixl.bkt.clouddn.com/201802061348_450.png)
#### 0x32 路径存储
这里得到注册表的路径,并把路径存到地址`0x0012FC50`
![](http://oy3mfxixl.bkt.clouddn.com/201802061349_74.png)
#### 0x33 注册表项创建
下面是要创建的注册表项的名称,现在把他们连接成一个完整字符串,这里压入的三个字符串,前两个是后面要创建服务的属性项。
![](http://oy3mfxixl.bkt.clouddn.com/201802061352_148.png)
#### 0x34 属性解读
call进去之后,一大段的获取函数的地址,
![](http://oy3mfxixl.bkt.clouddn.com/201802061358_313.png)
直接往后边走
![](http://oy3mfxixl.bkt.clouddn.com/201802061404_666.png)
#### 0x35 路径比较
这里获取了C:\WINDOWS的路径,后面紧接着一个判断,把该路径和当前路径比较,若路径不同则执行下面这段,若相同则跳过下面这段,这段是开始释放他的exe文件,继续往下。
![](http://oy3mfxixl.bkt.clouddn.com/201802061403_101.png)
#### 0x36 系统函数调用
这里连接着调用了6个一样的函数,该函数调用了系统的`getTickcount`函数,大致目的就是为了获取一个随机字符,6个字符作为释放的文件名。
![](http://oy3mfxixl.bkt.clouddn.com/201802061408_632.png)
#### 0x37 文件拷贝
在获取完整路径后,将程序拷贝到释放的可执行文件里。
![](http://oy3mfxixl.bkt.clouddn.com/201802061408_752.png)
可执行程序如下:
![](http://oy3mfxixl.bkt.clouddn.com/201802061409_413.png)
#### 0x38 注册表修改
上边释放文件完毕后紧接着开始修改注册表,创建服务。图十六是创建的注册表项。我们可以看到注册表里的一些参数值,`imagepath`和`start`,这里`start=2`代表他是自启动的。
![](http://oy3mfxixl.bkt.clouddn.com/201802061411_657.png)
注册表:
![](http://oy3mfxixl.bkt.clouddn.com/201802061412_62.png)
#### 0x39 锁服务数据库
创建完成后,锁住服务数据库,应该是防止其他程序访问,后面会解锁该服务,又加了一条描述信息(没什么用)和一个参数`failureaction`是(字面理解可能是报错之后的行动)。
![](http://oy3mfxixl.bkt.clouddn.com/201802061413_394.png)
注册表:
![](http://oy3mfxixl.bkt.clouddn.com/201802061414_599.png)
创建完成后,设置了`description`的值。
![](http://oy3mfxixl.bkt.clouddn.com/201802061415_267.png)
### 0x40 引导文件删除
所有操作执行完后,后面开始第二步,调用命令行删除引导文件。先获取文件完整路径,然后获取命令行的路径,把要执行的语句拼接成一个字符串。
![](http://oy3mfxixl.bkt.clouddn.com/201802061417_600.png)
打开命令行,执行删除语句,删除原程序,没删掉的话后面还有在调用函数删除一次,退出。
![](http://oy3mfxixl.bkt.clouddn.com/201802061506_515.png)
退出:
![](http://oy3mfxixl.bkt.clouddn.com/201802061507_859.png)
### 0x50 行为分析
> 1、修改注册表,创建服务,实现自启动;
> 2、释放可执行文件在C:\WINDOWS目录下;
> 3、调用命令行删除引导文件。
> 4、遍历文件获取特定函数。
>5、浏览器劫持,劫持类型为IE,Mozilla Firefox和谷歌浏览器,并把你的网页定向到指定链接。
>6、放慢Windows性能,让CPU运行在100%高的计算资源。
>7、打开系统的攻击端口,并导致失密机附加感染
>8、可能会打开一个后门,被黑客远控
>9、可以利用发现的安全漏洞,窃取数据机密泄露给第三方。
### 0x60 清除方法
#### 0x61 检测
如果您不确定文件是否正确报告,可以将受影响的文件提交到https://www.virustotal.com/en/,以使用多个防病毒引擎进行扫描。
#### 0x62 清除
**1、使用杀毒软件**
> [第1步:使用Malwarebytes删除HEUR.Trojan.Win32.Generic病毒](https://translate.googleusercontent.com/translate_c?depth=1&hl=zh-CN&prev=search&rurl=translate.google.com.hk&sl=en&sp=nmt4&u=https://malwaretips.com/blogs/heur-trojan-win32-generic-virus/&usg=ALkJrhiU4KPyJKYV-c_dr0GYDIPRee512g#malwarebytes)
> [第2步:使用HitmanPro扫描恶意软件和有害程序](https://translate.googleusercontent.com/translate_c?depth=1&hl=zh-CN&prev=search&rurl=translate.google.com.hk&sl=en&sp=nmt4&u=https://malwaretips.com/blogs/heur-trojan-win32-generic-virus/&usg=ALkJrhiU4KPyJKYV-c_dr0GYDIPRee512g#hitmanpro)
> [第3步:使用Emsisoft Emergency Kit仔细检查恶意程序](https://translate.googleusercontent.com/translate_c?depth=1&hl=zh-CN&prev=search&rurl=translate.google.com.hk&sl=en&sp=nmt4&u=https://malwaretips.com/blogs/heur-trojan-win32-generic-virus/&usg=ALkJrhiU4KPyJKYV-c_dr0GYDIPRee512g#browser)
> [第4步 :将浏览器重置为默认设置](https://translate.googleusercontent.com/translate_c?depth=1&hl=zh-CN&prev=search&rurl=translate.google.com.hk&sl=en&sp=nmt4&u=https://malwaretips.com/blogs/heur-trojan-win32-generic-virus/&usg=ALkJrhiU4KPyJKYV-c_dr0GYDIPRee512g#browser)
**2、手动删除**
打开注册表,删除`SYSTEM\CurrentControlSet\Service\Vwxyabcd..`
删除`C:\WINDOWS`释放的exe文件(图标是一个人脸,名字是随机的六个字符)。
**注意:**手动删除是一个高风险的过程,因为它与系统的关键部分有关,建议您在删除之前,备份注册表相关信息。
### 0x00 Show me the demo
百度网盘链接:https://pan.baidu.com/s/1nxmTv0P 密码:a419
压缩包提取密码:52pojie
![](http://oy3mfxixl.bkt.clouddn.com/201802061729_908.png) 只看到木马安装过程,木马实际的作用了,补充完整可以根据质量考虑加精。 本帖最后由 Poner 于 2018-2-6 17:55 编辑
Cherishao 发表于 2018-2-6 17:50
行为分析,说了它干啥呀。
你自己在看看行为方面除了通过服务开机启动还有啥?
你不说说这病毒的恶意行为在哪算什么病毒分析?
你的意思是这样本的恶意行为就是删除引导? 分析的非常的详细,学习了 你至少也得说说他干了些啥啊 比如远控?勒索? 你真的好厉害啊 Poner 发表于 2018-2-6 17:47
你至少也得说说他干了些啥啊 比如远控?勒索?
行为分析,说了它干啥呀。 kk1212 发表于 2018-2-6 17:46
分析的非常的详细,学习了
主要是理了下思路,加油! Poner 发表于 2018-2-6 17:53
你自己在看看行为方面除了通过服务开机启动还有啥?
你不说说这病毒的恶意行为在哪算什么病毒分析 ...
好的,回头再看下,感谢点评。 kk1212 发表于 2018-2-6 17:46
分析的非常的详细,学习了
分析的还是不够详细,在行为分析方面有很大的不足,后头,在研究下,继续改进。