一个蠕虫分析
本帖最后由 1行 于 2020-7-16 16:37 编辑## 前言
原先也没分析过蠕虫的样本,冲浪的时候看到了关于`BuleHero`蠕虫的介绍,感觉蛮有意思的,分析分析。
## 执行过程
## 详细分析
主体文件使用upx壳,直接使用火绒剑来观察其主要行为。
### 火绒剑分析
恶意程序的自我复制
复制完成后自我删除
使用cmd命令来运行复制的恶意程序
通过netsh.exe和cmd.exe来执行以下操作以便修改防火墙规则
```
netsh ipsec static delete all
netsh ipsec static add filter filterlist=BastardsList srcaddr=any dstaddr=Me dstport=139 protocol=TCP
netsh ipsec static add filter filterlist=BastardsList srcaddr=any dstaddr=Me dstport=139 protocol=UDP
netsh ipsec static add rule name=FuckingBastards policy=Bastards filterlist=BastardsList filteraction=BastardsList
netsh ipsec static set policy name=Bastards assign=y
netsh ipsec static add filter filterlist=BastardsList srcaddr=any dstaddr=Me dstport=135 protocol=TCP
netsh ipsec static add filter filterlist=BastardsList srcaddr=any dstaddr=Me dstport=135 protocol=UDP
netsh ipsec static add rule name=FuckingBastards policy=Bastards filterlist=BastardsList filteraction=BastardsList
netsh ipsec static set policy name=Bastards assign=y
netsh ipsec static add filter filterlist=BastardsList srcaddr=any dstaddr=Me dstport=445 protocol=TCP
netsh ipsec static add filter filterlist=BastardsList srcaddr=any dstaddr=Me dstport=445 protocol=UDP
netsh ipsec static add rule name=FuckingBastards policy=Bastards filterlist=BastardsList filteraction=BastardsList
netsh ipsec static set policy name=Bastards assign=y
cmd /c net stop SharedAccess
cmd /c netsh firewall set opmode mode=disable
cmd /c netsh Advfirewall set allprofiles state off
cmd /c net stop MpsSvc
cmd /c net stop WinDefend
cmd /c net stop wuauserv
cmd /c sc config MpsSvc start= disabled
cmd /c sc config SharedAccess start= disabled
cmd /c sc config WinDefend start= disabled
cmd /c sc config wuauserv start= disabled
```
恶意程序释放PE文件至`C:\Windows\ueezeneik\`
通过MD5来对释放的文件进行查找,得知
- Corporate – Mimikatz密码获取工具
- cyritbigz – 端口扫描工具
- UnattendGC – 永恒之蓝漏洞包
`vfshost.exe`是一个获取登录时的用户名及密码的工具。
端口扫描工具,只是改了改名字而已
永恒之蓝漏洞包
利用`ciyfmv.exe`来发送挖矿木马矿池登录请求
挖矿木马的配置文件中显示了矿池地址
远控木马的上线包及所在位置
基本上看到这里,恶意程序的逻辑大概清楚了。复制自身,删除自身执行复制文件,释放PE文件,执行挖矿及远控木马。
### IDA关键词分析
在IDA中也看到了相应的字符串,可以与火绒剑释放PE文件相呼应。
### Wireshark抓包
大量的3389端口扫描行为
Wireshark抓包可以看到挖矿木马及远控木马发送的上线包
远控木马是ceeinject家族的,上线包发送加密后的系统信息,解密之后的上线包是这样的
ceeinject家族加密方式是`-0x7a^0x19`,以前分析过,没撒特殊的远控木马。
## 漏洞利用
### CVE-2017-12615 漏洞利用
此漏洞会影响Windows上的Apache Tomcat 7.0.0至7.0.79。它可以将恶意的jsp文件上传至服务器。
该漏洞有3种使用方法,此处使用的是 `shell.jsp%20`
解析之后,应该下载其他的攻击荷载。
### CVE-2017-5638 漏洞利用
此漏洞影响的是Struts 2.3.5 – Struts 2.3.31 Struts 2.5 – Struts 2.5.10。Apache Struts是一个免费的开源框架,用于构建Java Web应用程序。攻击者在“Content-Type”标头中构建恶意指令,使得恶意指令直接在服务器中运行。
### CVE-2018-2628 漏洞利用
此漏洞允许未经身份验证的攻击者通过T3协议访问网络,从而破坏在端口7001上运行的Oracle WebLogic Server。
### CNVD-2018-24942 漏洞利用
此漏洞的原因是,ThinkPHP 5框架的底层未严格过滤控制器名称,这使攻击者可以通过URL在ThinkPHP框架内调用敏感功能,从而导致下载和安装恶意程序。它试图通过从'cmd'运行PowerShell来下载并执行恶意程序。
### CVE-2019-2725 漏洞利用
此漏洞由于WebLogic的'wls9_async'和'wls-wsat'组件的反序列化输入信息,攻击者可以利用它来执行任意命令。
### CVE-2018-7600 漏洞利用
Drupal 7.x和8.x的多个子系统中存在一个远程执行代码漏洞。它允许攻击者将恶意负载注入表单结构以执行任意代码。
### CVE-2019-0193 漏洞利用
此漏洞存在于DataImportHandler模块中,该模块是用于从数据库或其他来源导入数据的通用模块。该模块的整个DIH配置可以来自外部请求中包含的dataConfig参数。由于DIH配置可以包含脚本,因此此参数存在安全风险。攻击者可以利用此漏洞通过包含精心设计的dataConfig参数的恶意请求来导致任意代码执行。
### PHPStudy后门
BuleHero检查以下PHP模块路径(如果存在),然后将其替换为嵌入式后门,从而使攻击者可以在服务器上执行任何命令。
- PHPTutorial \ php \ php-5.4.45 \ ext \ php_xmlrpc.dll
- PHPTutorial \ php \ php-5.2.17 \ ext \ php_xmlrpc.dll
## 总结
原本只是瞎看看,分析着就感觉很有意思,这个样本的一般行为,从火绒剑里就可以看个七八分。而样本里的漏洞利用基本都是针对web服务器的,看到的时候还在想,怎么就知道样本利用了这些漏洞呢?
而后想起漏洞如果明显的网络行为,可以根据它的网络行为来编写对应的规则,然后利用引擎来解析网络行为,从而匹配对应的漏洞。
样本有点大,MD5是ECB3266326D77741815ECEBB18EE951A,可以自己去 anyrun 上下载。
蓝奏云连接https://fenxiangcc.lanzouj.com/iNQ6Yenlw5a解压密码 infected 不要在实体机打开呦
一直饱受蠕虫的困扰,受教了 内容很干货 精彩.好厉害 看不懂,来捧场 看不懂,捧个场 感谢分享 跟着大佬学习,感谢楼主 十分详尽的一次分析,学习 真*大佬。分析的很专业