超人不会pang 发表于 2019-7-1 13:46

记驱动人生某一版本详细分析

本帖最后由 超人不会pang 于 2019-7-1 14:37 编辑


1.样本概况
1.1 样本信息
样本名称:bdbfa96d17c2f06f68b3bcc84568cf445915e194f130b0dc2411805cf889b6cc
所属家族:驱动人生
MD5值:59b18d6146a2aa066f661599c496090d
SHA1值:48a3046381a963a2471875ef67886e35b90e8541
病毒行为:修改注册表,创建计划任务,更改防火墙设置。自动化扫描内网主机进行横向传播。
1.2 测试环境及工具

Win7 32、IDA、PEid、火绒剑

1.3病毒背景

2018年12月14日首次发现。木马通过驱动人生升级推送功能进行大量传播,感染电脑后继续通过“永恒之蓝”高危漏洞进行全网传播,并下载其它病毒模块,回传被感染电脑的IP地址、CPU型号等信息。

具体行为分析
2.1 主要行为

修改注册表,创建计划任务,更改防火墙设置。自动化扫描内网主机进行横向传播,创建互斥量进行挖矿操作。

2.2 恶意代码分析

2.2.1 恶意程序的代码分析片段
1.检查自身名称是否为svhost.exe或者svchost.exe,如果程序名称不为svhost.exe或者svchost.exe则从资源节中解密释放PE文件,释放文件的hash: a4b7940b3d6b03269194f728610784d6,最终在磁盘中释放路径为C:\windows\temp\ttt.exe,释放完成后便执行该文件。




2.释放执行ttt.exe文件后便多次使用cmd命令清理系统原来感染的老版本的挖矿程序,为新版挖矿程序的安装和运行清理环境。



3.设置Windows防火墙开启65531,65532,65533端口,在防火墙规则中分别命名为UDP2,UDP,ShareService,同时开启端口转发,将来自65532端口的流量转发到1.1.1.1地址的53端口,将来自65531端口的流量转发到1.1.1.1地址的53端口


防火墙规则中查看到的名称


4.拷贝主程序到C:\windows\system32\svhost.exe并设置隐藏属性,同时拷贝一份到C:\windows\system32\drivers\svchost.exe,之后设置计划任务同时设置注册表项,实现程序的开机启动和定期执行。



5.完成上述配置后尝试使用CreateServiceA函数将C:\windows\system32\drivers\svchost.exe注册为服务,如果服务存在则修改服务配置,如果CreateServiceA函数调用失败则使用CMD方式调用sc create创建服务,最终尝试使用net start和StartServiceA函数的方式启动服务函数。





火绒剑中监测到的可疑操作



6.服务主函数中首先根据系统位数拼接后续将要使用到的字符串,包括从恶意域名临时下载的文件以及解密之后的文件,和后续用来伪装成任务管理器共享进程进行挖矿操作taskmgr.exe。


7.创建名为“it is holy shit”的互斥体防止进程重复启动运行,根据系统位数解密释放对应的资源文件,64位系统解密释放100号资源,32位系统解密释放标号为101号资源,释放路径为C:\Windows\system32\drivers\taskmgr.exe(64位系统:C:\Windows\SysWOW64\drivers\taskmgr.exe)。


资源工具中查看该文件的资源


8.创建四个线程分别进行相关的恶意操作,第一个线程根据主机中的进程和主机系统相关参数调整挖矿程序的运行状态,当用户打开任务管理器浏览时会自动关闭伪装程序taskmgr.exe,使其不被用户发现;第二个线程每隔10s尝试启动C:\Windows\temp\svchost.exe(永恒之蓝漏洞攻击文件),实现内网的横向感染传播;第三个线程使用Wmic命令,每10秒对进程进行一次检查,触发时将结束挖矿进程;第四个线程打开监听65533端口。

创建四个线程进行操作

根据主机进程决定是否暂时关闭伪装进程

每隔十秒尝试启动永恒之蓝漏洞攻击文件

每隔10s使用WMIC检查进程并决定是否关闭挖矿程序

完整的命令:

开启网络套接字,监听65533端口

9.收集主机信息并发送到远程服务器,收集的信息包括主机ID,GUID,MAC地址,用户名,系统版本,系统位数,CPU型号等

10.识别杀软,打开互斥体进行挖矿操作,对象名称为“I am tHe xmr reportter”,xmr为门罗币。创建计划任务执行powershell获取日志。



11.尝试访问远程服务器中指定的文件内容,获取执行指令,在本地解密后解析执行指令,本地获取指令后通过硬编码的RSA公钥进行解密,最终解析执行远程命令。

12.与C2通信,接收指令,使用抓包工具后发现ii.haqo.net, pp.abbny.com oo.beahh.com, p.abbny.com, i.haqo.net,o.beahh.com这些域名已没有应答值。


13.样本中另外一个文件,被设置为隐藏属性。是用python生成的exe文件。

使用pyinstxtractor.py工具反编译出来python源码,发现恶意代码内容与github上已有的”永恒之蓝”exploit文件完全相同,增加了弱口令爆破与扫描1433、455、65533端口通过cmd命令去执行shell。


通过Invoke-Mimikatz.ps1获取系统密码实现内网传染。


骑龟赛跑 发表于 2019-7-1 14:29

我很想知道一款病毒是如何诞生的.如何调试的?每自毁一次机器调试一次?{:1_918:}

紫魂白魄 发表于 2019-7-8 14:39

官方现在正式版本自带的流氓广告程序也极度恶心,右下窗口弹窗,当你调取任务管理器查看流氓来源的时候,会极度卡顿,但是cpu、硬盘、内存使用率不会飙满,只是应该单纯临时干扰鼠标的dpi跟操作界面,直到你关闭任务管理器。而且你在相关广告推送软件目录下右击也会出现这个情况。

血色天空 发表于 2019-7-1 14:39

高手啊,膜拜下

超人不会pang 发表于 2019-7-1 14:48

血色天空 发表于 2019-7-1 14:39
高手啊,膜拜下

我是新手,互相学习

超人不会pang 发表于 2019-7-1 14:49

骑龟赛跑 发表于 2019-7-1 14:29
我很想知道一款病毒是如何诞生的.如何调试的?每自毁一次机器调试一次?

大佬知道后也请告诉我

NewBee丶 发表于 2019-7-1 16:08

太强了👍太强了👍

pointwin 发表于 2019-7-1 21:06

厉害厉害。{:1_893:}

yylzzx 发表于 2019-7-1 21:30

学习病毒过程

井谦 发表于 2019-7-1 22:31

谢谢楼主的分享!

haidao123 发表于 2019-7-2 03:58

好好学习了
页: [1] 2 3 4 5
查看完整版本: 记驱动人生某一版本详细分析