一次被防火墙拦截的挖矿病毒应急处置经历

  • A+
所属分类:安全技术

前言

在应急响应的过程中,客户反馈深信服防火墙AF 报告客户服务器僵尸网络警告,服务器试图解析恶意域名msupdate.info。于是客户使用360,火绒剑等杀毒软件均没有发现异常现象。于是求助我,遂有此文章。

病毒virustotal.com的报告,可以看到很多国内厂商依然无法检出:

SHA256: c765ba5eedcd87b6f98eb503df640f5a8b077d3a30f02c6019feec1b5a553981

文件名: cspsvc.exe

https://www.virustotal.com/zh-cn/file/c765ba5eedcd87b6f98eb503df640f5a8b077d3a30f02c6019feec1b5a553981/analysis/

 

 

一次被防火墙拦截的挖矿病毒应急处置经历

0×00 day1

接到应急,远程登录一把梭,netstat -ano 查看异常外连,由于病毒发起的外连已经被深信服防火墙AF所拦截,重点关注SYN_SENT和TIME_OUT,经过排查。并未发现异常外连,于是通过process hacker 查看异常进程。然而也没有发现异常进程,也没有挖矿进程占用大量的cpu资源。于是排查一度陷入江局。

这时候束手无策的我只能上微软闭环工具sysmon 对系统进行监控。观察病毒的一举一动。

sysmon需要安装使用:

sysmon.exe-accepteulai -n

一次被防火墙拦截的挖矿病毒应急处置经历

0×01 day2 收获日

昨天种下一颗种子,今天就是收获日啦。

深信服防火墙AF依然在报僵尸网络,不过已经拒绝了:

一次被防火墙拦截的挖矿病毒应急处置经历

查看sysmon日志,根据深信服下一代防火墙AF报僵尸网络的时间果然找到可疑的点。

一次被防火墙拦截的挖矿病毒应急处置经历

可以看到服务拉起了一个可疑文件。

接着排查发现它拉起一个可疑powershell脚本,以服务的方式启动。

一次被防火墙拦截的挖矿病毒应急处置经历

接着这个ps脚本执行。

这个脚本还利用注册表生成了一个用户名为adm:

一次被防火墙拦截的挖矿病毒应急处置经历

至此,我们已经找出了挖矿程序。查看ps脚本就可以看到他的钱包地址:

一次被防火墙拦截的挖矿病毒应急处置经历

0×02 分析

首先看cspsvc.exe文件:

一次被防火墙拦截的挖矿病毒应急处置经历

cspsvc.exe 是启动程序用于加载ps脚本程序。

ps脚本是一个内容丰富的木马也是主要的程序:

一次被防火墙拦截的挖矿病毒应急处置经历

可以看到脚本提供了丰富的命令行参数,我们之前看到的就是SCMStart。

接下来使用:

$argv0 = Get-Item $MyInvocation.MyCommand.Definition

获取了命令行参数执行相关操作:

一次被防火墙拦截的挖矿病毒应急处置经历

程序获取了登录名,默认启动setup:

一次被防火墙拦截的挖矿病毒应急处置经历

setup里面包含了编译了一个c#文件的功能:

一次被防火墙拦截的挖矿病毒应急处置经历

一次被防火墙拦截的挖矿病毒应急处置经历

$exeName = "$serviceName.exe"

$exeFullName = "$installDir\$exeName"

 

可知编译的文件就是我们发现的cspsvc.exe

接着就从C:\Windows \fonts\arial\config.xml或者C:\Windows\SoftwareDistribution\config.xml 读取配置文件,不存在就新建了一个fonts\arial\ 目录:

一次被防火墙拦截的挖矿病毒应急处置经历

写入配置后并拷贝一份:

一次被防火墙拦截的挖矿病毒应急处置经历

继续往下看发现了主要执行的Service:

一次被防火墙拦截的挖矿病毒应急处置经历

发现执行了一处加密内容。

加密内容为一个新的powershell脚本。可以看到它新建了一个adm的用户。密码是从之前的配置文件中读取的密码:

一次被防火墙拦截的挖矿病毒应急处置经历

一次被防火墙拦截的挖矿病毒应急处置经历

从域名msupdate.info通过 网络下载矿机:

一次被防火墙拦截的挖矿病毒应急处置经历

接着释放又释放了一个加密的ps脚本:

一次被防火墙拦截的挖矿病毒应急处置经历

结合通过autoruns发现计划任务GpCheck.ps1计划任务,和下面的写操作可以发现该脚本写入位于system32\drivers\en-US\GpCheck.ps1 的该文件:

一次被防火墙拦截的挖矿病毒应急处置经历

0×03 清理病毒

停止服务Cryptographic Service Providers

删除计划任务 GpCheck

删除C:\Windows\System32\drivers 目录下cspsvc.execspsvc.ps1cspsvc.pdb 文件

删除 注册表项cspsvc

 

一次被防火墙拦截的挖矿病毒应急处置经历

删除C:\Windows\SoftwareDistribution\config.xml

删除 adm用户

删除C:\Windows\Fonts\arial

删除 C:\Windows\Fonts\Logs

删除 C:\Windows\Fonts\temp

删除 C:Windows\system32\drivers\en-US\GpCheck.ps1

删除 C:Windows\system32\drivers\ WmiPrvSE.ps1

 

0×04 后记

此次由于防火墙的存在成功阻挡了恶意程序下载挖矿程序进行挖矿。并及时警报客户,使得客户业务没有受到影响。

对于此木马的分析只是浅显的分析了下,主要是想分享一下这种没有执行成功的挖矿病毒如何排查的经验。希望能够抛砖引玉。

 

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: